Add sbom targets

Signed-off-by: Bryan Frimin <bryan@getprobo.com>
This commit is contained in:
Bryan Frimin
2025-07-08 08:28:29 +02:00
parent afb42e8f5f
commit 418bfd133c

View File

@@ -3,6 +3,8 @@ NPX?= npx
PRETTIER?= $(NPX) prettier
GO?= go
DOCKER?= docker
SYFT ?= syft
GRYPE ?= grype
DOCKER_BUILD_FLAGS?=
DOCKER_BUILD= DOCKER_BUILDKIT=1 $(DOCKER) build $(DOCKER_BUILD_FLAGS)
@@ -35,6 +37,35 @@ vet:
.PHONY: build
build: @probo/console bin/probod
.PHONY: sbom-docker
sbom-docker: docker-build
$(SYFT) docker:$(DOCKER_IMAGE_NAME):$(DOCKER_TAG_NAME) -o cyclonedx-json \
--source-name "$(DOCKER_IMAGE_NAME)" \
--source-version "$(DOCKER_TAG_NAME)" \
> sbom-docker.json
.PHONY: sbom
sbom:
$(SYFT) dir:. -o cyclonedx-json \
--source-name "probo" \
--source-version "$(VERSION)" \
> sbom.json
.PHONY: scan-sbom
scan-sbom: sbom
$(GRYPE) sbom:sbom.json --fail-on high
.PHONY: scan-sbom-docker
scan-sbom-docker: sbom-docker
$(GRYPE) sbom:sbom-docker.json --fail-on high
.PHONY: scan-docker
scan-docker: docker-build
$(GRYPE) docker:$(DOCKER_IMAGE_NAME):$(DOCKER_TAG_NAME) --fail-on high
.PHONY: scan
scan: scan-sbom scan-sbom-docker scan-docker
.PHONY: docker-build
docker-build:
$(DOCKER_BUILD) --tag $(DOCKER_IMAGE_NAME):$(DOCKER_TAG_NAME) --file Dockerfile .
@@ -74,6 +105,7 @@ clean: ## Clean the project (node_modules and build artifacts)
$(RM) -rf bin/*
$(RM) -rf node_modules
$(RM) -rf apps/console/{dist,node_modules}
$(RM) -rf sbom-docker.json sbom.json
.PHONY: stack-up
stack-up: ## Start the docker stack as a deamon