ci: isolate stable release ecosystem clone #9

Closed
opened 2026-09-30 02:08:02 +08:00 by Breadway · 3 comments
Owner

The stable release workflow still runs rm -rf /tmp/bread-ecosystem-ci and clones Breadway/bread-ecosystem into that fixed path before generating index.json. Concurrent stable releases on the shared runner can remove or overwrite another job's active clone. The dev and RC workflows already use per-run mktemp directories. Update only .forgejo/workflows/release.yml to use a unique temporary directory and clean up that directory, then verify the workflow change.

The stable release workflow still runs `rm -rf /tmp/bread-ecosystem-ci` and clones Breadway/bread-ecosystem into that fixed path before generating index.json. Concurrent stable releases on the shared runner can remove or overwrite another job's active clone. The dev and RC workflows already use per-run mktemp directories. Update only .forgejo/workflows/release.yml to use a unique temporary directory and clean up that directory, then verify the workflow change.
Author
Owner

PR #10 replaces the shared /tmp/bread-ecosystem-ci path with a unique mktemp directory, uses it for the ecosystem clone/index script, and removes it after index generation. Verified workflow YAML, embedded shell syntax (bash -n), and git diff --check. #10

PR #10 replaces the shared `/tmp/bread-ecosystem-ci` path with a unique mktemp directory, uses it for the ecosystem clone/index script, and removes it after index generation. Verified workflow YAML, embedded shell syntax (`bash -n`), and `git diff --check`. https://git.breadway.dev/Breadway/breadmon/pulls/10
Author
Owner

Fresh CI check / check (push) passed on PR #10 commit 58f3e00 (57s). The card remains in REVIEW for independent review.

Fresh CI `check / check (push)` passed on PR #10 commit 58f3e00 (57s). The card remains in REVIEW for independent review.
Author
Owner

Reviewed PR #10, ready to merge. Acceptance criteria: (1) the stable release uses an isolated per-run ecosystem checkout, implemented by mktemp and cloning into that path at .forgejo/workflows/release.yml:53-56; (2) index generation uses that checkout and removes it afterward, at lines 57-58. The diff stays within the requested workflow file. No behavioral test was added; the implementer reports YAML parsing, embedded bash -n, and git diff --check, and CI is green on 58f3e00. PR #10 is mergeable. Note: cleanup only runs after successful clone and index generation; a failure can leave its unique directory on the self-hosted runner, but this does not undermine the requested concurrency isolation.

Reviewed PR #10, ready to merge. Acceptance criteria: (1) the stable release uses an isolated per-run ecosystem checkout, implemented by `mktemp` and cloning into that path at `.forgejo/workflows/release.yml:53-56`; (2) index generation uses that checkout and removes it afterward, at lines 57-58. The diff stays within the requested workflow file. No behavioral test was added; the implementer reports YAML parsing, embedded `bash -n`, and `git diff --check`, and CI is green on `58f3e00`. PR #10 is mergeable. Note: cleanup only runs after successful clone and index generation; a failure can leave its unique directory on the self-hosted runner, but this does not undermine the requested concurrency isolation.
Sign in to join this conversation.
No labels
ci
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
Breadway/breadmon#9
No description provided.