stackrox / kube-linter

KubeLinter is a static analysis tool that checks Kubernetes YAML files and Helm charts to ensure the applications represented in them adhere to best practices.

Home Page:https://docs.kubelinter.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

kube-linter go module versioning is broken

pmalek opened this issue · comments

Problem statement

It seems that kube-linter is not adhering to semver versioning w.r.t having a v prefix in tag names, as mentioned e.g. in https://go.dev/blog/publishing-go-modules#semantic-versions-and-modules.

This causes go toolchain to not detect newer versions than v0.4.0 which by accident (?) had v prefix.

How to reproduce

To reproduce this it's enough to:

$ go mod init randomname
$ go get golang.stackrox.io/kube-linter@latest
go: added golang.stackrox.io/kube-linter v0.4.0

One thing that might be considered is changing https://github.com/stackrox/kube-linter/blob/main/.github/workflows/build.yaml#L10 to "v*" or something more specific like:

      - 'v[0-9]+.[0-9]+.[0-9]+'
      - 'v[0-9]+.[0-9]+.[0-9]+-alpha.[0-9]+'
      - 'v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+'
      - 'v[0-9]+.[0-9]+.[0-9]+-rc.[0-9]+'