diff --git a/.github/workflows/bootstrap.yaml b/.github/workflows/bootstrap.yaml index 41d569a6ef2c9814aca5ec4358ef7c4fcdac00e8..23942d475fcd2ab444e00ab4bc62b0102b3e7d0e 100644 --- a/.github/workflows/bootstrap.yaml +++ b/.github/workflows/bootstrap.yaml @@ -30,7 +30,7 @@ jobs: uses: fluxcd/pkg//actions/kustomize@main - name: Build run: | - make build-manifests + make cmd/flux/manifests go build -o /tmp/flux ./cmd/flux - name: Set outputs id: vars diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 8a911d1276a636474f3ff577258075e28e36ba8e..0a9207062404e5a371d5e1d38e5ba443983359e6 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -30,7 +30,7 @@ jobs: uses: fluxcd/pkg//actions/kustomize@main - name: Generate manifests run: | - make build-manifests + make cmd/flux/manifests ./manifests/scripts/bundle.sh ./output manifests.tar.gz kustomize build ./manifests/install > ./output/install.yaml - name: Run GoReleaser diff --git a/.github/workflows/scan.yaml b/.github/workflows/scan.yaml index b020c509ec997d422496b441fd73a322d1645c57..029a59a64d1599e570f7d798c98123d76254c706 100644 --- a/.github/workflows/scan.yaml +++ b/.github/workflows/scan.yaml @@ -31,7 +31,7 @@ jobs: uses: fluxcd/pkg//actions/kustomize@main - name: Build manifests run: | - make build-manifests + make cmd/flux/manifests - name: Run Snyk to check for vulnerabilities uses: snyk/actions/golang@master continue-on-error: true diff --git a/Makefile b/Makefile index ed6333f37db975a2e25c8ba544111d9749f78614..b05f16c64bf3e4ae257e9aab3a143a5e2a042b8a 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,7 @@ VERSION?=$(shell grep 'VERSION' cmd/flux/main.go | awk '{ print $$4 }' | tr -d '"') +EMBEDDED_MANIFESTS_TARGET=cmd/flux/manifests + +rwildcard=$(foreach d,$(wildcard $(addsuffix *,$(1))),$(call rwildcard,$(d)/,$(2)) $(filter $(subst *,%,$(2)),$(d))) all: test build @@ -11,13 +14,13 @@ fmt: vet: go vet ./... -test: build-manifests tidy fmt vet docs +test: $(EMBEDDED_MANIFESTS_TARGET) tidy fmt vet docs go test ./... -coverprofile cover.out -build-manifests: +$(EMBEDDED_MANIFESTS_TARGET): $(call rwildcard,manifests/,*.yaml *.json) ./manifests/scripts/bundle.sh -build: +build: $(EMBEDDED_MANIFESTS_TARGET) CGO_ENABLED=0 go build -o ./bin/flux ./cmd/flux install: @@ -25,7 +28,7 @@ install: .PHONY: docs docs: - rm docs/cmd/* + rm -rf docs/cmd/* mkdir -p ./docs/cmd && go run ./cmd/flux/ docgen install-dev: diff --git a/cmd/flux/embed.go b/cmd/flux/manifests.embed.go similarity index 100% rename from cmd/flux/embed.go rename to cmd/flux/manifests.embed.go