build-tag #3

Merged
giles merged 2 commits from build-tag into master 2023-10-20 10:48:52 +00:00
1 changed files with 97 additions and 163 deletions

View File

@ -1,148 +1,3 @@
---
kind: pipeline
type: docker
name: register
platform:
os: linux
arch: amd64
clone:
disable: true
trigger:
event:
exclude:
- promote
---
kind: pipeline
type: docker
name: registry
platform:
os: linux
arch: amd64
clone:
disable: true
steps:
- name: gitea/gitea:1.12.3-linux-amd64
image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f
commands:
- set -e
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- "n=0\nwhile :\ndo\n docker pull gitea/gitea:1.12.3-linux-amd64@sha256:38b8222941d8acffb7bb9c3fb0e9e0b657e06815a090f1fb11ed6900a3c9f384 \\\\\n && docker tag gitea/gitea:1.12.3-linux-amd64@sha256:38b8222941d8acffb7bb9c3fb0e9e0b657e06815a090f1fb11ed6900a3c9f384 $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea/gitea:1.12.3-linux-amd64 \\\\\n && docker push $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea/gitea:1.12.3-linux-amd64 && break\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"initialise failed\"\n exit 1\n fi\n echo \"retrying..$n\"\n sleep 5\ndone\n"
volumes:
- name: dockersock
path: /var/run
services:
- name: docker
image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f
privileged: true
volumes:
- name: dockersock
path: /var/run
- name: ca
path: /etc/docker/certs.d
- name: daemonjson
path: /etc/docker/daemon.json
volumes:
- name: dockersock
temp: {}
- name: ca
host:
path: /etc/docker/certs.d
- name: daemonjson
host:
path: /etc/docker/daemon.json
image_pull_secrets:
- dockerconfigjson
trigger:
event:
- promote
target:
- registry
---
kind: pipeline
type: docker
name: save
platform:
os: linux
arch: amd64
clone:
disable: true
steps:
- name: mkdir
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
settings:
envs:
- drone_tag
- drone_commit
- drone_build_number
- drone_repo_name
- drone_repo_namespace
script:
- mkdir -p /stack/.images/gitea/built
- rm -f /stack/.images/gitea/*.*
- rm -f /stack/.images/gitea/built/*.*
- name: gitea/gitea:1.12.3-linux-amd64
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
settings:
envs:
- drone_tag
- drone_commit
- drone_build_number
- drone_repo_name
- drone_repo_namespace
- registry_domain
- registry_port
- registry_password
- destination_registry
script:
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea/gitea:1.12.3-linux-amd64
- docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea/gitea:1.12.3-linux-amd64 -o /stack/.images/gitea/gitea_gitea:1.12.3-linux-amd64.tar
- echo "docker load < gitea_gitea:1.12.3-linux-amd64.tar" >> /stack/.images/gitea/load.sh
- echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea/gitea:1.12.3-linux-amd64 $${DESTINATION_REGISTRY}/stack/gitea/gitea/gitea:1.12.3-linux-amd64" >> /stack/.images/gitea/load.sh
- name: gitea
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
settings:
envs:
- drone_tag
- drone_commit
- drone_build_number
- drone_repo_name
- drone_repo_namespace
- registry_domain
- registry_port
- registry_password
- destination_registry
script:
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- docker pull $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea
- docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea -o /stack/.images/gitea/built/gitea.tar
- echo "docker load gitea.tar" >> /stack/.images/gitea/built/load.sh
- echo "docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/gitea/gitea ${DESINATION_REGISTRY}/stack/gitea/gitea" >> /stack/.images/gitea/built/load.sh
trigger:
event:
- promote
target:
- save
---
kind: pipeline kind: pipeline
type: docker type: docker
name: print name: print
@ -221,7 +76,7 @@ platform:
arch: amd64 arch: amd64
steps: steps:
- name: "dockerbuild:" - name: "build commit"
image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f
commands: commands:
- set -e - set -e
@ -233,6 +88,25 @@ steps:
volumes: volumes:
- name: dockersock - name: dockersock
path: /var/run path: /var/run
when:
branch:
- action
- name: "build tag"
image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f
commands:
- set -e
- export NAME=gitea
- export ROOT=stack
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- sh .drone/build.sh ${DRONE_TAG}
- sh .drone/push.sh ${DRONE_TAG}
volumes:
- name: dockersock
path: /var/run
when:
event:
- tag
services: services:
- name: docker - name: docker
@ -256,14 +130,6 @@ volumes:
host: host:
path: /etc/docker/daemon.json path: /etc/docker/daemon.json
trigger:
branch:
- separate-database
#event:
#- promote
#target:
#- build
--- ---
kind: pipeline kind: pipeline
type: docker type: docker
@ -285,7 +151,10 @@ steps:
- . - .
target: /stack/gitea target: /stack/gitea
- name: deploy - name: deploy commit
when:
branch:
- action
image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
settings: settings:
envs: envs:
@ -355,13 +224,78 @@ steps:
from_secret: gitea-security-secret-key from_secret: gitea-security-secret-key
GITEA_SERVER_LFS_JWT_SECRET: GITEA_SERVER_LFS_JWT_SECRET:
from_secret: gitea-server-lfs-jwt-secret from_secret: gitea-server-lfs-jwt-secret
- name: deploy tag
trigger: when:
branch: event:
- separate-database - tag
#event: image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea
#- promote settings:
#target: envs:
#- deploy - drone_tag
- drone_commit
- drone_commit_sha
- drone_build_number
- drone_repo_name
- drone_repo_namespace
- scheme
- domain
- registry_domain
- registry_port
- registry_password
- gitea_mailer_host
- gitea_mailer_from
- gitea_mailer_user
- gitea_app_name
- gitea_server_lfs_jwt_secret
- gitea_security_secret_key
- gitea_security_internal_token
- gitea_oauth2_jwt_secret
- gitea_mailer_passwd
- gitea_mailer_protocol
script:
- export GITEA_SERVER_LFS_JWT_SECRET=$${GITEA_SERVER_LFS_JWT_SECRET}
- export GITEA_SECURITY_SECRET_KEY=$${GITEA_SECURITY_SECRET_KEY}
- export GITEA_SECURITY_INTERNAL_TOKEN=$${GITEA_SECURITY_INTERNAL_TOKEN}
- export GITEA_OAUTH2_JWT_SECRET=$${GITEA_OAUTH2_JWT_SECRET}
- export GITEA_MAILER_PASSWD=$${GITEA_MAILER_PASSWD}
- export GITEA_MAILER_PROTOCOL=$${GITEA_MAILER_PROTOCOL}
- export GITEA_MAILER_HOST=$${GITEA_MAILER_HOST}
- export GITEA_MAILER_FROM=$${GITEA_MAILER_FROM}
- export GITEA_MAILER_USER=$${GITEA_MAILER_USER}
- export GITEA_APP_NAME=$${GITEA_APP_NAME}
- export SCHEME=$${SCHEME}
- export DOMAIN=$${DOMAIN}
- export REGISTRY_DOMAIN=$${REGISTRY_DOMAIN}
- export REGISTRY_PORT=$${REGISTRY_PORT}
- export REGISTRY_PASSWORD=$${REGISTRY_PASSWORD}
- set -e
- export NAME=gitea
- export ROOT=stack
- cd /stack/gitea
- "n=0\nwhile :\ndo\n docker login $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/ --username client --password \"$${REGISTRY_PASSWORD}\" \\\\\n && break # substitute your command here\n n=$((n+1))\n if [ $n -ge 10 ]; then\n echo \"login failed\"\n exit 1\n fi\n echo \"retrying login..$n\"\n sleep 5\ndone\n"
- printenv
- sh .drone/pull.sh ${DRONE_TAG}
- sh .drone/deploy.sh ${DRONE_TAG}
environment:
GITEA_APP_NAME:
from_secret: gitea-app-name
GITEA_MAILER_FROM:
from_secret: gitea-mailer-from
GITEA_MAILER_HOST:
from_secret: gitea-mailer-host
GITEA_MAILER_PASSWD:
from_secret: gitea-mailer-passwd
GITEA_MAILER_PROTOCOL:
from_secret: gitea-mailer-protocol
GITEA_MAILER_USER:
from_secret: gitea-mailer-user
GITEA_OAUTH2_JWT_SECRET:
from_secret: gitea-oauth2-jwt-secret
GITEA_SECURITY_INTERNAL_TOKEN:
from_secret: gitea-security-internal-token
GITEA_SECURITY_SECRET_KEY:
from_secret: gitea-security-secret-key
GITEA_SERVER_LFS_JWT_SECRET:
from_secret: gitea-server-lfs-jwt-secret
... ...