Repository navigation
fix(ops): the backup recorder reaches each scope's own folder - #420
Merged
Merged
Conversation
Checking production (#370, task 4.0) showed Dokploy writing database dumps under the database service's folder (ukip-dbukip-eqmmhw/pg/) and volume archives under the compose app's (…-danmq1_ukip-backend/static/). The recorder listed both scopes under one S3_BACKUP_PREFIX, so with the probe's prefix it would have found the dumps and reported no_object for volumes on every cycle. Its tests had assumed both under one folder. It now takes S3_BACKUP_PREFIX_DATABASE and S3_BACKUP_PREFIX_VOLUME, each falling back to S3_BACKUP_PREFIX, and refuses to run with a scope that has neither. backup_id stays relative to the prefix it was listed under, so no document carries a folder name; manual rows, recorded as full keys, still match by path suffix. Tests: each scope is listed under its own prefix, both are recorded relative to it and parse, a scope with no prefix is refused, and the shared prefix still covers both. Giving the volume scope the database prefix fails two of them. The runbook's §5c says where production keeps each scope and gives the credential's policy for exactly the two folders; task 4.0 is done with what it found (full keys; the last manual cycle was 2026-09-22). Co-Authored-By: Claude Opus 5.5 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #370. Found while checking production for task 4.0.
Problem
Dokploy writes each backup scope under its own top-level folder:
ukip-dbukip-eqmmhw/pg/ukip-universal-knowledgeiintelligence-platform-danmq1_ukip-backend/static/The recorder listed both scopes under one
S3_BACKUP_PREFIX. With the probe's prefix it would have found the dumps and reportedno_objectfor volumes on every cycle. Its tests had assumed both scopes lived under one folder.Fix
S3_BACKUP_PREFIX_DATABASEandS3_BACKUP_PREFIX_VOLUME, each falling back toS3_BACKUP_PREFIX. Existing single-folder installs need no change.backup_idstays relative to the prefix it was listed under, so no document carries a folder name. Manual rows were recorded as full keys, and they still match by path suffix.Also
ListBucketwith a prefix condition,GetObjecton both).automate-backup-evidencetask 4.0: done. Production recorded full keys, and the last manual cycle was 2026-09-22.Checks
🤖 Generated with Claude Code