From bab9236a00ba7cb75f25aa048ffbdf71ad20bf4a Mon Sep 17 00:00:00 2001 From: Giles Bradshaw Date: Mon, 27 Apr 2020 22:06:32 +0100 Subject: [PATCH] . --- .drone-remote.star | 3 ++- drone-starlark/repos/deploy-2.star | 35 ++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 drone-starlark/repos/deploy-2.star diff --git a/.drone-remote.star b/.drone-remote.star index 2209c54..9e84f03 100644 --- a/.drone-remote.star +++ b/.drone-remote.star @@ -12,7 +12,7 @@ load("@this//:scp.star", "scp") load("@this//:public-secrets.star", "publicSecrets") load("@this//:secret-secrets.star", "secretSecrets") load("@this//:pull.star", "pull") -load("@this//:deploy.star", "deploy") +load("@this//:deploy-2.star", "deploy") load("@this//:build-folder.star", "buildFolder") load("@this//:build-docker-folder.star", "buildDockerFolder") load("@this//:pipeline.star", "pipeline") @@ -56,6 +56,7 @@ def main(ctx): ]), deploy( "docker-compose-remote.yml", + "remote-drone", "/home/giles/gitea-drone-stack", ), ], diff --git a/drone-starlark/repos/deploy-2.star b/drone-starlark/repos/deploy-2.star new file mode 100644 index 0000000..3286f54 --- /dev/null +++ b/drone-starlark/repos/deploy-2.star @@ -0,0 +1,35 @@ +load("@this//:from-secret.star", "fromSecret") +load("@this//:map.star", "map") +load("@this//:environment.star", "environment") +load("@this//:export.star", "export") +load("@this//:public-secrets.star", "publicSecrets") +load("@this//:secret-secrets.star", "secretSecrets") + +def deploy( + filename, + name, + folder, +): + return { + "name": "deploy", + "image": "appleboy/drone-ssh", + "environment": environment(publicSecrets + secretSecrets), + "settings": { + "envs": [x.replace("-", "_") for x in publicSecrets + secretSecrets ], + "host": fromSecret("ssh-host"), + "port": fromSecret("ssh-port"), + "username": fromSecret("ssh-root-user"), + "password": fromSecret("ssh-root-password"), + "script": [ + "set -e" + ] + + map(export, publicSecrets + secretSecrets) + + [ + "docker network prune -f", + "cd {folder}".format(folder=folder), + "docker stack rm {name}".format(name = name), + "sleep 30", + "docker stack deploy -c {filename} {name}".format(name= name, filename = filename), + ] + } + }