From 9b7c0be73e146478d31ca5c791850831ea1c98de Mon Sep 17 00:00:00 2001 From: cfels Date: Thu, 16 Jul 2026 22:17:46 +0200 Subject: [PATCH] add akkoma's (bash scripts i use) --- alpine/akkoma/scripts/down.sh | 6 ++++++ alpine/akkoma/scripts/isitup.sh | 27 +++++++++++++++++++++++++++ alpine/akkoma/scripts/reload-conf.sh | 8 ++++++++ alpine/akkoma/scripts/up.sh | 9 +++++++++ alpine/akkoma/scripts/update.sh | 26 ++++++++++++++++++++++++++ 5 files changed, 76 insertions(+) create mode 100755 alpine/akkoma/scripts/down.sh create mode 100755 alpine/akkoma/scripts/isitup.sh create mode 100755 alpine/akkoma/scripts/reload-conf.sh create mode 100755 alpine/akkoma/scripts/up.sh create mode 100755 alpine/akkoma/scripts/update.sh diff --git a/alpine/akkoma/scripts/down.sh b/alpine/akkoma/scripts/down.sh new file mode 100755 index 0000000..a76d4eb --- /dev/null +++ b/alpine/akkoma/scripts/down.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -e +cd "$(dirname "$0")" + +echo "stop akkoma..." +docker compose down diff --git a/alpine/akkoma/scripts/isitup.sh b/alpine/akkoma/scripts/isitup.sh new file mode 100755 index 0000000..8607d61 --- /dev/null +++ b/alpine/akkoma/scripts/isitup.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +set -e + +URL="http://127.0.0.1:4000" +TIMEOUT=120 +INTERVAL=2 +ELAPSED=0 + +echo "waiting for akkoma to return 200; $URL ..." + +while true; do + CODE=$(curl -s -o /dev/null -w "%{http_code}" "$URL" || echo "000") + + if [ "$CODE" = "200" ]; then + echo "akkoma is up (HTTP $CODE) after ${ELAPSED}s" + exit 0 + fi + + if [ "$ELAPSED" -ge "$TIMEOUT" ]; then + echo "timed out ${TIMEOUT}, status: $CODE)" + exit 1 + fi + + echo " [$ELAPSED s] not ready yet, status: $CODE) ..." + sleep "$INTERVAL" + ELAPSED=$((ELAPSED + INTERVAL)) +done diff --git a/alpine/akkoma/scripts/reload-conf.sh b/alpine/akkoma/scripts/reload-conf.sh new file mode 100755 index 0000000..a0b7c80 --- /dev/null +++ b/alpine/akkoma/scripts/reload-conf.sh @@ -0,0 +1,8 @@ +#!/bin/bash +set -e +cd "$(dirname "$0")" + +echo "reloading confs..." +docker compose restart akkoma +sleep 3 +docker compose logs --tail 30 akkoma diff --git a/alpine/akkoma/scripts/up.sh b/alpine/akkoma/scripts/up.sh new file mode 100755 index 0000000..008a4f2 --- /dev/null +++ b/alpine/akkoma/scripts/up.sh @@ -0,0 +1,9 @@ +#!/usr/bin/env bash + +set -e + +cd "$(dirname "$0")" +echo "start akkoma..." +docker compose up -d +sleep 3 +docker compose ps diff --git a/alpine/akkoma/scripts/update.sh b/alpine/akkoma/scripts/update.sh new file mode 100755 index 0000000..8d4d3b7 --- /dev/null +++ b/alpine/akkoma/scripts/update.sh @@ -0,0 +1,26 @@ +#!/bin/bash +set -e +cd "$(dirname "$0")" + +echo "fetch latest..." +git fetch origin stable +git checkout stable +git pull origin stable + +echo "rebuild imgs..." +docker compose build akkoma + +echo "get new deps..." +docker compose run --rm akkoma mix deps.get + +echo "compile..." +docker compose run --rm akkoma mix compile + +echo "migrate..." +docker compose run --rm akkoma mix ecto.migrate + +echo "restart..." +docker compose up -d + +echo "done!" +docker compose ps