--- kind: pipeline name: amd64 platform: os: linux arch: amd64 steps: - name: build image: rancher/dapper:v0.4.2 secrets: [ gcloud_auth ] environment: GCLOUD_AUTH: from_secret: gcloud_auth commands: - dapper ci - echo "${DRONE_TAG}-amd64" | sed -e 's/+/-/g' >.tags volumes: - name: docker path: /var/run/docker.sock - name: github_binary_release image: ibuildthecloud/github-release:v0.0.1 settings: api_key: from_secret: github_token prerelease: true checksum: - sha256 checksum_file: CHECKSUMsum-amd64.txt checksum_flatten: true files: - "dist/artifacts/*" when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag - name: docker-publish image: plugins/docker settings: dockerfile: package/Dockerfile password: from_secret: docker_password repo: "rancher/k3s" username: from_secret: docker_username when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag - name: test image: rancher/dapper:v0.4.2 secrets: [ gcloud_auth ] environment: GCLOUD_AUTH: from_secret: gcloud_auth commands: - dapper -f Dockerfile.test.dapper volumes: - name: docker path: /var/run/docker.sock - name: github_e2e_logs_release image: ibuildthecloud/github-release:v0.0.1 settings: api_key: from_secret: github_token prerelease: true files: - "dist/artifacts/e2e-*.log" when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag volumes: - name: docker host: path: /var/run/docker.sock --- kind: pipeline name: arm64 platform: os: linux arch: arm64 steps: - name: build image: rancher/dapper:v0.4.2 secrets: [ gcloud_auth ] environment: GCLOUD_AUTH: from_secret: gcloud_auth commands: - dapper ci - echo "${DRONE_TAG}-arm64" | sed -e 's/+/-/g' >.tags volumes: - name: docker path: /var/run/docker.sock - name: github_binary_release image: ibuildthecloud/github-release:v0.0.1 settings: api_key: from_secret: github_token prerelease: true checksum: - sha256 checksum_file: CHECKSUMsum-arm64.txt checksum_flatten: true files: - "dist/artifacts/*" when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag - name: docker-publish image: plugins/docker settings: dockerfile: package/Dockerfile password: from_secret: docker_password repo: "rancher/k3s" username: from_secret: docker_username when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag - name: test image: rancher/dapper:v0.4.2 secrets: [ gcloud_auth ] environment: GCLOUD_AUTH: from_secret: gcloud_auth commands: - dapper -f Dockerfile.test.dapper volumes: - name: docker path: /var/run/docker.sock volumes: - name: docker host: path: /var/run/docker.sock --- kind: pipeline name: arm platform: os: linux arch: arm steps: - name: build image: rancher/dapper:v0.4.2 secrets: [ gcloud_auth ] environment: GCLOUD_AUTH: from_secret: gcloud_auth commands: - dapper ci - echo "${DRONE_TAG}-arm" | sed -e 's/+/-/g' >.tags volumes: - name: docker path: /var/run/docker.sock - name: github_binary_release image: ibuildthecloud/github-release:v0.0.1 settings: api_key: from_secret: github_token prerelease: true checksum: - sha256 checksum_file: CHECKSUMsum-arm.txt checksum_flatten: true files: - "dist/artifacts/*" when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag - name: docker-publish image: plugins/docker settings: dockerfile: package/Dockerfile password: from_secret: docker_password repo: "rancher/k3s" username: from_secret: docker_username when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag - name: test image: rancher/dapper:v0.4.2 secrets: [ gcloud_auth ] environment: GCLOUD_AUTH: from_secret: gcloud_auth commands: - dapper -f Dockerfile.test.dapper volumes: - name: docker path: /var/run/docker.sock volumes: - name: docker host: path: /var/run/docker.sock --- kind: pipeline name: manifest platform: os: linux arch: amd64 steps: - name: manifest image: rancher/dapper:v0.4.2 environment: USERNAME: from_secret: docker_username PASSWORD: from_secret: docker_password commands: - export DOCKER_TAG=$(echo "${DRONE_TAG}" | sed -e 's/+/-/g') - docker login -u $env:USERNAME -p $env:PASSWORD - docker manifest create ${DOCKER_TAG} ${DOCKER_TAG}-amd64 ${DOCKER_TAG}-arm64 ${DOCKER_TAG}-arm - docker manifest push ${DOCKER_TAG} when: instance: - drone-publish.rancher.io ref: - refs/head/master - refs/tags/* event: - tag depends_on: - amd64 - arm64 - arm