diff --git a/multiarch-container.yaml b/multiarch-container.yaml index 8b465a7..c4660b6 100644 --- a/multiarch-container.yaml +++ b/multiarch-container.yaml @@ -5,8 +5,20 @@ type: kubernetes name: build-{{ $plat.os }}-{{ $plat.arch }} trigger: - event: [ push ] - branch: [ {{ if $.input.build_branches -}}{{ range $.input.build_branches }}{{ . }}, {{ end }}{{ else }}master{{- end }} ] + event: + - push + branch: + {{ if $.input.build_branches -}} + {{ range $.input.build_branches }}- {{ . }}{{ end }} + {{ else }}- master{{- end }} + +platform: + os: {{ $plat.os }} + arch: {{ $plat.arch }} + +node_selector: + kubernetes.io/os: {{ $plat.os }} + kubernetes.io/arch: {{ $plat.arch }} steps: - name: build @@ -33,8 +45,19 @@ type: kubernetes name: publish-{{ $plat.os }}-{{ $plat.arch }} trigger: - event: [ promote ] - target: [ publish, "publish-{{ $plat.os }}-{{ $plat.arch }}" ] + event: + - promote + target: + - publish + - publish-{{ $plat.os }}-{{ $plat.arch }} + +platform: + os: {{ $plat.os }} + arch: {{ $plat.arch }} + +node_selector: + kubernetes.io/os: {{ $plat.os }} + kubernetes.io/arch: {{ $plat.arch }} steps: - name: build-and-publish @@ -53,7 +76,6 @@ steps: - {{ . }} {{ end }} tags: - - latest-{{ $plat.os }}-{{ $plat.arch }} {{ range $.input.tags }} - {{ . }}-{{ $plat.os }}-{{ $plat.arch }} {{ end }} @@ -65,12 +87,24 @@ type: kubernetes name: publish-multiarch-manifest trigger: - event: [ promote ] - target: [ publish ] + event: + - promote + target: + - publish + +{{ if .input.publish_multiarch_from }} +platform: + os: {{ .input.publish_multiarch_from.os }} + arch: {{ .input.publish_multiarch_from.arch }} + +node_selector: + kubernetes.io/os: {{ .input.publish_multiarch_from.os }} + kubernetes.io/arch: {{ .input.publish_multiarch_from.arch }} +{{ end }} steps: - name: deploy - image: gitea.internal.example.com/examples/docker:{{ if .input.docker_image_tag }}{{ .input.docker_image_tag }}{{ else }}latest{{ end }} + image: gitea.internal.example.com/examples/docker:latest{{ if .input.publish_multiarch_from }}-{{ .input.publish_multiarch_from.os }}-{{ .input.publish_multiarch_from.arch }}{{ end }} volumes: - name: dockersock path: /var/run/ @@ -81,13 +115,6 @@ steps: from_secret: gitea-internal-password commands: - /bin/docker-setup - - | - docker manifest create \ - gitea.internal.example.com/{{ .input.repo }}:latest \ - {{ range .input.platforms -}} - --amend gitea.internal.example.com/{{ $.input.repo }}:latest-{{ .os }}-{{ .arch }} \ - {{- end }} - - docker manifest push gitea.internal.example.com/{{ .input.repo }}:latest {{ range $i, $tag := $.input.tags }} - | docker manifest create \ diff --git a/readme.md b/readme.md index d283421..958b836 100644 --- a/readme.md +++ b/readme.md @@ -18,6 +18,7 @@ data: build_args: - EXAMPLE_ARG=foo tags: + - latest - "1.2.3" - "1.2" - "1"