Skip to content

Commit 95b3b38

Browse files
committed
fix: harden session backup upload
1 parent 73cccad commit 95b3b38

12 files changed

Lines changed: 1078 additions & 384 deletions

File tree

packages/app/src/lib/core/templates-entrypoint/git-post-push-wrapper.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,9 @@ docker_git_post_push_action() {
137137
138138
if [[ -x "$DOCKER_GIT_POST_PUSH_ACTION" ]]; then
139139
if repo_root="$(docker_git_git_resolve_repo_root "$@")" && [[ -n "$repo_root" ]]; then
140-
DOCKER_GIT_POST_PUSH_REPO_ROOT="$repo_root" DOCKER_GIT_SKIP_POST_PUSH_ACTION=1 "$DOCKER_GIT_POST_PUSH_ACTION" || true
140+
DOCKER_GIT_POST_PUSH_REPO_ROOT="$repo_root" DOCKER_GIT_SKIP_POST_PUSH_ACTION=1 "$DOCKER_GIT_POST_PUSH_ACTION"
141141
else
142-
DOCKER_GIT_SKIP_POST_PUSH_ACTION=1 "$DOCKER_GIT_POST_PUSH_ACTION" || true
142+
DOCKER_GIT_SKIP_POST_PUSH_ACTION=1 "$DOCKER_GIT_POST_PUSH_ACTION"
143143
fi
144144
fi
145145
}
@@ -153,7 +153,7 @@ if subcommand="$(docker_git_git_subcommand "$@")" && [[ "$subcommand" == "push"
153153
fi
154154
155155
if [[ "$status" -eq 0 ]] && ! docker_git_git_push_is_dry_run "$@"; then
156-
docker_git_post_push_action "$@"
156+
docker_git_post_push_action "$@" || status=$?
157157
fi
158158
159159
exit "$status"

packages/app/src/lib/core/templates-entrypoint/git.ts

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -279,15 +279,15 @@ cd "$REPO_ROOT"
279279
# invokes this after a successful git push
280280
# REF: issue-192
281281
if [ "${"${"}DOCKER_GIT_SKIP_SESSION_BACKUP:-}" != "1" ]; then
282-
if command -v gh >/dev/null 2>&1; then
283-
if command -v docker-git-session-sync >/dev/null 2>&1; then
284-
DOCKER_GIT_SKIP_POST_PUSH_ACTION=1 docker-git-session-sync backup --verbose || echo "[session-backup] Warning: session backup failed (non-fatal)"
285-
else
286-
echo "[session-backup] Warning: docker-git-session-sync not found (skipping session backup)"
287-
fi
288-
else
289-
echo "[session-backup] Warning: gh CLI not found (skipping session backup)"
282+
if ! command -v gh >/dev/null 2>&1; then
283+
echo "[session-backup] Error: gh CLI not found"
284+
exit 1
285+
fi
286+
if ! command -v docker-git-session-sync >/dev/null 2>&1; then
287+
echo "[session-backup] Error: docker-git-session-sync not found"
288+
exit 1
290289
fi
290+
DOCKER_GIT_SKIP_POST_PUSH_ACTION=1 docker-git-session-sync backup --verbose --background --require-comment
291291
fi
292292
EOF
293293
chmod 0755 "$POST_PUSH_ACTION"

0 commit comments

Comments
 (0)