From 2a8a33d28267f84e947834c1374a5e413f6d760e Mon Sep 17 00:00:00 2001 From: Elizabeth Hunt Date: Thu, 1 May 2025 23:10:56 -0700 Subject: Experiment with hooks. --- .../roles/src/templates/stacks/docker-compose.yml | 9 +++--- .../roles/src/templates/volumes/data/hooks/update | 37 ++++++++++++++++++++++ 2 files changed, 41 insertions(+), 5 deletions(-) create mode 100755 playbooks/roles/src/templates/volumes/data/hooks/update diff --git a/playbooks/roles/src/templates/stacks/docker-compose.yml b/playbooks/roles/src/templates/stacks/docker-compose.yml index 344dfc5..46f253d 100644 --- a/playbooks/roles/src/templates/stacks/docker-compose.yml +++ b/playbooks/roles/src/templates/stacks/docker-compose.yml @@ -20,19 +20,18 @@ services: networks: - proxy healthcheck: - test: ["CMD-SHELL", "echo hi"] # todo: something more meaningful + test: ["CMD-SHELL", "netstat -tuln | grep 2222"] timeout: 15s interval: 30s retries: 3 - start_period: 10s + start_period: 5s deploy: mode: replicated update_config: parallelism: 1 failure_action: rollback - order: start-first - delay: 10s - monitor: 45s + order: stop-first + monitor: 10s replicas: 1 labels: - traefik.enable=true diff --git a/playbooks/roles/src/templates/volumes/data/hooks/update b/playbooks/roles/src/templates/volumes/data/hooks/update new file mode 100755 index 0000000..a11d3e5 --- /dev/null +++ b/playbooks/roles/src/templates/volumes/data/hooks/update @@ -0,0 +1,37 @@ +#!/bin/sh +# + +refname="$1" +oldrev="$2" +newrev="$3" + +# Safety check +if [ -z "$GIT_DIR" ]; then + echo "Don't run this script from the command line." >&2 + echo " (if you want, you could supply GIT_DIR then run" >&2 + echo " $0 )" >&2 + exit 1 +fi + +if [ -z "$refname" -o -z "$oldrev" -o -z "$newrev" ]; then + echo "usage: $0 " >&2 + exit 1 +fi + +# Check types +# if $newrev is 0000...0000, it's a commit to delete a ref. +zero=$(git hash-object --stdin