Skip to content

[Bug]: Release fixture cleanup races detached Git maintenance on hosted CI #13

Closed

Description

@jinxiao

Affected module or tool

Release automation regression fixture (tools/test_release_automation.py).

Version or commit

3ab63ee58514681d137860332bf82a453b8de895; first full-release preparation PR #12 at 331c92eb3236fe525f4c46bf71c1b16bd593836a.

Environment

GitHub-hosted Ubuntu runner, Python 3.14.8, Go 1.26, CGO_ENABLED=0. Local Windows regressions passed before rollout.

Minimal reproduction

Run uv run --project website --frozen python tools/test_release_automation.py on the hosted runner. The completion gate cases create and commit tiny temporary Git repositories and immediately remove them after returning early for fork/PR-event/wrong-branch inputs.

Expected behavior

All 14 automation regressions pass, and temporary Git repositories are removed deterministically without asynchronous writes surviving a completed Git command.

Actual behavior

The Documentation check in run https://github.com/rambow-cloud/powertools-lambda-go/actions/runs/37202568042 failed in three completion-gate subcases with OSError: [Errno 39] Directory not empty while cleaning the repository or .git/objects. Git can launch detached automatic maintenance after writes; these short cases can finish before that process exits. Release preparation itself succeeded, but required checks correctly prevent publication.

Acceptance criteria or proposed fix

Disable automatic maintenance/GC in each disposable fixture repository before its first add/commit. Retain synchronous errors and normal TemporaryDirectory cleanup; do not hide errors or retry deletion. Pass the existing regression on the hosted Linux runner and keep CGO disabled. No production repository maintenance settings or publication checks should change.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions