635 lines
22 KiB
YAML
635 lines
22 KiB
YAML
---
|
|
{
|
|
"clone": {
|
|
"disable": true
|
|
},
|
|
"kind": "pipeline",
|
|
"name": "register",
|
|
"trigger": {
|
|
"event": {
|
|
"exclude": [
|
|
"promote"
|
|
]
|
|
}
|
|
},
|
|
"type": "docker"
|
|
}
|
|
---
|
|
{
|
|
"clone": {
|
|
"disable": true
|
|
},
|
|
"image_pull_secrets": [
|
|
"dockerconfigjson"
|
|
],
|
|
"kind": "pipeline",
|
|
"name": "registry",
|
|
"services": [
|
|
{
|
|
"image": "docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f",
|
|
"name": "docker",
|
|
"privileged": true,
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"path": "/var/run"
|
|
},
|
|
{
|
|
"name": "ca",
|
|
"path": "/etc/docker/certs.d"
|
|
},
|
|
{
|
|
"name": "daemonjson",
|
|
"path": "/etc/docker/daemon.json"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"steps": [
|
|
{
|
|
"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 drone/drone:2.4.0@sha256:8c1c83ed0f68b00e16ca50b8769e6cf7ccb3c5ff390036eaec7e5fcb79c3cb92 \\\\\n && docker tag drone/drone:2.4.0@sha256:8c1c83ed0f68b00e16ca50b8769e6cf7ccb3c5ff390036eaec7e5fcb79c3cb92 $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone:2.4.0 \\\\\n && docker push $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone:2.4.0 && 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"
|
|
],
|
|
"environment": {
|
|
"REGISTRY_DOMAIN": {
|
|
"from_secret": "registry-domain"
|
|
},
|
|
"REGISTRY_PASSWORD": {
|
|
"from_secret": "registry-password"
|
|
},
|
|
"REGISTRY_PORT": {
|
|
"from_secret": "registry-port"
|
|
}
|
|
},
|
|
"image": "docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f",
|
|
"name": "drone/drone:2.4.0",
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"path": "/var/run"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"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 drone/drone-runner-docker:1.8.3@sha256:31d8534f559b26b76fb292eec957b852999a338cbd48284980cd483c04373f9a \\\\\n && docker tag drone/drone-runner-docker:1.8.3@sha256:31d8534f559b26b76fb292eec957b852999a338cbd48284980cd483c04373f9a $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone-runner-docker:1.8.3 \\\\\n && docker push $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone-runner-docker:1.8.3 && 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"
|
|
],
|
|
"environment": {
|
|
"REGISTRY_DOMAIN": {
|
|
"from_secret": "registry-domain"
|
|
},
|
|
"REGISTRY_PASSWORD": {
|
|
"from_secret": "registry-password"
|
|
},
|
|
"REGISTRY_PORT": {
|
|
"from_secret": "registry-port"
|
|
}
|
|
},
|
|
"image": "docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f",
|
|
"name": "drone/drone-runner-docker:1.8.3",
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"path": "/var/run"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"trigger": {
|
|
"event": [
|
|
"promote"
|
|
],
|
|
"target": [
|
|
"registry"
|
|
]
|
|
},
|
|
"type": "docker",
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"temp": { }
|
|
},
|
|
{
|
|
"host": {
|
|
"path": "/etc/docker/certs.d"
|
|
},
|
|
"name": "ca"
|
|
},
|
|
{
|
|
"host": {
|
|
"path": "/etc/docker/daemon.json"
|
|
},
|
|
"name": "daemonjson"
|
|
}
|
|
]
|
|
}
|
|
---
|
|
{
|
|
"clone": {
|
|
"disable": true
|
|
},
|
|
"kind": "pipeline",
|
|
"name": "save",
|
|
"steps": [
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "mkdir",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace"
|
|
],
|
|
"script": [
|
|
"mkdir -p /stack/.images/drone/built",
|
|
"rm -f /stack/.images/drone/*.*",
|
|
"rm -f /stack/.images/drone/built/*.*"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "drone/drone:2.4.0",
|
|
"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/drone/drone/drone:2.4.0",
|
|
"docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone:2.4.0 -o /stack/.images/drone/drone_drone:2.4.0.tar",
|
|
"echo \"docker load < drone_drone:2.4.0.tar\" >> /stack/.images/drone/load.sh",
|
|
"echo \"docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone:2.4.0 $${DESTINATION_REGISTRY}/stack/drone/drone/drone:2.4.0\" >> /stack/.images/drone/load.sh"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "drone/drone-runner-docker:1.8.3",
|
|
"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/drone/drone/drone-runner-docker:1.8.3",
|
|
"docker save $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone-runner-docker:1.8.3 -o /stack/.images/drone/drone_drone-runner-docker:1.8.3.tar",
|
|
"echo \"docker load < drone_drone-runner-docker:1.8.3.tar\" >> /stack/.images/drone/load.sh",
|
|
"echo \"docker tag $${REGISTRY_DOMAIN}:$${REGISTRY_PORT}/stack/drone/drone/drone-runner-docker:1.8.3 $${DESTINATION_REGISTRY}/stack/drone/drone/drone-runner-docker:1.8.3\" >> /stack/.images/drone/load.sh"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"trigger": {
|
|
"event": [
|
|
"promote"
|
|
],
|
|
"target": [
|
|
"save"
|
|
]
|
|
},
|
|
"type": "docker"
|
|
}
|
|
---
|
|
{
|
|
"clone": {
|
|
"depth": 0,
|
|
"disable": false
|
|
},
|
|
"kind": "pipeline",
|
|
"name": "print",
|
|
"steps": [
|
|
{
|
|
"environment": {
|
|
"DOMAIN": {
|
|
"from_secret": "domain"
|
|
},
|
|
"DRONE_GITEA_CLIENT_ID": {
|
|
"from_secret": "drone-gitea-client-id"
|
|
},
|
|
"DRONE_GITEA_CLIENT_SECRET": {
|
|
"from_secret": "drone-gitea-client-secret"
|
|
},
|
|
"DRONE_GITEA_SERVER": {
|
|
"from_secret": "drone-gitea-server"
|
|
},
|
|
"DRONE_RPC_SECRET": {
|
|
"from_secret": "drone-rpc-secret"
|
|
},
|
|
"DRONE_SERVER_HOST": {
|
|
"from_secret": "drone-server-host"
|
|
},
|
|
"REGISTRY_DOMAIN": {
|
|
"from_secret": "registry-domain"
|
|
},
|
|
"REGISTRY_PASSWORD": {
|
|
"from_secret": "registry-password"
|
|
},
|
|
"REGISTRY_PORT": {
|
|
"from_secret": "registry-port"
|
|
},
|
|
"SCHEME": {
|
|
"from_secret": "scheme"
|
|
},
|
|
"SSH_HOST": {
|
|
"from_secret": "ssh-host"
|
|
},
|
|
"SSH_KEY": {
|
|
"from_secret": "ssh-key"
|
|
},
|
|
"SSH_PORT": {
|
|
"from_secret": "ssh-port"
|
|
},
|
|
"SSH_USERNAME": {
|
|
"from_secret": "ssh-username"
|
|
}
|
|
},
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "print env",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace",
|
|
"scheme",
|
|
"domain",
|
|
"registry_domain",
|
|
"registry_port",
|
|
"drone_gitea_client_id",
|
|
"drone_gitea_server",
|
|
"drone_server_host",
|
|
"ssh_host",
|
|
"ssh_username",
|
|
"ssh_port",
|
|
"drone_gitea_client_secret",
|
|
"drone_rpc_secret",
|
|
"ssh_key",
|
|
"registry_password"
|
|
],
|
|
"script": [
|
|
"rm -f env-drone",
|
|
"echo \"export SCHEME='$${SCHEME}'\" >> env-drone # \"scheme\"",
|
|
"echo \"export DOMAIN='$${DOMAIN}'\" >> env-drone # \"domain\"",
|
|
"echo \"export REGISTRY_DOMAIN='$${REGISTRY_DOMAIN}'\" >> env-drone # \"registry-domain\"",
|
|
"echo \"export REGISTRY_PORT='$${REGISTRY_PORT}'\" >> env-drone # \"registry-port\"",
|
|
"echo \"export DRONE_GITEA_CLIENT_ID='$${DRONE_GITEA_CLIENT_ID}'\" >> env-drone # \"drone-gitea-client-id\"",
|
|
"echo \"export DRONE_GITEA_SERVER='$${DRONE_GITEA_SERVER}'\" >> env-drone # \"drone-gitea-server\"",
|
|
"echo \"export DRONE_SERVER_HOST='$${DRONE_SERVER_HOST}'\" >> env-drone # \"drone-server-host\"",
|
|
"echo \"export SSH_HOST='$${SSH_HOST}'\" >> env-drone # \"ssh-host\"",
|
|
"echo \"export SSH_USERNAME='$${SSH_USERNAME}'\" >> env-drone # \"ssh-username\"",
|
|
"echo \"export SSH_PORT='$${SSH_PORT}'\" >> env-drone # \"ssh-port\"",
|
|
"echo \"export DRONE_GITEA_CLIENT_SECRET='$${DRONE_GITEA_CLIENT_SECRET}'\" >> env-drone # \"drone-gitea-client-secret\"",
|
|
"echo \"export DRONE_RPC_SECRET='$${DRONE_RPC_SECRET}'\" >> env-drone # \"drone-rpc-secret\"",
|
|
"echo \"export SSH_KEY='$${SSH_KEY}'\" >> env-drone # \"ssh-key\"",
|
|
"echo \"export REGISTRY_PASSWORD='$${REGISTRY_PASSWORD}'\" >> env-drone # \"registry-password\""
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"trigger": {
|
|
"event": [
|
|
"promote"
|
|
],
|
|
"target": [
|
|
"print"
|
|
]
|
|
},
|
|
"type": "docker"
|
|
}
|
|
---
|
|
{
|
|
"clone": {
|
|
"depth": 0,
|
|
"disable": false
|
|
},
|
|
"kind": "pipeline",
|
|
"name": "build",
|
|
"services": [
|
|
{
|
|
"image": "docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f",
|
|
"name": "docker",
|
|
"privileged": true,
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"path": "/var/run"
|
|
},
|
|
{
|
|
"name": "ca",
|
|
"path": "/etc/docker/certs.d"
|
|
},
|
|
{
|
|
"name": "daemonjson",
|
|
"path": "/etc/docker/daemon.json"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"steps": [
|
|
{
|
|
"commands": [
|
|
"set -e",
|
|
"export NAME=drone",
|
|
"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",
|
|
"sh .drone/push.sh"
|
|
],
|
|
"environment": { },
|
|
"image": "docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f",
|
|
"name": "dockerbuild:",
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"path": "/var/run"
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"trigger": {
|
|
"event": [
|
|
"promote"
|
|
],
|
|
"target": [
|
|
"build"
|
|
]
|
|
},
|
|
"type": "docker",
|
|
"volumes": [
|
|
{
|
|
"name": "dockersock",
|
|
"temp": { }
|
|
},
|
|
{
|
|
"host": {
|
|
"path": "/etc/docker/certs.d"
|
|
},
|
|
"name": "ca"
|
|
},
|
|
{
|
|
"host": {
|
|
"path": "/etc/docker/daemon.json"
|
|
},
|
|
"name": "daemonjson"
|
|
}
|
|
]
|
|
}
|
|
---
|
|
{
|
|
"clone": {
|
|
"disable": true
|
|
},
|
|
"kind": "pipeline",
|
|
"name": "drone-images",
|
|
"steps": [
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "mkdir",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace"
|
|
],
|
|
"script": [
|
|
"mkdir -p /stack/.images/drone/drone-images",
|
|
"rm -f /stack/.images/drone/drone-images/*.*"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "docker",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace",
|
|
"registry_domain",
|
|
"registry_port",
|
|
"registry_password"
|
|
],
|
|
"script": [
|
|
"docker pull docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f",
|
|
"docker save docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f -o /stack/.images/drone/drone-images/docker.tar",
|
|
"echo \"docker load docker.tar\" >> /stack/.images/drone/drone-images/load.sh"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "scp",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace",
|
|
"registry_domain",
|
|
"registry_port",
|
|
"registry_password"
|
|
],
|
|
"script": [
|
|
"docker pull appleboy/drone-scp:1.6.2@sha256:bd37a55f4b97e7742b0de7333669b96220b3cc422d366e1fa8c34059b736ab47",
|
|
"docker save appleboy/drone-scp:1.6.2@sha256:bd37a55f4b97e7742b0de7333669b96220b3cc422d366e1fa8c34059b736ab47 -o /stack/.images/drone/drone-images/scp.tar",
|
|
"echo \"docker load scp.tar\" >> /stack/.images/drone/drone-images/load.sh"
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "ssh",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace",
|
|
"registry_domain",
|
|
"registry_port",
|
|
"registry_password"
|
|
],
|
|
"script": [
|
|
"docker pull appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"docker save appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea -o /stack/.images/drone/drone-images/ssh.tar",
|
|
"echo \"docker load ssh.tar\" >> /stack/.images/drone/drone-images/load.sh"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"trigger": {
|
|
"event": [
|
|
"promote"
|
|
],
|
|
"target": [
|
|
"drone-images"
|
|
]
|
|
},
|
|
"type": "docker"
|
|
}
|
|
---
|
|
{
|
|
"clone": {
|
|
"depth": 0,
|
|
"disable": false
|
|
},
|
|
"kind": "pipeline",
|
|
"name": "deploy",
|
|
"steps": [
|
|
{
|
|
"image": "appleboy/drone-scp:1.6.2@sha256:bd37a55f4b97e7742b0de7333669b96220b3cc422d366e1fa8c34059b736ab47",
|
|
"name": "scp",
|
|
"settings": {
|
|
"command_timeout": "2m",
|
|
"source": [
|
|
"."
|
|
],
|
|
"target": "/stack/drone"
|
|
}
|
|
},
|
|
{
|
|
"environment": {
|
|
"DOMAIN": {
|
|
"from_secret": "domain"
|
|
},
|
|
"DRONE_GITEA_CLIENT_ID": {
|
|
"from_secret": "drone-gitea-client-id"
|
|
},
|
|
"DRONE_GITEA_CLIENT_SECRET": {
|
|
"from_secret": "drone-gitea-client-secret"
|
|
},
|
|
"DRONE_GITEA_SERVER": {
|
|
"from_secret": "drone-gitea-server"
|
|
},
|
|
"DRONE_RPC_SECRET": {
|
|
"from_secret": "drone-rpc-secret"
|
|
},
|
|
"DRONE_SERVER_HOST": {
|
|
"from_secret": "drone-server-host"
|
|
},
|
|
"REGISTRY_DOMAIN": {
|
|
"from_secret": "registry-domain"
|
|
},
|
|
"REGISTRY_PASSWORD": {
|
|
"from_secret": "registry-password"
|
|
},
|
|
"REGISTRY_PORT": {
|
|
"from_secret": "registry-port"
|
|
},
|
|
"SCHEME": {
|
|
"from_secret": "scheme"
|
|
},
|
|
"SSH_HOST": {
|
|
"from_secret": "ssh-host"
|
|
},
|
|
"SSH_KEY": {
|
|
"from_secret": "ssh-key"
|
|
},
|
|
"SSH_PORT": {
|
|
"from_secret": "ssh-port"
|
|
},
|
|
"SSH_USERNAME": {
|
|
"from_secret": "ssh-username"
|
|
}
|
|
},
|
|
"image": "appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea",
|
|
"name": "deploy",
|
|
"settings": {
|
|
"envs": [
|
|
"drone_tag",
|
|
"drone_commit",
|
|
"drone_build_number",
|
|
"drone_repo_name",
|
|
"drone_repo_namespace",
|
|
"scheme",
|
|
"domain",
|
|
"registry_domain",
|
|
"registry_port",
|
|
"drone_gitea_client_id",
|
|
"drone_gitea_server",
|
|
"drone_server_host",
|
|
"ssh_host",
|
|
"ssh_username",
|
|
"ssh_port",
|
|
"drone_gitea_client_secret",
|
|
"drone_rpc_secret",
|
|
"ssh_key",
|
|
"registry_password",
|
|
"registry_domain",
|
|
"registry_port",
|
|
"registry_password",
|
|
"scheme"
|
|
],
|
|
"script": [
|
|
"export DRONE_GITEA_CLIENT_SECRET=$${DRONE_GITEA_CLIENT_SECRET}",
|
|
"export DRONE_RPC_SECRET=$${DRONE_RPC_SECRET}",
|
|
"export SSH_KEY=$${SSH_KEY}",
|
|
"export REGISTRY_PASSWORD=$${REGISTRY_PASSWORD}",
|
|
"export SCHEME=$${SCHEME}",
|
|
"export DOMAIN=$${DOMAIN}",
|
|
"export REGISTRY_DOMAIN=$${REGISTRY_DOMAIN}",
|
|
"export REGISTRY_PORT=$${REGISTRY_PORT}",
|
|
"export DRONE_GITEA_CLIENT_ID=$${DRONE_GITEA_CLIENT_ID}",
|
|
"export DRONE_GITEA_SERVER=$${DRONE_GITEA_SERVER}",
|
|
"export DRONE_SERVER_HOST=$${DRONE_SERVER_HOST}",
|
|
"export SSH_HOST=$${SSH_HOST}",
|
|
"export SSH_USERNAME=$${SSH_USERNAME}",
|
|
"export SSH_PORT=$${SSH_PORT}",
|
|
"export REGISTRY_DOMAIN=$${REGISTRY_DOMAIN}",
|
|
"export REGISTRY_PORT=$${REGISTRY_PORT}",
|
|
"export REGISTRY_PASSWORD=$${REGISTRY_PASSWORD}",
|
|
"export SCHEME=$${SCHEME}",
|
|
"set -e",
|
|
"export NAME=drone",
|
|
"export ROOT=stack",
|
|
"cd /stack/drone",
|
|
"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/pull.sh",
|
|
"sh .drone/deploy.sh"
|
|
]
|
|
}
|
|
}
|
|
],
|
|
"trigger": {
|
|
"event": [
|
|
"promote",
|
|
"promote"
|
|
],
|
|
"target": [
|
|
"deploy",
|
|
"production"
|
|
]
|
|
},
|
|
"type": "docker"
|
|
}
|