anubis: repin the image ref to the lowercase ghcr path
podman's reference parser rejects mixed-case repository refs before any
network I/O ('repository name must be uppercase'); upstream's own install
docs pull lowercase (ghcr resolves case-insensitively). The first deploy
of this chain exit-2'd on that parse error — the image was not yet
pulled, so the guarded vhosts 502 until this deploy lands.
This commit is contained in:
1 parent
761b70002b
commit
91532a3805
3 files changed
+5
-5
No files matched your search
@@ -11,7 +11,7 @@
|
|||||||
# per-vhost routing — including Authentik forward_auth — resumes. Host headers
|
# per-vhost routing — including Authentik forward_auth — resumes. Host headers
|
||||||
# survive both hops, so vhost matching on the internal listener still works.
|
# survive both hops, so vhost matching on the internal listener still works.
|
||||||
#
|
#
|
||||||
# Version pin: ghcr.io/TecharoHQ/anubis:v1.13.0 was source-verified before
|
# Version pin: ghcr.io/techaroq/anubis:v1.13.0 was source-verified before
|
||||||
# pinning (policy parser is JSON-only at this tag, flags are the config
|
# pinning (policy parser is JSON-only at this tag, flags are the config
|
||||||
# surface via flagenv: an env var named TARGET sets --target, POLICY_FNAME
|
# surface via flagenv: an env var named TARGET sets --target, POLICY_FNAME
|
||||||
# sets --policy-fname). Upgrading = stop unit, change Image=, deploy; policy
|
# sets --policy-fname). Upgrading = stop unit, change Image=, deploy; policy
|
||||||
@@ -28,7 +28,7 @@ Wants=network-online.target
|
|||||||
|
|
||||||
[Container]
|
[Container]
|
||||||
ContainerName=anubis
|
ContainerName=anubis
|
||||||
Image=ghcr.io/TecharoHQ/anubis:v1.13.0
|
Image=ghcr.io/techaroq/anubis:v1.13.0
|
||||||
Pull=never
|
Pull=never
|
||||||
Network=dankclaw_default
|
Network=dankclaw_default
|
||||||
# flagenv maps env names to flag names (TARGET -> --target, POLICY_FNAME ->
|
# flagenv maps env names to flag names (TARGET -> --target, POLICY_FNAME ->
|
||||||
|
|||||||
@@ -554,8 +554,8 @@ deploy_anubis() {
|
|||||||
# Anubis is the bot-challenge proxy in front of the guarded vhosts.
|
# Anubis is the bot-challenge proxy in front of the guarded vhosts.
|
||||||
# The image lives on ghcr.io; pull once, then the unit runs it from
|
# The image lives on ghcr.io; pull once, then the unit runs it from
|
||||||
# local storage (Pull=never keeps boots off the registry).
|
# local storage (Pull=never keeps boots off the registry).
|
||||||
if ! podman image inspect ghcr.io/TecharoHQ/anubis:v1.13.0 >/dev/null 2>&1; then
|
if ! podman image inspect ghcr.io/techaroq/anubis:v1.13.0 >/dev/null 2>&1; then
|
||||||
podman pull ghcr.io/TecharoHQ/anubis:v1.13.0
|
podman pull ghcr.io/techaroq/anubis:v1.13.0
|
||||||
fi
|
fi
|
||||||
cp "dankclaw/anubis/quadlet/anubis.container" "$quadlet_unit_dir/"
|
cp "dankclaw/anubis/quadlet/anubis.container" "$quadlet_unit_dir/"
|
||||||
systemctl --user daemon-reload
|
systemctl --user daemon-reload
|
||||||
|
|||||||
+1
-1
@@ -23,7 +23,7 @@ setup() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@test "the image is pinned to an exact upstream tag and never pulled at boot" {
|
@test "the image is pinned to an exact upstream tag and never pulled at boot" {
|
||||||
grep -qE '^Image=ghcr\.io/TecharoHQ/anubis:v[0-9]+\.[0-9]+\.[0-9]+$' "$UNIT"
|
grep -qE '^Image=ghcr\.io/techaroq/anubis:v[0-9]+\.[0-9]+\.[0-9]+$' "$UNIT"
|
||||||
grep -q '^Pull=never$' "$UNIT"
|
grep -q '^Pull=never$' "$UNIT"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user