From 2c25604824db184d70d5336124f7da488b506328 Mon Sep 17 00:00:00 2001 From: Antoine GIRARD Date: Tue, 23 Jul 2019 00:47:38 +0200 Subject: [PATCH 1/5] drone/docker: prepare multi-arch release --- .drone.yml | 33 ++++++++++++++++++++++++++++++++- docker/manifest.tmpl | 13 +++++++++++++ 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 docker/manifest.tmpl diff --git a/.drone.yml b/.drone.yml index d2d798e81790a..66cb6ae7163de 100644 --- a/.drone.yml +++ b/.drone.yml @@ -560,7 +560,7 @@ steps: --- kind: pipeline -name: docker +name: docker-linux-amd64 platform: os: linux @@ -605,6 +605,7 @@ steps: image: plugins/docker:linux-amd64 settings: auto_tag: true + auto_tag_suffix: linux-amd64 repo: gitea/gitea password: from_secret: docker_password @@ -615,6 +616,36 @@ steps: exclude: - pull_request + +--- +kind: pipeline +name: docker-manifest + +platform: + os: linux + arch: amd64 + +steps: +- name: manifest + pull: always + image: plugins/manifest + settings: + auto_tag: true + ignore_missing: true + spec: docker/manifest.tmpl + password: + from_secret: docker_password + username: + from_secret: docker_username + +trigger: + ref: + - refs/heads/master + - "refs/tags/**" + +depends_on: +- docker-linux-amd64 + --- kind: pipeline name: notify diff --git a/docker/manifest.tmpl b/docker/manifest.tmpl new file mode 100644 index 0000000000000..e30d444b6116b --- /dev/null +++ b/docker/manifest.tmpl @@ -0,0 +1,13 @@ +image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}latest{{/if}} +{{#if build.tags}} +tags: +{{#each build.tags}} + - {{this}} +{{/each}} +{{/if}} +manifests: + - + image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64 + platform: + architecture: amd64 + os: linux \ No newline at end of file From 8ae8807b0ee5ac4bb43228c01fbe7fba779cef63 Mon Sep 17 00:00:00 2001 From: Antoine GIRARD Date: Tue, 23 Jul 2019 11:32:16 +0200 Subject: [PATCH 2/5] Add docker-linux-arm64 pipeline --- .drone.yml | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/.drone.yml b/.drone.yml index 66cb6ae7163de..642b348e79dfc 100644 --- a/.drone.yml +++ b/.drone.yml @@ -617,6 +617,65 @@ steps: - pull_request + +--- +kind: pipeline +name: docker-linux-arm64 + +platform: + os: linux + arch: arm64 + +workspace: + base: /go + path: src/code.gitea.io/gitea + +depends_on: + - testing + +trigger: + ref: + - refs/heads/master + - "refs/tags/**" + - "refs/pull/**" + +steps: + - name: fetch-tags + pull: default + image: docker:git + commands: + - git fetch --tags --force + when: + event: + exclude: + - pull_request + + - name: dryrun + pull: always + image: plugins/docker:linux-arm64 + settings: + dry_run: true + repo: gitea/gitea + when: + event: + - pull_request + + - name: publish + pull: always + image: plugins/docker:linux-arm64 + settings: + auto_tag: true + auto_tag_suffix: linux-arm64 + repo: gitea/gitea + password: + from_secret: docker_password + username: + from_secret: docker_username + when: + event: + exclude: + - pull_request + --- kind: pipeline name: docker-manifest @@ -645,6 +704,7 @@ trigger: depends_on: - docker-linux-amd64 +- docker-linux-arm64 --- kind: pipeline From 0860471ef69f6a0f282825a6cc266af955fa5fc3 Mon Sep 17 00:00:00 2001 From: Antoine GIRARD Date: Tue, 23 Jul 2019 11:33:51 +0200 Subject: [PATCH 3/5] add arm 64 build to manifest --- docker/manifest.tmpl | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/docker/manifest.tmpl b/docker/manifest.tmpl index e30d444b6116b..9678449628a19 100644 --- a/docker/manifest.tmpl +++ b/docker/manifest.tmpl @@ -10,4 +10,10 @@ manifests: image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-amd64 platform: architecture: amd64 - os: linux \ No newline at end of file + os: linux + - + image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}-{{/if}}linux-arm64 + platform: + architecture: arm64 + os: linux + variant: v8 From 50e924180c321811c6afa01f0714ff2038482453 Mon Sep 17 00:00:00 2001 From: Antoine GIRARD Date: Tue, 23 Jul 2019 12:02:45 +0200 Subject: [PATCH 4/5] tag dry-run + indent --- .drone.yml | 28 +++++++++++++++------------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/.drone.yml b/.drone.yml index 642b348e79dfc..2a6dc80c40a36 100644 --- a/.drone.yml +++ b/.drone.yml @@ -596,6 +596,7 @@ steps: settings: dry_run: true repo: gitea/gitea + tags: linux-amd64 when: event: - pull_request @@ -656,6 +657,7 @@ steps: settings: dry_run: true repo: gitea/gitea + tags: linux-arm64 when: event: - pull_request @@ -685,17 +687,17 @@ platform: arch: amd64 steps: -- name: manifest - pull: always - image: plugins/manifest - settings: - auto_tag: true - ignore_missing: true - spec: docker/manifest.tmpl - password: - from_secret: docker_password - username: - from_secret: docker_username + - name: manifest + pull: always + image: plugins/manifest + settings: + auto_tag: true + ignore_missing: true + spec: docker/manifest.tmpl + password: + from_secret: docker_password + username: + from_secret: docker_username trigger: ref: @@ -703,8 +705,8 @@ trigger: - "refs/tags/**" depends_on: -- docker-linux-amd64 -- docker-linux-arm64 + - docker-linux-amd64 + - docker-linux-arm64 --- kind: pipeline From 74720ac4c13256b3c95ec91702dccb32b878bcc5 Mon Sep 17 00:00:00 2001 From: Antoine GIRARD Date: Wed, 24 Jul 2019 00:56:25 +0200 Subject: [PATCH 5/5] Fix notify dependency --- .drone.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.drone.yml b/.drone.yml index 2a6dc80c40a36..73f0080f853d2 100644 --- a/.drone.yml +++ b/.drone.yml @@ -730,7 +730,9 @@ depends_on: - translations - release-version - release-master - - docker + - docker-linux-amd64 + - docker-linux-arm64 + - docker-manifest - docs steps: