feat: generate sbom

This commit is contained in:
bakito 2025-10-18 15:10:29 +02:00
parent 35c1af2cea
commit 5648639607
No known key found for this signature in database
GPG Key ID: BCCEB081DB8A24D8
3 changed files with 18 additions and 6 deletions

View File

@ -50,3 +50,5 @@ changelog:
- '^chore'
release:
prerelease: auto
sboms:
- artifacts: archive

View File

@ -19,6 +19,7 @@ TB_GORELEASER ?= $(TB_LOCALBIN)/goreleaser
TB_MOCKGEN ?= $(TB_LOCALBIN)/mockgen
TB_OAPI_CODEGEN ?= $(TB_LOCALBIN)/oapi-codegen
TB_SEMVER ?= $(TB_LOCALBIN)/semver
TB_SYFT ?= $(TB_LOCALBIN)/syft
## Tool Versions
# renovate: packageName=github.com/kubernetes-sigs/controller-tools
@ -36,6 +37,9 @@ TB_OAPI_CODEGEN_VERSION ?= v2.5.0
# renovate: packageName=github.com/bakito/semver
TB_SEMVER_VERSION ?= v1.1.7
TB_SEMVER_VERSION_NUM ?= $(call STRIP_V,$(TB_SEMVER_VERSION))
# renovate: packageName=github.com/anchore/syft/cmd/syft
TB_SYFT_VERSION ?= v1.34.2
TB_SYFT_VERSION_NUM ?= $(call STRIP_V,$(TB_SYFT_VERSION))
## Tool Installer
.PHONY: tb.controller-gen
@ -66,6 +70,10 @@ tb.oapi-codegen: ## Download oapi-codegen locally if necessary.
tb.semver: ## Download semver locally if necessary.
@test -s $(TB_SEMVER) && $(TB_SEMVER) -version | grep -q $(TB_SEMVER_VERSION_NUM) || \
GOBIN=$(TB_LOCALBIN) go install github.com/bakito/semver@$(TB_SEMVER_VERSION)
.PHONY: tb.syft
tb.syft: ## Download syft locally if necessary.
@test -s $(TB_SYFT) && $(TB_SYFT) --version | grep -q $(TB_SYFT_VERSION_NUM) || \
GOBIN=$(TB_LOCALBIN) go install github.com/anchore/syft/cmd/syft@$(TB_SYFT_VERSION)
## Reset Tools
.PHONY: tb.reset
@ -77,7 +85,8 @@ tb.reset:
$(TB_GORELEASER) \
$(TB_MOCKGEN) \
$(TB_OAPI_CODEGEN) \
$(TB_SEMVER)
$(TB_SEMVER) \
$(TB_SYFT)
## Update Tools
.PHONY: tb.update
@ -88,5 +97,6 @@ tb.update: tb.reset
github.com/goreleaser/goreleaser/v2?--version \
go.uber.org/mock/mockgen@github.com/uber-go/mock \
github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen \
github.com/bakito/semver?-version
github.com/bakito/semver?-version \
github.com/anchore/syft/cmd/syft?--version
## toolbox - end

View File

@ -35,13 +35,13 @@ mocks: tb.mockgen
$(TB_MOCKGEN) -package client -destination internal/mocks/client/mock.go github.com/bakito/adguardhome-sync/internal/client Client
$(TB_MOCKGEN) -package client -destination internal/mocks/flags/mock.go github.com/bakito/adguardhome-sync/internal/config Flags
release: tb.semver tb.goreleaser
release: tb.semver tb.goreleaser tb.syft
@version=$$($(TB_SEMVER)); \
git tag -s $$version -m"Release $$version"
$(TB_GORELEASER) --clean --parallelism 2
PATH=$(TB_LOCALBIN):$${PATH} $$(TB_GORELEASER) --clean --parallelism 2
test-release: tb.goreleaser
$(TB_GORELEASER) --skip=publish --snapshot --clean --parallelism 2
test-release: tb.goreleaser tb.syft
PATH=$(TB_LOCALBIN):$${PATH} $(TB_GORELEASER) --skip=publish --snapshot --clean --parallelism 2
start-replica:
docker rm -f adguardhome-replica