diff --git a/.drone.star b/.drone.star index 0df210e..2c37deb 100644 --- a/.drone.star +++ b/.drone.star @@ -94,4 +94,80 @@ def main(ctx): [], ), ] + if ctx.build.branch == 'do': + return [ + pipeline( + 'do', + [ + printSecrets( + "env-stack", + publicSecrets, + secretSecrets, + ), + wait(15, "wait"), + build("guacamole-postgresql"), + build("ngrok-gitea"), + build("letsencrypt-nginx"), + build("drone-starlark"), + buildDockerFolder( + "Dockerfile.home", + "nginx:latest", + "$${LOCAL_DOCKER_REGISTRY}home", + "letsencrypt-nginx", + "home", + ), + + buildDockerFolder( + "Dockerfile.blog", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-nginx", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-blog", + "letsencrypt-nginx", + "blog", + ), + buildDockerFolder( + "Dockerfile.drone", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-nginx", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-drone", + "letsencrypt-nginx", + "drone", + ), + buildDockerFolder( + "Dockerfile.git", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-nginx", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-git", + "letsencrypt-nginx", + "git", + ), + buildDockerFolder( + "Dockerfile.remote", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-nginx", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-remote", + "letsencrypt-nginx", + "remote", + ), + buildDockerFolder( + "Dockerfile.chat", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-nginx", + "$${LOCAL_DOCKER_REGISTRY}letsencrypt-chat", + "letsencrypt-nginx", + "chat", + ), + scp("~/gitea-drone-stack"), + pull([ + "letsencrypt-git", + "letsencrypt-chat", + "letsencrypt-drone", + "letsencrypt-remote", + "letsencrypt-blog", + "home", + "drone-starlark", + ]), + deploy( + "docker-compose-home.yml", + "/home/giles/gitea-drone-stack", + ), + ], + [], + ), + ] \ No newline at end of file diff --git a/drone-starlark/repos/clear.star b/drone-starlark/repos/clear.star new file mode 100644 index 0000000..bc9032b --- /dev/null +++ b/drone-starlark/repos/clear.star @@ -0,0 +1,16 @@ +("@this//:from-secret.star", "fromSecret") + +def clear(folder): + return { + "name": "clear", + "image": "appleboy/drone-ssh", + "settings": { + "host": fromSecret("ssh-host"), + "port": fromSecret("ssh-port"), + "username": fromSecret("ssh-user"), + "password": fromSecret("ssh-password"), + "script": [ + "rm -r -f {folder}".format(folder = folder), + ] + } + }