From 94e7d7fa5b92e7300b2e78a5243759b932d79a40 Mon Sep 17 00:00:00 2001 From: Giles Bradshaw Date: Fri, 28 Aug 2020 13:17:20 +0100 Subject: [PATCH] . --- .drone-home.star | 16 ----- .drone/drone-home.jsonnet | 8 ++- .drone/drone-home.yml | 92 +++++++++++------------------ .drone/lib/public-secrets.libsonnet | 2 +- .drone/package.json | 2 +- .drone/yarn.lock | 8 +-- docker-compose.yml | 2 +- 7 files changed, 46 insertions(+), 84 deletions(-) delete mode 100644 .drone-home.star diff --git a/.drone-home.star b/.drone-home.star deleted file mode 100644 index 04ca74d..0000000 --- a/.drone-home.star +++ /dev/null @@ -1,16 +0,0 @@ - -load("@this//chat:drone.star", "drone") -load("@this//chat:stack-name.star", "stackName") -load("@this//chat:stack-root.star", "stackRoot") - -def main(ctx): - return drone( - ctx, - "home-deploy", - stackRoot, - stackName, - [ - "docker service scale {name}_chat=1".format(name=stackName), - ] - ) - \ No newline at end of file diff --git a/.drone/drone-home.jsonnet b/.drone/drone-home.jsonnet index 957a45f..9f8e14a 100644 --- a/.drone/drone-home.jsonnet +++ b/.drone/drone-home.jsonnet @@ -9,12 +9,14 @@ local register = import 'node_modules/@sigyl/jsonnet-drone/register.libsonnet'; deploy( 'chat', '/stack/', + [], + publicSecrets, + secretSecrets, [ - 'LOCAL_DOCKER_REGISTRY', + 'REGISTRY_DOMAIN', + 'REGISTRY_PORT', 'REGISTRY_PASSWORD', ], - publicSecrets, - secretSecrets ) { trigger +: { event +: [ diff --git a/.drone/drone-home.yml b/.drone/drone-home.yml index 4a42d39..df30f11 100644 --- a/.drone/drone-home.yml +++ b/.drone/drone-home.yml @@ -26,7 +26,7 @@ platform: steps: - name: print env - image: appleboy/drone-ssh:1.6.2 + image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea settings: envs: - drone_tag @@ -34,28 +34,21 @@ steps: - drone_build_number - drone_repo_name - drone_repo_namespace - - local_docker_registry - - registry_password - - git_domain + - domain - chat_admin_name - chat_admin_email - chat_admin_password - host: - from_secret: ssh-host - key: - from_secret: ssh-key - port: - from_secret: ssh-port + host: ${SSH_HOST} + key: ${SSH_KEY} + passphrase: ${SSH_PASSPHRASE} + port: ${SSH_PORT} script: - rm -f env-chat - - "echo \"export LOCAL_DOCKER_REGISTRY='$${LOCAL_DOCKER_REGISTRY}'\" >> env-chat # \"local-docker-registry\"" - - "echo \"export REGISTRY_PASSWORD='$${REGISTRY_PASSWORD}'\" >> env-chat # \"registry-password\"" - - "echo \"export GIT_DOMAIN='$${GIT_DOMAIN}'\" >> env-chat # \"git-domain\"" + - "echo \"export DOMAIN='$${DOMAIN}'\" >> env-chat # \"domain\"" - "echo \"export CHAT_ADMIN_NAME='$${CHAT_ADMIN_NAME}'\" >> env-chat # \"chat-admin-name\"" - "echo \"export CHAT_ADMIN_EMAIL='$${CHAT_ADMIN_EMAIL}'\" >> env-chat # \"chat-admin-email\"" - "echo \"export CHAT_ADMIN_PASSWORD='$${CHAT_ADMIN_PASSWORD}'\" >> env-chat # \"chat-admin-password\"" - username: - from_secret: ssh-user + username: ${SSH_USER} environment: CHAT_ADMIN_EMAIL: from_secret: chat-admin-email @@ -63,53 +56,41 @@ steps: from_secret: chat-admin-name CHAT_ADMIN_PASSWORD: from_secret: chat-admin-password - GIT_DOMAIN: - from_secret: git-domain - LOCAL_DOCKER_REGISTRY: - from_secret: local-docker-registry - REGISTRY_PASSWORD: - from_secret: registry-password + DOMAIN: + from_secret: domain - name: scp - image: appleboy/drone-scp:1.6.2 + image: appleboy/drone-scp:1.6.2@sha256:bd37a55f4b97e7742b0de7333669b96220b3cc422d366e1fa8c34059b736ab47 settings: command_timeout: 2m - host: - from_secret: ssh-host - key: - from_secret: ssh-key - port: - from_secret: ssh-port + host: ${SSH_HOST} + key: ${SSH_KEY} + passphrase: ${SSH_PASSPHRASE} + port: ${SSH_PORT} source: - . target: /stack/chat - username: - from_secret: ssh-user + username: ${SSH_USER} - name: wait - image: alpine + image: alpine:3.12.0@sha256:90baa0922fe90624b05cb5766fa5da4e337921656c2f8e2b13bd3c052a0baac1 commands: - sleep 15 - name: "dockerbuild:" - image: docker:dind + image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f commands: - set -e - sh .drone/login.sh - sh .drone/build.sh - sh .drone/push.sh - sh .drone/logout.sh - environment: - LOCAL_DOCKER_REGISTRY: - from_secret: local-docker-registry - REGISTRY_PASSWORD: - from_secret: registry-password volumes: - name: dockersock path: /var/run - name: deploy - image: appleboy/drone-ssh:1.6.2 + image: appleboy/drone-ssh:1.6.2@sha256:b801dc2cd238c192b6e99acfa7bc3f5b9a03f312bd2feb1e10b3a7a28a1b80ea settings: envs: - drone_tag @@ -117,32 +98,31 @@ steps: - drone_build_number - drone_repo_name - drone_repo_namespace - - git_domain + - registry_domain + - registry_port + - registry_password + - domain - chat_admin_name - chat_admin_email - chat_admin_password - - local_docker_registry - - registry_password - host: - from_secret: ssh-host - key: - from_secret: ssh-key - port: - from_secret: ssh-port + host: ${SSH_HOST} + key: ${SSH_KEY} + passphrase: ${SSH_PASSPHRASE} + port: ${SSH_PORT} script: - export CHAT_ADMIN_PASSWORD=$${CHAT_ADMIN_PASSWORD} - - export GIT_DOMAIN=$${GIT_DOMAIN} + - export DOMAIN=$${DOMAIN} - export CHAT_ADMIN_NAME=$${CHAT_ADMIN_NAME} - export CHAT_ADMIN_EMAIL=$${CHAT_ADMIN_EMAIL} - - export LOCAL_DOCKER_REGISTRY=$${LOCAL_DOCKER_REGISTRY} + - export REGISTRY_DOMAIN=$${REGISTRY_DOMAIN} + - export REGISTRY_PORT=$${REGISTRY_PORT} - export REGISTRY_PASSWORD=$${REGISTRY_PASSWORD} - set -e - cd /stack/chat - sh .drone/login.sh - sh .drone/pull.sh - sh .drone/deploy.sh - username: - from_secret: ssh-user + username: ${SSH_USER} environment: CHAT_ADMIN_EMAIL: from_secret: chat-admin-email @@ -150,16 +130,12 @@ steps: from_secret: chat-admin-name CHAT_ADMIN_PASSWORD: from_secret: chat-admin-password - GIT_DOMAIN: - from_secret: git-domain - LOCAL_DOCKER_REGISTRY: - from_secret: local-docker-registry - REGISTRY_PASSWORD: - from_secret: registry-password + DOMAIN: + from_secret: domain services: - name: docker - image: docker:dind + image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f privileged: true volumes: - name: dockersock diff --git a/.drone/lib/public-secrets.libsonnet b/.drone/lib/public-secrets.libsonnet index b417319..ce7f533 100644 --- a/.drone/lib/public-secrets.libsonnet +++ b/.drone/lib/public-secrets.libsonnet @@ -1,5 +1,5 @@ [ - 'git-domain', + 'domain', 'chat-admin-name', 'chat-admin-email', ] diff --git a/.drone/package.json b/.drone/package.json index 2609cd8..22cfdd2 100644 --- a/.drone/package.json +++ b/.drone/package.json @@ -4,6 +4,6 @@ "build": "drone jsonnet --source drone-home.jsonnet --target drone-home.yml --stream" }, "dependencies": { - "@sigyl/jsonnet-drone": "^0.0.8" + "@sigyl/jsonnet-drone": "^0.1.0" } } diff --git a/.drone/yarn.lock b/.drone/yarn.lock index d1aa19a..44ab354 100644 --- a/.drone/yarn.lock +++ b/.drone/yarn.lock @@ -12,10 +12,10 @@ resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone-environment/-/jsonnet-drone-environment-0.0.5.tgz#9ea85e08904777bd21a3e4b30b0b91461d0285ff" integrity sha512-xVGmdMO1pOyozAWUbJm6mzKBgsLPJ+1hWnGCK3AxPkr7kkDh18hu30+TLzlcQtqq76s5jUfvJUztezsGj/mIcw== -"@sigyl/jsonnet-drone@^0.0.8": - version "0.0.8" - resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone/-/jsonnet-drone-0.0.8.tgz#f928e6784bccf1abb82afed3cab6e435c62d2e93" - integrity sha512-BuFVawb7z3aUYqHCBqykgALjF07crnN2H7+WLo8crH3vT7FPMLbYdoTv7N98P8OhZBKv6KvBQep6uZK3Reho5g== +"@sigyl/jsonnet-drone@^0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@sigyl/jsonnet-drone/-/jsonnet-drone-0.1.0.tgz#feda1797e8e9ef799cad72e65f7163ca26a9e3a5" + integrity sha512-QY/ngucxFOtLfL8Mt0f2bxN4fQDUOGOFtaRpSH2cNyg84xADkzehT0ORZtbLitr+AwhyF5KN/zAGvzkyNAoqPw== dependencies: "@sigyl/jsonnet-compose" "^0.0.2" "@sigyl/jsonnet-drone-environment" "0.0.5" diff --git a/docker-compose.yml b/docker-compose.yml index 52c18bb..340f2dc 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -13,7 +13,7 @@ services: - externalnet environment: - MONGO_OPLOG_URL=mongodb://chat-mongo:27017/local - - ROOT_URL=https://${GIT_DOMAIN}/chat + - ROOT_URL=https://${DOMAIN}/chat - PORT=3000 - MONGO_URL=mongodb://chat-mongo:27017/rocketchat - ADMIN_USERNAME=${CHAT_ADMIN_NAME}