project_name: flux builds: - <<: &build_defaults binary: flux main: ./cmd/flux ldflags: - -s -w -X main.VERSION={{ .Version }} env: - CGO_ENABLED=0 id: linux goos: - linux goarch: - amd64 - arm64 - arm goarm: - 7 - <<: *build_defaults id: darwin goos: - darwin goarch: - amd64 - arm64 - <<: *build_defaults id: windows goos: - windows archives: - name_template: "{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}" id: nix builds: [linux, darwin] format: tar.gz files: - none* - name_template: "{{ .Binary }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}" id: windows builds: [windows] format: zip files: - none* source: enabled: true name_template: '{{ .ProjectName }}_{{ .Version }}_source_code' sboms: - id: source artifacts: source documents: - "{{ .ProjectName }}_{{ .Version }}_sbom.spdx.json" release: extra_files: - glob: output/crd-schemas.tar.gz - glob: output/manifests.tar.gz - glob: output/install.yaml checksum: extra_files: - glob: output/crd-schemas.tar.gz - glob: output/manifests.tar.gz - glob: output/install.yaml signs: - cmd: cosign env: - COSIGN_EXPERIMENTAL=1 certificate: '${artifact}.pem' args: - sign-blob - "--yes" - '--output-certificate=${certificate}' - '--output-signature=${signature}' - '${artifact}' artifacts: checksum output: true dockers: - image_templates: - 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}-amd64' dockerfile: Dockerfile use: buildx goos: linux goarch: amd64 build_flag_templates: - "--pull" - "--build-arg=ARCH=linux/amd64" - "--label=org.opencontainers.image.created={{ .Date }}" - "--label=org.opencontainers.image.name={{ .ProjectName }}" - "--label=org.opencontainers.image.revision={{ .FullCommit }}" - "--label=org.opencontainers.image.version={{ .Version }}" - "--label=org.opencontainers.image.source={{ .GitURL }}" - "--platform=linux/amd64" - image_templates: - 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}-arm64' dockerfile: Dockerfile use: buildx goos: linux goarch: arm64 build_flag_templates: - "--pull" - "--build-arg=ARCH=linux/arm64" - "--label=org.opencontainers.image.created={{ .Date }}" - "--label=org.opencontainers.image.name={{ .ProjectName }}" - "--label=org.opencontainers.image.revision={{ .FullCommit }}" - "--label=org.opencontainers.image.version={{ .Version }}" - "--label=org.opencontainers.image.source={{ .GitURL }}" - "--platform=linux/arm64" - image_templates: - 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}-arm' dockerfile: Dockerfile use: buildx goos: linux goarch: arm goarm: 7 build_flag_templates: - "--pull" - "--build-arg=ARCH=linux/arm" - "--label=org.opencontainers.image.created={{ .Date }}" - "--label=org.opencontainers.image.name={{ .ProjectName }}" - "--label=org.opencontainers.image.revision={{ .FullCommit }}" - "--label=org.opencontainers.image.version={{ .Version }}" - "--label=org.opencontainers.image.source={{ .GitURL }}" - "--platform=linux/arm/v7" docker_manifests: - name_template: 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}' image_templates: - 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}-amd64' - 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}-arm64' - 'ghcr.io/weaveworks/weave-assured-flux-cli:{{ .Tag }}-arm' docker_signs: - cmd: cosign env: - COSIGN_EXPERIMENTAL=1 args: - sign - "--yes" - '${artifact}' artifacts: all output: true