Claude
Skills
Sign in
Back

kyverno-version-lookup

Included with Lifetime
$97 forever

This skill should be used when looking up Kyverno Helm chart versions, release dates, and corresponding app versions from Artifact Hub. Use for version planning, upgrade decisions, and release timeline analysis.

Generalscripts

What this skill does


# Kyverno Version Lookup

Query Kyverno Helm chart release information from Artifact Hub.

## API Endpoint

```
https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno
```

## Quick Lookup

```bash
# Get all stable releases (no RCs) with dates
~/.claude/skills/kyverno-version-lookup/scripts/kyverno-versions.sh

# Get JSON for programmatic use
~/.claude/skills/kyverno-version-lookup/scripts/kyverno-versions.sh --json

# Get latest N releases
~/.claude/skills/kyverno-version-lookup/scripts/kyverno-versions.sh --limit 10
```

## Manual API Query

```bash
# Fetch raw data
curl -s "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | jq '.available_versions'

# Filter stable releases only (no rc/beta/alpha)
curl -s "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | \
  jq '[.available_versions[] | select(.version | test("^[0-9]+\\.[0-9]+\\.[0-9]+$"))]'

# Pretty table with dates
curl -s "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | \
  jq -r '[.available_versions[] | select(.version | test("^[0-9]+\\.[0-9]+\\.[0-9]+$"))] |
         sort_by(.ts) | reverse |
         .[] | [.version, .app_version, (.ts | todate)] | @tsv' | \
  column -t -s $'\t'
```

## Response Format

Each version entry contains:

| Field | Description | Example |
|-------|-------------|---------|
| `version` | Helm chart version | `3.6.1` |
| `app_version` | Kyverno app version | `v1.16.1` |
| `ts` | Unix timestamp of release | `1764753174` |
| `contains_security_updates` | Security patch flag | `false` |
| `prerelease` | RC/beta/alpha flag | `false` |

## Version Mapping Reference

The Helm chart version and Kyverno app version follow different schemes:

- **Chart 3.x** maps to **Kyverno 1.1x** (e.g., Chart 3.6.1 = Kyverno v1.16.1)
- **Chart 2.x** maps to **Kyverno 1.x** (legacy)

## Use Cases

1. **Check latest stable version**
   ```bash
   curl -s "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | jq '.version, .app_version'
   ```

2. **Find release date for specific version**
   ```bash
   curl -s "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | \
     jq '.available_versions[] | select(.version == "3.6.0") | .ts | todate'
   ```

3. **List versions released in last 90 days**
   ```bash
   NINETY_DAYS_AGO=$(($(date +%s) - 7776000))
   curl -s "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | \
     jq --argjson cutoff "$NINETY_DAYS_AGO" \
       '[.available_versions[] | select(.ts > $cutoff and (.version | test("^[0-9]+\\.[0-9]+\\.[0-9]+$")))]'
   ```

## Self-Test

```bash
# Verify API is accessible and returns expected structure
curl -sf "https://artifacthub.io/api/v1/packages/helm/kyverno/kyverno" | \
  jq -e '.version and .app_version and .available_versions' > /dev/null && \
  echo "PASS: Kyverno version lookup working" || echo "FAIL: API check failed"
```

Related in General