kind: pipeline type: docker name: linux platform: os: linux arch: amd64 steps: - name: test image: golang:1.12 commands: - go test -cover ./... volumes: - name: go path: /go - name: build image: golang:1.12 commands: - sh scripts/build.sh volumes: - name: go path: /go when: event: - push - tag - name: publish_amd64 image: plugins/docker pull: if-not-exists settings: repo: drone/drone-runner-docker auto_tag: true auto_tag_suffix: linux-amd64 dockerfile: docker/Dockerfile.linux.amd64 username: from_secret: docker_username password: from_secret: docker_password when: ref: - refs/heads/master - refs/tags/* - name: publish_arm image: plugins/docker pull: if-not-exists settings: repo: drone/drone-runner-docker auto_tag: true auto_tag_suffix: linux-arm dockerfile: docker/Dockerfile.linux.arm username: from_secret: docker_username password: from_secret: docker_password when: ref: - refs/heads/master - refs/tags/* - name: publish_arm64 image: plugins/docker pull: if-not-exists settings: repo: drone/drone-runner-docker auto_tag: true auto_tag_suffix: linux-arm64 dockerfile: docker/Dockerfile.linux.arm64 username: from_secret: docker_username password: from_secret: docker_password when: ref: - refs/heads/master - refs/tags/* - name: manifest image: plugins/manifest settings: spec: docker/manifest.tmpl auto_tag: true ignore_missing: true password: from_secret: docker_password username: from_secret: docker_username when: ref: - refs/heads/master - refs/tags/* volumes: - name: go temp: {}