diff --git a/cuddle.yaml b/cuddle.yaml index b51aa6f..e2f08b3 100644 --- a/cuddle.yaml +++ b/cuddle.yaml @@ -9,3 +9,5 @@ scripts: type: shell run_release: type: shell + deploy_release: + type: shell diff --git a/scripts/deploy_release.sh b/scripts/deploy_release.sh new file mode 100755 index 0000000..bfe7739 --- /dev/null +++ b/scripts/deploy_release.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +set -e + +echo "deploying docker image" + +tag="$REGISTRY/$SERVICE:${COMMIT_SHA:0:10}" + +echo "pulling deployments repo" + +[ ! -d _deployments ] && echo "deployments could not be cloned aborting" && exit 1 + +git clone "$DEPLOYMENTS" _deployments + +mkdir -p "_deployments/$SERVICE" + +cp "$TMP/docker-compose.deploy_release.yml" "_deployments/$SERVICE/docker-compose.yml" + +cd _deployments + +git add . && git commit -m "Added release $SERVICE: ${COMMIT_SHA:0:10}" && git pull && git push diff --git a/templates/docker-compose.deploy_release.yml b/templates/docker-compose.deploy_release.yml new file mode 100644 index 0000000..b02167c --- /dev/null +++ b/templates/docker-compose.deploy_release.yml @@ -0,0 +1,17 @@ +version: '3.7' + +services: + {{.service}}: + image: {{.image}} + ports: + - {{.ports}} + env_file: ".env" + restart: always + depends_on: + - db + db: + image: postgres:13.5 + restart: always + env_file: ".env" + volumes: + - ./data/postgres:/var/lib/postgresql/data