From db0046c0e7f75ba2cbe3c89b611d4e4d7cdc51ba Mon Sep 17 00:00:00 2001 From: Brad Rydzewski Date: Sat, 26 Oct 2019 11:11:43 -0700 Subject: [PATCH] manifest for multi-arch support --- .drone.yml | 20 ++++++++++++++++-- docker/manifest.tmpl | 49 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+), 2 deletions(-) create mode 100644 docker/manifest.tmpl diff --git a/.drone.yml b/.drone.yml index 04c568a..90e3fcb 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,5 +1,6 @@ kind: pipeline -name: default +type: docker +name: linux platform: os: linux @@ -66,7 +67,7 @@ steps: settings: repo: drone/drone-runner-docker auto_tag: true - auto_tag_suffix: linux-arm + auto_tag_suffix: linux-arm64 dockerfile: docker/Dockerfile.linux.arm64 username: from_secret: docker_username @@ -77,6 +78,21 @@ steps: - 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: {} diff --git a/docker/manifest.tmpl b/docker/manifest.tmpl new file mode 100644 index 0000000..a6e87bc --- /dev/null +++ b/docker/manifest.tmpl @@ -0,0 +1,49 @@ +image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}} +{{#if build.tags}} +tags: +{{#each build.tags}} + - {{this}} +{{/each}} +{{/if}} +manifests: + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64 + platform: + architecture: amd64 + os: linux + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64 + platform: + variant: v8 + architecture: arm64 + os: linux + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm + platform: + variant: v7 + architecture: arm + os: linux + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm + platform: + variant: v6 + architecture: arm + os: linux + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1803-amd64 + platform: + architecture: amd64 + os: windows + version: 1803 + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1809-amd64 + platform: + architecture: amd64 + os: windows + version: 1809 + - + image: drone/drone-runner-docker:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}windows-1903-amd64 + platform: + architecture: amd64 + os: windows + version: 1903