From 37fadaf44de2a6313dc410562d59edab18d9a8d5 Mon Sep 17 00:00:00 2001 From: Andrew Thornton Date: Thu, 3 Feb 2022 16:09:52 +0000 Subject: [PATCH 1/4] Fix pushing to 1-x-dev docker tag It appears that #18551 and #18573 have a mistake in that raymond does not have an {{else}} on {{#equal}}. This PR notes that Sprig has a hasPrefix function and so we use this with another if. Signed-off-by: Andrew Thornton --- docker/manifest.rootless.tmpl | 6 +++--- docker/manifest.tmpl | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/docker/manifest.rootless.tmpl b/docker/manifest.rootless.tmpl index c488934ea39ed..9559416470778 100644 --- a/docker/manifest.rootless.tmpl +++ b/docker/manifest.rootless.tmpl @@ -1,4 +1,4 @@ -image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#equal build.ref "refs/heads/main"}}dev{{else}}{{trimPrefix "refs/heads/release/v" build.ref}}-dev{{/equal}}{{/if}}-rootless +image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#if (hasPrefix "refs/heads/release/v" build.ref)}}{{trimPrefix "refs/heads/release/v" build.ref}}-{{/if}}dev{{/if}}-rootless {{#if build.tags}} tags: {{#each build.tags}} @@ -8,12 +8,12 @@ tags: {{/if}} manifests: - - image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#equal build.ref "refs/heads/main"}}dev{{else}}{{trimPrefix "refs/heads/release/v" build.ref}}-dev{{/equal}}{{/if}}-linux-amd64-rootless + image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#if (hasPrefix "refs/heads/release/v" build.ref)}}{{trimPrefix "refs/heads/release/v" build.ref}}-{{/if}}dev{{/if}}-linux-amd64-rootless platform: architecture: amd64 os: linux - - image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#equal build.ref "refs/heads/main"}}dev{{else}}{{trimPrefix "refs/heads/release/v" build.ref}}-dev{{/equal}}{{/if}}-linux-arm64-rootless + image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#if (hasPrefix "refs/heads/release/v" build.ref)}}{{trimPrefix "refs/heads/release/v" build.ref}}-{{/if}}dev{{/if}}-linux-arm64-rootless platform: architecture: arm64 os: linux diff --git a/docker/manifest.tmpl b/docker/manifest.tmpl index 2d125c96ca5d0..4cd4ea4ea2d8b 100644 --- a/docker/manifest.tmpl +++ b/docker/manifest.tmpl @@ -1,4 +1,4 @@ -image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#equal build.ref "refs/heads/main"}}dev{{else}}{{trimPrefix "refs/heads/release/v" build.ref}}-dev{{/equal}}{{/if}} +image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#if (hasPrefix "refs/heads/release/v" build.ref)}}{{trimPrefix "refs/heads/release/v" build.ref}}-{{/if}}dev{{/if}} {{#if build.tags}} tags: {{#each build.tags}} @@ -8,12 +8,12 @@ tags: {{/if}} manifests: - - image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#equal build.ref "refs/heads/main"}}dev{{else}}{{trimPrefix "refs/heads/release/v" build.ref}}-dev{{/equal}}{{/if}}-linux-amd64 + image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#if (hasPrefix "refs/heads/release/v" build.ref)}}{{trimPrefix "refs/heads/release/v" build.ref}}-{{/if}}dev{{/if}}-linux-amd64 platform: architecture: amd64 os: linux - - image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#equal build.ref "refs/heads/main"}}dev{{else}}{{trimPrefix "refs/heads/release/v" build.ref}}-dev{{/equal}}{{/if}}-linux-arm64 + image: gitea/gitea:{{#if build.tag}}{{trimPrefix "v" build.tag}}{{else}}{{#if (hasPrefix "refs/heads/release/v" build.ref)}}{{trimPrefix "refs/heads/release/v" build.ref}}-{{/if}}dev{{/if}}-linux-arm64 platform: architecture: arm64 os: linux From 6bedea656a6e775a712da993d96ff5af7235c1f0 Mon Sep 17 00:00:00 2001 From: Andrew Thornton Date: Thu, 3 Feb 2022 18:53:49 +0000 Subject: [PATCH 2/4] Fix pushing to 1-x-dev docker tag (part 2) Although we now have the manifest working, we need to create the images. Here we adjust the .drone.yml to force building of the images Signed-off-by: Andrew Thornton --- .drone.yml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index 1075baa3555c7..2d8ac5410a807 100644 --- a/.drone.yml +++ b/.drone.yml @@ -808,6 +808,7 @@ depends_on: trigger: ref: - refs/heads/main + - "refs/heads/release/v*" event: exclude: - cron @@ -823,7 +824,7 @@ steps: image: techknowlogick/drone-docker:latest settings: auto_tag: false - tags: dev-linux-amd64 + tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-amd64 repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -841,7 +842,7 @@ steps: settings: dockerfile: Dockerfile.rootless auto_tag: false - tags: dev-linux-amd64-rootless + tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-amd64-rootless repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -965,6 +966,7 @@ depends_on: trigger: ref: - refs/heads/main + - "refs/heads/release/v*" event: exclude: - cron @@ -980,7 +982,7 @@ steps: image: techknowlogick/drone-docker:latest settings: auto_tag: false - tags: dev-linux-arm64 + tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-arm64 repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -998,7 +1000,7 @@ steps: settings: dockerfile: Dockerfile.rootless auto_tag: false - tags: dev-linux-arm64-rootless + tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-arm64-rootless repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn From 6a9dedd32c1e5c355a743703e35d8b7cf3ae23eb Mon Sep 17 00:00:00 2001 From: Andrew Thornton Date: Thu, 3 Feb 2022 19:58:41 +0000 Subject: [PATCH 3/4] Fix pushing to 1-x-dev docker tag OK now we have the images building we should make sure that the main ones stays dev and the release/v* ones become *-dev-* Signed-off-by: Andrew Thornton --- .drone.yml | 142 +++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 138 insertions(+), 4 deletions(-) diff --git a/.drone.yml b/.drone.yml index 2d8ac5410a807..73a1decb50eee 100644 --- a/.drone.yml +++ b/.drone.yml @@ -808,6 +808,69 @@ depends_on: trigger: ref: - refs/heads/main + event: + exclude: + - cron + +steps: + - name: fetch-tags + image: docker:git + commands: + - git fetch --tags --force + + - name: publish + pull: always + image: techknowlogick/drone-docker:latest + settings: + auto_tag: false + tags: dev-linux-amd64 + repo: gitea/gitea + build_args: + - GOPROXY=off + password: + from_secret: docker_password + username: + from_secret: docker_username + when: + event: + exclude: + - pull_request + + - name: publish-rootless + image: techknowlogick/drone-docker:latest + settings: + dockerfile: Dockerfile.rootless + auto_tag: false + tags: dev-linux-amd64-rootless + repo: gitea/gitea + build_args: + - GOPROXY=off + password: + from_secret: docker_password + username: + from_secret: docker_username + environment: + PLUGIN_MIRROR: + from_secret: plugin_mirror + when: + event: + exclude: + - pull_request + +--- +kind: pipeline +name: docker-linux-amd64-release-branch + +platform: + os: linux + arch: amd64 + +depends_on: + - testing-amd64 + - testing-arm64 + +trigger: + ref: - "refs/heads/release/v*" event: exclude: @@ -824,7 +887,7 @@ steps: image: techknowlogick/drone-docker:latest settings: auto_tag: false - tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-amd64 + tags: ${DRONE_BRANCH##release/v}-dev-linux-amd64 repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -842,7 +905,7 @@ steps: settings: dockerfile: Dockerfile.rootless auto_tag: false - tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-amd64-rootless + tags: ${DRONE_BRANCH##release/v}-dev-linux-amd64-rootless repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -966,6 +1029,72 @@ depends_on: trigger: ref: - refs/heads/main + event: + exclude: + - cron + +steps: + - name: fetch-tags + image: docker:git + commands: + - git fetch --tags --force + + - name: publish + pull: always + image: techknowlogick/drone-docker:latest + settings: + auto_tag: false + tags: dev-linux-arm64 + repo: gitea/gitea + build_args: + - GOPROXY=off + password: + from_secret: docker_password + username: + from_secret: docker_username + environment: + PLUGIN_MIRROR: + from_secret: plugin_mirror + when: + event: + exclude: + - pull_request + + - name: publish-rootless + image: techknowlogick/drone-docker:latest + settings: + dockerfile: Dockerfile.rootless + auto_tag: false + tags: dev-linux-arm64-rootless + repo: gitea/gitea + build_args: + - GOPROXY=off + password: + from_secret: docker_password + username: + from_secret: docker_username + environment: + PLUGIN_MIRROR: + from_secret: plugin_mirror + when: + event: + exclude: + - pull_request + +--- +kind: pipeline +name: docker-linux-arm64-release-branch + +platform: + os: linux + arch: arm64 + +depends_on: + - testing-amd64 + - testing-arm64 + +trigger: + ref: - "refs/heads/release/v*" event: exclude: @@ -982,7 +1111,7 @@ steps: image: techknowlogick/drone-docker:latest settings: auto_tag: false - tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-arm64 + tags: ${DRONE_BRANCH##release/v}-dev-linux-arm64 repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -1000,7 +1129,7 @@ steps: settings: dockerfile: Dockerfile.rootless auto_tag: false - tags: ${DRONE_COMMIT_REF##refs/heads/release/v}${${DRONE_COMMIT_REF##refs/heads/release/v}:+-}dev-linux-arm64-rootless + tags: ${DRONE_BRANCH##release/v}-dev-linux-arm64-rootless repo: gitea/gitea build_args: - GOPROXY=https://goproxy.cn @@ -1012,6 +1141,7 @@ steps: event: exclude: - pull_request + --- kind: pipeline type: docker @@ -1100,6 +1230,8 @@ trigger: depends_on: - docker-linux-amd64-release - docker-linux-arm64-release + - docker-linux-amd64-release-branch + - docker-linux-arm64-release-branch --- kind: pipeline @@ -1133,6 +1265,8 @@ depends_on: - docker-linux-arm64-release - docker-linux-amd64-release-version - docker-linux-arm64-release-version + - docker-linux-amd64-release-branch + - docker-linux-arm64-release-branch - docker-manifest - docker-manifest-version - docs From 406c2763f3325983cb79abf79853fb25b241696c Mon Sep 17 00:00:00 2001 From: zeripath Date: Thu, 3 Feb 2022 20:23:02 +0000 Subject: [PATCH 4/4] Apply suggestions from code review --- .drone.yml | 17 ++++------------- 1 file changed, 4 insertions(+), 13 deletions(-) diff --git a/.drone.yml b/.drone.yml index 73a1decb50eee..10444d689f54c 100644 --- a/.drone.yml +++ b/.drone.yml @@ -826,7 +826,7 @@ steps: tags: dev-linux-amd64 repo: gitea/gitea build_args: - - GOPROXY=off + - GOPROXY=https://goproxy.cn password: from_secret: docker_password username: @@ -844,14 +844,11 @@ steps: tags: dev-linux-amd64-rootless repo: gitea/gitea build_args: - - GOPROXY=off + - GOPROXY=https://goproxy.cn password: from_secret: docker_password username: from_secret: docker_username - environment: - PLUGIN_MIRROR: - from_secret: plugin_mirror when: event: exclude: @@ -1047,14 +1044,11 @@ steps: tags: dev-linux-arm64 repo: gitea/gitea build_args: - - GOPROXY=off + - GOPROXY=https://goproxy.cn password: from_secret: docker_password username: from_secret: docker_username - environment: - PLUGIN_MIRROR: - from_secret: plugin_mirror when: event: exclude: @@ -1068,14 +1062,11 @@ steps: tags: dev-linux-arm64-rootless repo: gitea/gitea build_args: - - GOPROXY=off + - GOPROXY=https://goproxy.cn password: from_secret: docker_password username: from_secret: docker_username - environment: - PLUGIN_MIRROR: - from_secret: plugin_mirror when: event: exclude: