devkekops

command module
v0.0.0-...-64f3b2a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 11, 2024 License: MIT Imports: 12 Imported by: 0

README

DevKekOps

  • TODO: Investigate available_versions.contains_security_updates field in the artifacthub helm chart response. Sounds interesting.
  • TODO: Implement resolving repo url to repo name for all commands
  • TODO: It's easy to get rate limited by Artifact Hub, try to handle this
  • TODO: Add better help outputs for the subcommands

Get info about helm charts such as available versions and vulnerabilites using Artifact Hub. If the chart is not on artifacthub, it's rendered using helm and scanned with trivy.

Usage

To identify a chart, use the repo name and chart name according to artifacthub. To find out what that is, you can use search.

devkekops search alloy
ORGANIZATION  REPO           CHART        URL
grafana       grafana        alloy        https://artifacthub.io/packages/helm/grafana/alloy
portefaix     portefaix-hub  alloy-mixin  https://artifacthub.io/packages/helm/portefaix-hub/alloy-mixin
Compare vulnerabilities with the latest version of a chart

Artifact Hub uses Trivy to scan images.

devkekops compare grafana/alloy:0.8.1
CHART  VERSION  CRITICAL  HIGH  MEDIUM  LOW
alloy  0.10.0   1         4     20      8
alloy  0.8.1    1         3     21      8

Use -diff to output the difference between the latest and current chart:

CHART  VERSION          CRITICAL  HIGH  MEDIUM  LOW  URL
alloy  0.8.1 -> 0.10.0  0         1     -1      0    https://artifacthub.io/packages/helm/grafana/alloy

To compare many charts, add -file config.yaml where config.yaml looks like this:

# TODO: Maybe have separate fields for repo and repoUrl
- repo: ghcr.io
  chart: actions/actions-runner-controller-charts/gha-runner-scale-set
  version: 0.9.3
- repo: grafana
  chart: alloy
  version: 0.6.0
- repo: https://grafana.github.io/helm-charts
  chart: alloy
  version: 0.6.0

You can use a repo url, i.e. the url to where the helm registry, instead of the repo name.

Get available versions
devkekops versions grafana/alloy
0.10.0
0.9.2
0.9.1
0.9.0
0.8.1
0.8.0
0.7.0
0.6.1
0.6.0
0.5.1
0.5.0
0.4.0
0.3.2
0.3.1
0.3.0
0.2.0
0.1.1
0.1.0
Open a chart on artifacthub

TODO: Only works on mac.

devkekops open grafana/alloy

Binaries

Upload binaries to to https://slarwise.srht.site, see https://srht.site/quickstart.

mkdir site
GOOS=linux GOARCH=amd64 go build -o site/devkekops-linux-amd64-0.0.1 .
cd site
tar -cvz devkekops-linux-amd64-0.0.1 > site.tar.gz
hut pages publish -d slarwise.srht.site site.tar.gz

To download and run, do

wget --quiet https://slarwise.srht.site/devkekops-linux-amd64-0.0.1
mv devkekops-linux-amd64-0.0.1 devkekops
chmod u+x ./devkekops
./devkekops --help

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL