github.com/kubeshop/testkube@v1.17.23/goreleaser_files/.goreleaser-docker-build-executor-jmeterd.yml (about) 1 env: 2 # Goreleaser always uses the docker buildx builder with name "default"; see 3 # https://github.com/goreleaser/goreleaser/pull/3199 4 # To use a builder other than "default", set this variable. 5 # Necessary for, e.g., GitHub actions cache integration. 6 - DOCKER_REPO={{ if index .Env "DOCKER_REPO" }}{{ .Env.DOCKER_REPO }}{{ else }}kubeshop{{ end }} 7 - DOCKER_BUILDX_BUILDER={{ if index .Env "DOCKER_BUILDX_BUILDER" }}{{ .Env.DOCKER_BUILDX_BUILDER }}{{ else }}default{{ end }} 8 # Setup to enable Docker to use, e.g., the GitHub actions cache; see 9 # https://docs.docker.com/build/building/cache/backends/ 10 # https://github.com/moby/buildkit#export-cache 11 - DOCKER_BUILDX_CACHE_FROM={{ if index .Env "DOCKER_BUILDX_CACHE_FROM" }}{{ .Env.DOCKER_BUILDX_CACHE_FROM }}{{ else }}type=registry{{ end }} 12 - DOCKER_BUILDX_CACHE_TO={{ if index .Env "DOCKER_BUILDX_CACHE_TO" }}{{ .Env.DOCKER_BUILDX_CACHE_TO }}{{ else }}type=inline{{ end }} 13 # Build image with commit sha tag 14 - IMAGE_TAG_SHA={{ if index .Env "IMAGE_TAG_SHA" }}{{ .Env.IMAGE_TAG_SHA }}{{ else }}{{ end }} 15 builds: 16 - id: "linux" 17 main: "./contrib/executor/jmeterd/cmd/agent" 18 binary: "jmeterd" 19 env: 20 - CGO_ENABLED=0 21 goos: 22 - linux 23 goarch: 24 - amd64 25 - arm64 26 mod_timestamp: "{{ .CommitTimestamp }}" 27 dockers: 28 - dockerfile: "./contrib/executor/jmeterd/build/agent/Dockerfile" 29 use: buildx 30 goos: linux 31 goarch: amd64 32 image_templates: 33 - "{{ if .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .ShortCommit }}{{ end }}" 34 - "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}-amd64{{ end }}" 35 build_flag_templates: 36 - "--platform=linux/amd64" 37 - "--label=org.opencontainers.image.title={{ .ProjectName }}" 38 - "--label=org.opencontainers.image.created={{ .Date}}" 39 - "--label=org.opencontainers.image.revision={{ .FullCommit }}" 40 - "--label=org.opencontainers.image.version={{ .Version }}" 41 - "--builder={{ .Env.DOCKER_BUILDX_BUILDER }}" 42 - "--cache-to={{ .Env.DOCKER_BUILDX_CACHE_TO }}" 43 - "--cache-from={{ .Env.DOCKER_BUILDX_CACHE_FROM }}" 44 extra_files: 45 - ./contrib/executor/jmeterd/scripts/entrypoint.sh 46 - ./contrib/executor/jmeterd/scripts/jmeter-master.sh 47 48 - dockerfile: "./contrib/executor/jmeterd/build/agent/Dockerfile" 49 use: buildx 50 goos: linux 51 goarch: arm64 52 image_templates: 53 - "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}-arm64{{ end }}" 54 build_flag_templates: 55 - "--platform=linux/arm64/v8" 56 - "--label=org.opencontainers.image.created={{ .Date }}" 57 - "--label=org.opencontainers.image.title={{ .ProjectName }}" 58 - "--label=org.opencontainers.image.revision={{ .FullCommit }}" 59 - "--label=org.opencontainers.image.version={{ .Version }}" 60 - "--builder={{ .Env.DOCKER_BUILDX_BUILDER }}" 61 - "--cache-to={{ .Env.DOCKER_BUILDX_CACHE_TO }}" 62 - "--cache-from={{ .Env.DOCKER_BUILDX_CACHE_FROM }}" 63 extra_files: 64 - ./contrib/executor/jmeterd/scripts/entrypoint.sh 65 - ./contrib/executor/jmeterd/scripts/jmeter-master.sh 66 67 docker_manifests: 68 - name_template: "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}{{ end }}" 69 image_templates: 70 - "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}-arm64{{ end }}" 71 - "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}-amd64{{ end }}" 72 - name_template: "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:latest{{ end }}" 73 image_templates: 74 - "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}-arm64{{ end }}" 75 - "{{ if not .Env.IMAGE_TAG_SHA }}{{ .Env.DOCKER_REPO }}/testkube-jmeterd-executor:{{ .Version }}-amd64{{ end }}" 76 77 release: 78 disable: true 79 80 docker_signs: 81 - cmd: cosign 82 artifacts: all 83 output: true 84 args: 85 - 'sign' 86 - '${artifact}' 87 - "--yes"