diff options
-rw-r--r-- | acid/config.sh | 4 | ||||
-rwxr-xr-x | acid/cyche-build | 21 | ||||
-rwxr-xr-x | acid/cychedelic | 6 |
3 files changed, 16 insertions, 15 deletions
diff --git a/acid/config.sh b/acid/config.sh index d3dcee6..ee6b5cc 100644 --- a/acid/config.sh +++ b/acid/config.sh @@ -26,6 +26,6 @@ CYCHE_SERVICES=( # in the list. As just mentioned, it can be named anything, but "cychedelic" # is conventional. - # <name> <url> <ref-pattern> - 'cychedelic https://your/cyche/source.git refs/remotes/origin/master' + # <name> <url> <ref-pattern> <compose-file> + 'cychedelic https://your/cyche/source.git refs/remotes/origin/master docker-compose.yml' ) diff --git a/acid/cyche-build b/acid/cyche-build index f37c22b..8363f60 100755 --- a/acid/cyche-build +++ b/acid/cyche-build @@ -1,8 +1,9 @@ #!/bin/bash -e -# cyche-build <name> <hash> [--self] +# cyche-build <name> <file> <hash> [--self] # -# (Re)build and deploy docker services using the files associated with <name>. +# (Re)build and deploy the service <name> using the docker-compose configuration +# in <file> (usually, docker-compose.yml). # # In the typical case, this is a straightforward process and `docker compose up` # can properly recreate/start containers for the guest service. However, when @@ -24,7 +25,7 @@ cd "/services/$1" -if [ "$3" == "--self" ]; then +if [ "$4" == "--self" ]; then prev=$(cat '.git/previous_slug') [ -n "$prev" ] && prev="--project-name $prev" @@ -32,20 +33,20 @@ if [ "$3" == "--self" ]; then next="--project-name $slug" fi -docker compose $next pull -docker compose $next build \ +docker compose $next --file "$2" pull +docker compose $next --file "$2" build \ --force-rm \ --no-cache \ --pull -docker compose $next up \ +docker compose $next --file "$2" up \ --detach \ --remove-orphans \ --force-recreate -echo "$2" >.git/previous_hash +echo "$3" >.git/previous_hash -if [ "$3" == "--self" ]; then +if [ "$4" == "--self" ]; then echo "$slug" >.git/previous_slug - docker compose down - docker compose $prev down + docker compose --file "$2" down + docker compose $prev --file "$2" down fi diff --git a/acid/cychedelic b/acid/cychedelic index 002fb98..4e26b99 100755 --- a/acid/cychedelic +++ b/acid/cychedelic @@ -21,11 +21,11 @@ update() { selfopt="--self" for line in "${CYCHE_SERVICES[@]}"; do - hash=$(cyche-source $line) + read -r -a arr <<< "$line" + hash=$(cyche-source ${arr[@]:0:3}) if [ $? -ne 0 ] || [ "$1" == "$forceopt" ]; then - read -r -a arr <<< "$line" - cyche-build "${arr[0]}" "$hash" $selfopt + cyche-build "${arr[0]}" "${arr[3]}" "$hash" $selfopt fi forceopt="--force" |