Commit Graph
10 Commits
Author SHA1 Message Date
Tobias KaupatandClaude Opus 5 10b197f1f5 test: add container test suites and run them in CI
The repository had no tests: CI only built the image, and the old
container-structure-test setup was parked as config-broken.yml /
docker-compose.test.broken.yml. This adds suites that actually run the image.

- test/compat.sh: backup, restore, forget, check, hooks, failure handling and
  timezone behaviour against the default configuration. These describe what
  users depend on today, so a change that turns them red is a breaking change.
- test/features.sh: optional features, each guarded by a detection check
  against the built image. Absent features are reported as SKIP, so open pull
  requests do not turn master red, and their feature tests start running by
  themselves once the pull request is rebased. Covers #109 (RESTIC_STREAM),
  #99 (docker cli, bash) and #84 (msmtp).
- test/required-features.txt: once a feature is merged its gate is listed here
  and a missing feature becomes a failure instead of a skip.
- test/structure.yml: revived image layout checks, falls back to the official
  container-structure-test image when the tool is not installed.
- test/run.sh --sabotage: breaks the backup call on a throwaway copy of the
  tree and expects the suite to fail, so the tests cannot be watered down into
  always passing. CI runs this as its own step.
- .github/workflows/test.yml: shellcheck plus all suites on every pull request.

Also adds .gitattributes pinning shell scripts, the Dockerfile and YAML to LF.
With a Windows checkout (core.autocrlf=true) the scripts were checked out with
CRLF, and the resulting image failed to start with
"exec /entry.sh: no such file or directory".

No runtime file is touched, the image itself is unchanged.

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

Agent-Id: agent-7034f75b-1ddc-4aa1-a4ea-3a54b340e8d9
2026-10-17 22:47:26 +02:00
Max Konrädi 47d29529e9 chore: Changelog 2025-08-13 15:19:14 +02:00
Max Konrädi 901cd5487f chore: Changelog 2025-08-13 14:58:23 +02:00
Max Konrädi 50e6fdbdf2 chore: Update CHANGELOG.md
v1.4.0
2025-04-23 15:04:50 +02:00
Marcio Zimbres 9b829f90e0 Change Action to add multi-platform image build 2023-12-07 19:25:36 -03:00
Marcio Zimbres bf2dabd2c7 Added option to set the target folder backup 2023-12-07 14:02:36 -03:00
Tobias Kaupat 47b30e90b1 Update CHANGELOG.md 2023-08-06 00:00:45 +02:00
Tobias Kaupat 1d222b9798 Update CHANGELOG.md
fix typos
2023-08-05 23:08:21 +02:00
Tobias Kaupat 33d48e8e0d Update CHANGELOG.md 2023-08-05 22:53:40 +02:00
Tobias Kaupat 5b4d050643 add CHANGELOG.md 2020-05-18 18:17:55 +02:00