--- kind: pipeline type: docker name: amd64 platform: arch: amd64 steps: - name: image build image: gcr.io/kaniko-project/executor:debug network_mode: host commands: - > echo "{\"auths\": {\"https://code.icb4dc0.de\": {\"auth\" : \"$(printf '%s:%s' $$GITEA_USER $$GITEA_TOKEN | base64)\" }}}" > /kaniko/.docker/config.json - /kaniko/executor --destination "$${IMAGE_REPO}:$${IMAGE_TAG}" --context "$${BUILD_CONTEXT}" environment: GITEA_USER: prskr GITEA_TOKEN: from_secret: gitea_token IMAGE_REPO: code.icb4dc0.de/prskr/blog IMAGE_TAG: x86_64 BUILD_CONTEXT: . --- kind: pipeline type: docker name: arm64 platform: arch: arm64 steps: - name: image build image: gcr.io/kaniko-project/executor:debug network_mode: host commands: - > echo "{\"auths\": {\"https://code.icb4dc0.de\": {\"auth\" : \"$(printf '%s:%s' $$GITEA_USER $$GITEA_TOKEN | base64)\" }}}" > /kaniko/.docker/config.json - /kaniko/executor --destination "$${IMAGE_REPO}:$${IMAGE_TAG}" --context "$${BUILD_CONTEXT}" environment: GITEA_USER: prskr GITEA_TOKEN: from_secret: gitea_token IMAGE_REPO: code.icb4dc0.de/prskr/blog IMAGE_TAG: arm64 BUILD_CONTEXT: . --- kind: pipeline type: docker name: deploy depends_on: - amd64 - arm64 steps: - name: manifest image: quay.io/buildah/stable network_mode: host privileged: true commands: - buildah login "$${IMAGE_REGISTRY}" --username "$${GITEA_USER}" --password "$${GITEA_TOKEN}" - buildah manifest create "$${IMAGE_REGISTRY}/$${IMAGE_REPO}:$${IMAGE_TAG}" - buildah manifest add "$${IMAGE_REGISTRY}/$${IMAGE_REPO}:$${IMAGE_TAG}" "docker://$${IMAGE_REGISTRY}/$${IMAGE_REPO}:x86_64" - buildah manifest add "$${IMAGE_REGISTRY}/$${IMAGE_REPO}:$${IMAGE_TAG}" "docker://$${IMAGE_REGISTRY}/$${IMAGE_REPO}:arm64" - buildah manifest push --all "$${IMAGE_REGISTRY}/$${IMAGE_REPO}:$${IMAGE_TAG}" "docker://$${IMAGE_REGISTRY}/$${IMAGE_REPO}:$${IMAGE_TAG}" environment: GITEA_USER: prskr GITEA_TOKEN: from_secret: gitea_token IMAGE_REGISTRY: code.icb4dc0.de IMAGE_REPO: prskr/blog IMAGE_TAG: latest