diff --git a/.helpers/deploy.sh b/.helpers/deploy.sh new file mode 100644 index 0000000..43badc5 --- /dev/null +++ b/.helpers/deploy.sh @@ -0,0 +1,11 @@ +#!/usr/bin/env bash + +set -o errexit +set -o nounset +set -o pipefail + +SERVICE=$1 + +export $(cat ./config/flow-platform-services.cfg | grep DOCKER_HOST | tr -d "\"") + +docker compose --project-directory ./build/compose up -d --build "${SERVICE}" diff --git a/.helpers/render.sh b/.helpers/render.sh index 70570bc..9e9c753 100644 --- a/.helpers/render.sh +++ b/.helpers/render.sh @@ -4,12 +4,12 @@ set -o errexit set -o nounset set -o pipefail -directory=$1 +SERVICE=$1 export $(xargs < ./config/flow-platform-services.cfg) -mkdir -p build/${directory} +mkdir -p build/${SERVICE} -for i in $(find "./templates/${directory}" -mindepth 1 -type f); do +for i in $(find "./templates/${SERVICE}" -mindepth 1 -type f); do file=$(basename ${i}) - envsubst < "./templates/${directory}/${file}" > "./build/${directory}/${file}" + envsubst < "./templates/${SERVICE}/${file}" > "./build/${SERVICE}/${file}" done diff --git a/Makefile b/Makefile index 83c2076..dfa210d 100644 --- a/Makefile +++ b/Makefile @@ -1,16 +1,23 @@ -all: traefik-files forgejo-files gotosocial-files - compose: bash ./.helpers/render.sh compose traefik-files: compose bash ./.helpers/render.sh traefik -forgejo-files: forgejo-binary compose - bash ./.helpers/render.sh forgejo +traefik: traefik-files + bash ./.helpers/deploy.sh traefik forgejo-binary: bash ./.helpers/download-forgejo.sh +forgejo-files: forgejo-binary compose + bash ./.helpers/render.sh forgejo + +forgejo: forgejo-files + bash ./.helpers/deploy.sh forgejo + gotosocial-files: compose bash ./.helpers/render.sh gotosocial + +gotosocial: gotosocial-files + bash ./.helpers/deploy.sh gotosocial