ci: use the container-structure-test image instead of a pinned download

The pinned release URL returned 404. test/run.sh already falls back to the
official tool image when the binary is absent, so CI and local runs now take
the same path.

Also pin *.txt to LF and make the required-features lookup tolerate CRLF, so
the feature gate works on a Windows checkout too.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

Agent-Id: agent-7034f75b-1ddc-4aa1-a4ea-3a54b340e8d9
This commit is contained in:
Tobias KaupatandClaude Opus 5 committed 2026-10-17 22:50:15 +02:00
1 parent 10b197f1f5
commit 9f1c80951d
3 files changed
+5 -7

No files matched your search

+1
View File
@@ -5,3 +5,4 @@
*.sh text eol=lf
Dockerfile text eol=lf
*.yml text eol=lf
*.txt text eol=lf
+2 -6
View File
@@ -39,12 +39,8 @@ jobs:
- name: Build test image
run: docker build -t restic-backup-docker:test .
- name: Install container-structure-test
run: |
curl -fsSL -o /usr/local/bin/container-structure-test \
https://storage.googleapis.com/container-structure-test/v1.19.3/container-structure-test-linux-amd64
chmod +x /usr/local/bin/container-structure-test
# container-structure-test is not installed: test/run.sh falls back to
# the official tool image, which keeps CI and local runs identical.
- name: Run test suites
run: bash test/run.sh --no-build
+2 -1
View File
@@ -190,7 +190,8 @@ REQUIRED_FEATURES_FILE="${REQUIRED_FEATURES_FILE:-$(dirname "${BASH_SOURCE[0]}")
feature_is_required() {
local feature="$1"
[ -f "$REQUIRED_FEATURES_FILE" ] || return 1
grep -v '^[[:space:]]*#' "$REQUIRED_FEATURES_FILE" 2>/dev/null \
tr -d '\r' < "$REQUIRED_FEATURES_FILE" \
| grep -v '^[[:space:]]*#' \
| grep -qx "[[:space:]]*${feature}[[:space:]]*"
}