project_name: fission release: github: owner: fission name: fission prerelease: true draft: true header: | Release Highlights: https://fission.io/docs/releases/{{ .Tag }}/ Install Guide: https://fission.io/docs/installation/ extra_files: - glob: ./manifest/charts/* - glob: ./manifest/yamls/* before: hooks: - go mod tidy snapshot: name_template: "{{ .Tag }}" builds: - &build-linux id: builder ldflags: - -s -w - -X github.com/fission/fission/pkg/info.GitCommit={{.ShortCommit}} - -X github.com/fission/fission/pkg/info.BuildDate={{.Date}} - -X github.com/fission/fission/pkg/info.Version={{.Tag}} gcflags: - all=-trimpath={{ if index .Env "GITHUB_WORKSPACE"}}{{ .Env.GITHUB_WORKSPACE }}{{ else }}{{ .Env.PWD }}{{ end }} asmflags: - all=-trimpath={{ if index .Env "GITHUB_WORKSPACE"}}{{ .Env.GITHUB_WORKSPACE }}{{ else }}{{ .Env.PWD }}{{ end }} env: - CGO_ENABLED=0 goos: - linux goarch: - amd64 - arm64 binary: builder dir: ./cmd/builder - <<: *build-linux id: fetcher binary: fetcher dir: ./cmd/fetcher - <<: *build-linux id: fission-bundle binary: fission-bundle dir: ./cmd/fission-bundle - <<: *build-linux id: fission-cli goos: - linux - windows - darwin binary: fission dir: ./cmd/fission-cli ignore: - goos: windows goarch: arm64 - <<: *build-linux id: pre-upgrade-checks binary: pre-upgrade-checks dir: ./cmd/preupgradechecks - <<: *build-linux id: reporter binary: reporter dir: ./cmd/reporter dockers: - &docker-amd64 use: buildx goos: linux goarch: amd64 ids: - builder image_templates: - "fission/builder:latest-amd64" - "fission/builder:{{ .Tag }}-amd64" - "ghcr.io/fission/builder:latest-amd64" - "ghcr.io/fission/builder:{{ .Tag }}-amd64" dockerfile: cmd/builder/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=The builder assists in building the fission function source code for deployment." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-amd64 ids: - fetcher image_templates: - "fission/fetcher:latest-amd64" - "fission/fetcher:{{ .Tag }}-amd64" - "ghcr.io/fission/fetcher:latest-amd64" - "ghcr.io/fission/fetcher:{{ .Tag }}-amd64" dockerfile: cmd/fetcher/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=Fetcher is a lightweight component used by environment and builder pods. Fetcher helps in fetch and upload of source/deployment packages and specializing environments." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-amd64 ids: - fission-bundle image_templates: - "fission/fission-bundle:latest-amd64" - "fission/fission-bundle:{{ .Tag }}-amd64" - "ghcr.io/fission/fission-bundle:latest-amd64" - "ghcr.io/fission/fission-bundle:{{ .Tag }}-amd64" dockerfile: cmd/fission-bundle/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=fission-bundle is a component which is a single binary for all components. Most server side components running on server side are fission-bundle binary wrapped in container and used with different arguments." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-amd64 ids: - pre-upgrade-checks image_templates: - "fission/pre-upgrade-checks:latest-amd64" - "fission/pre-upgrade-checks:{{ .Tag }}-amd64" - "ghcr.io/fission/pre-upgrade-checks:latest-amd64" - "ghcr.io/fission/pre-upgrade-checks:{{ .Tag }}-amd64" dockerfile: cmd/preupgradechecks/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=Preupgradechecks ensures that Fission is ready for the targeted version upgrade by performing checks beforehand." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-amd64 ids: - reporter image_templates: - "fission/reporter:latest-amd64" - "fission/reporter:{{ .Tag }}-amd64" - "ghcr.io/fission/reporter:latest-amd64" - "ghcr.io/fission/reporter:{{ .Tag }}-amd64" dockerfile: cmd/reporter/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=The reporter gathers information that assists in improving fission." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/amd64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - &docker-arm64 use: buildx goos: linux goarch: arm64 ids: - builder image_templates: - "fission/builder:latest-arm64" - "fission/builder:{{ .Tag }}-arm64" - "ghcr.io/fission/builder:latest-arm64" - "ghcr.io/fission/builder:{{ .Tag }}-arm64" dockerfile: cmd/builder/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=The builder assists in building the fission function source code for deployment." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-arm64 ids: - fetcher image_templates: - "fission/fetcher:latest-arm64" - "fission/fetcher:{{ .Tag }}-arm64" - "ghcr.io/fission/fetcher:latest-arm64" - "ghcr.io/fission/fetcher:{{ .Tag }}-arm64" dockerfile: cmd/fetcher/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=Fetcher is a lightweight component used by environment and builder pods. Fetcher helps in fetch and upload of source/deployment packages and specializing environments." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-arm64 ids: - fission-bundle image_templates: - "fission/fission-bundle:latest-arm64" - "fission/fission-bundle:{{ .Tag }}-arm64" - "ghcr.io/fission/fission-bundle:latest-arm64" - "ghcr.io/fission/fission-bundle:{{ .Tag }}-arm64" dockerfile: cmd/fission-bundle/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=fission-bundle is a component which is a single binary for all components. Most server side components running on server side are fission-bundle binary wrapped in container and used with different arguments." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-arm64 ids: - pre-upgrade-checks image_templates: - "fission/pre-upgrade-checks:latest-arm64" - "fission/pre-upgrade-checks:{{ .Tag }}-arm64" - "ghcr.io/fission/pre-upgrade-checks:latest-arm64" - "ghcr.io/fission/pre-upgrade-checks:{{ .Tag }}-arm64" dockerfile: cmd/preupgradechecks/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=Preupgradechecks ensures that Fission is ready for the targeted version upgrade by performing checks beforehand." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" - <<: *docker-arm64 ids: - reporter image_templates: - "fission/reporter:latest-arm64" - "fission/reporter:{{ .Tag }}-arm64" - "ghcr.io/fission/reporter:latest-arm64" - "ghcr.io/fission/reporter:{{ .Tag }}-arm64" dockerfile: cmd/reporter/Dockerfile build_flag_templates: - "--label=org.opencontainers.image.description=The reporter gathers information that assists in improving fission." - "--label=org.opencontainers.image.source={{.GitURL}}" - "--platform=linux/arm64" - "--label=org.opencontainers.image.created={{.Date}}" - "--label=org.opencontainers.image.revision={{.FullCommit}}" - "--label=org.opencontainers.image.version={{.Tag}}" docker_manifests: - name_template: ghcr.io/fission/builder:{{ .Tag }} image_templates: - ghcr.io/fission/builder:{{ .Tag }}-amd64 - ghcr.io/fission/builder:{{ .Tag }}-arm64 - name_template: fission/builder:{{ .Tag }} image_templates: - fission/builder:{{ .Tag }}-amd64 - fission/builder:{{ .Tag }}-arm64 - name_template: ghcr.io/fission/fetcher:{{ .Tag }} image_templates: - ghcr.io/fission/fetcher:{{ .Tag }}-amd64 - ghcr.io/fission/fetcher:{{ .Tag }}-arm64 - name_template: fission/fetcher:{{ .Tag }} image_templates: - fission/fetcher:{{ .Tag }}-amd64 - fission/fetcher:{{ .Tag }}-arm64 - name_template: ghcr.io/fission/fission-bundle:{{ .Tag }} image_templates: - ghcr.io/fission/fission-bundle:{{ .Tag }}-amd64 - ghcr.io/fission/fission-bundle:{{ .Tag }}-arm64 - name_template: fission/fission-bundle:{{ .Tag }} image_templates: - fission/fission-bundle:{{ .Tag }}-amd64 - fission/fission-bundle:{{ .Tag }}-arm64 - name_template: ghcr.io/fission/pre-upgrade-checks:{{ .Tag }} image_templates: - ghcr.io/fission/pre-upgrade-checks:{{ .Tag }}-amd64 - ghcr.io/fission/pre-upgrade-checks:{{ .Tag }}-arm64 - name_template: fission/pre-upgrade-checks:{{ .Tag }} image_templates: - fission/pre-upgrade-checks:{{ .Tag }}-amd64 - fission/pre-upgrade-checks:{{ .Tag }}-arm64 - name_template: ghcr.io/fission/reporter:{{ .Tag }} image_templates: - ghcr.io/fission/reporter:{{ .Tag }}-amd64 - ghcr.io/fission/reporter:{{ .Tag }}-arm64 - name_template: fission/reporter:{{ .Tag }} image_templates: - fission/reporter:{{ .Tag }}-amd64 - fission/reporter:{{ .Tag }}-arm64 - name_template: ghcr.io/fission/builder:latest image_templates: - ghcr.io/fission/builder:latest-amd64 - ghcr.io/fission/builder:latest-arm64 - name_template: fission/builder:latest image_templates: - fission/builder:latest-amd64 - fission/builder:latest-arm64 - name_template: ghcr.io/fission/fetcher:latest image_templates: - ghcr.io/fission/fetcher:latest-amd64 - ghcr.io/fission/fetcher:latest-arm64 - name_template: fission/fetcher:latest image_templates: - fission/fetcher:latest-amd64 - fission/fetcher:latest-arm64 - name_template: ghcr.io/fission/fission-bundle:latest image_templates: - ghcr.io/fission/fission-bundle:latest-amd64 - ghcr.io/fission/fission-bundle:latest-arm64 - name_template: fission/fission-bundle:latest image_templates: - fission/fission-bundle:latest-amd64 - fission/fission-bundle:latest-arm64 - name_template: ghcr.io/fission/pre-upgrade-checks:latest image_templates: - ghcr.io/fission/pre-upgrade-checks:latest-amd64 - ghcr.io/fission/pre-upgrade-checks:latest-arm64 - name_template: fission/pre-upgrade-checks:latest image_templates: - fission/pre-upgrade-checks:latest-amd64 - fission/pre-upgrade-checks:latest-arm64 - name_template: ghcr.io/fission/reporter:latest image_templates: - ghcr.io/fission/reporter:latest-amd64 - ghcr.io/fission/reporter:latest-arm64 - name_template: fission/reporter:latest image_templates: - fission/reporter:latest-amd64 - fission/reporter:latest-arm64 changelog: skip: false archives: - id: fission builds: - fission-cli name_template: "{{ .ProjectName }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}" format: binary checksum: name_template: "checksums.txt" algorithm: sha256 # signs the checksum file # https://goreleaser.com/customization/sign signs: - cmd: cosign artifacts: all stdin: '{{ .Env.COSIGN_PWD }}' output: true args: - sign-blob - '--key=cosign.key' - '--output-certificate=${certificate}' - '--output-signature=${signature}' - '${artifact}' - '--yes' # needed for cosign 2.0.0+ # signs our docker image # https://goreleaser.com/customization/docker_sign docker_signs: - cmd: cosign artifacts: all stdin: '{{ .Env.COSIGN_PWD }}' output: true args: - 'sign' - '--key=cosign.key' - '${artifact}' - '--yes' # needed for cosign 2.0.0+