From 2bc3b115dc5c45240982054d95da008822758ed8 Mon Sep 17 00:00:00 2001 From: csh Date: Fri, 22 May 2026 16:39:08 +0800 Subject: [PATCH] :bug: fix(gitea_workflow): clean up temporary repo dirs in workflows --- .gitea/workflows/standards-check.yml | 1 + .gitea/workflows/test.yml | 1 + .gitea/workflows/update-thirdparty-skills.yml | 1 + templates/ci/gitea/.gitea/workflows/standards-check.yml | 1 + tests/test_gitea_workflow_bootstrap.py | 2 ++ 5 files changed, 6 insertions(+) diff --git a/.gitea/workflows/standards-check.yml b/.gitea/workflows/standards-check.yml index aa51c5a4..c2e83404 100644 --- a/.gitea/workflows/standards-check.yml +++ b/.gitea/workflows/standards-check.yml @@ -38,6 +38,7 @@ jobs: mkdir -p "$WORKSPACE_DIR" REPO_DIR="$(mktemp -d "$WORKSPACE_DIR/${REPO_NAME}.XXXXXX")" + trap 'rm -rf "$REPO_DIR"' EXIT if [ -n "$TOKEN" ]; then REPO_URL="https://oauth2:${TOKEN}@${GITHUB_SERVER_URL#https://}/${GITHUB_REPOSITORY}.git" diff --git a/.gitea/workflows/test.yml b/.gitea/workflows/test.yml index eba5f896..f4527e12 100644 --- a/.gitea/workflows/test.yml +++ b/.gitea/workflows/test.yml @@ -45,6 +45,7 @@ jobs: mkdir -p "$WORKSPACE_DIR" REPO_DIR="$(mktemp -d "$WORKSPACE_DIR/${REPO_NAME}.XXXXXX")" + trap 'rm -rf "$REPO_DIR"' EXIT if [ -n "$TOKEN" ]; then REPO_URL="https://oauth2:${TOKEN}@${GITHUB_SERVER_URL#https://}/${GITHUB_REPOSITORY}.git" diff --git a/.gitea/workflows/update-thirdparty-skills.yml b/.gitea/workflows/update-thirdparty-skills.yml index 6429b7ad..36b633ed 100644 --- a/.gitea/workflows/update-thirdparty-skills.yml +++ b/.gitea/workflows/update-thirdparty-skills.yml @@ -36,6 +36,7 @@ jobs: TOKEN="${{ secrets.WORKFLOW }}" mkdir -p "${{ env.WORKSPACE_DIR }}" REPO_DIR="$(mktemp -d "${{ env.WORKSPACE_DIR }}/${REPO_NAME}.XXXXXX")" + trap 'rm -rf "$REPO_DIR"' EXIT if [ -n "$TOKEN" ]; then REPO_URL="https://oauth2:${TOKEN}@${GITHUB_SERVER_URL#https://}/${{ github.repository }}.git" else diff --git a/templates/ci/gitea/.gitea/workflows/standards-check.yml b/templates/ci/gitea/.gitea/workflows/standards-check.yml index 1c9eccb5..9d5001d9 100644 --- a/templates/ci/gitea/.gitea/workflows/standards-check.yml +++ b/templates/ci/gitea/.gitea/workflows/standards-check.yml @@ -32,6 +32,7 @@ jobs: TOKEN="${{ secrets.WORKFLOW }}" mkdir -p "${{ env.WORKSPACE_DIR }}" REPO_DIR="$(mktemp -d "${{ env.WORKSPACE_DIR }}/${REPO_NAME}.XXXXXX")" + trap 'rm -rf "$REPO_DIR"' EXIT if [ -n "$TOKEN" ]; then REPO_URL="https://oauth2:${TOKEN}@${GITHUB_SERVER_URL#https://}/${{ github.repository }}.git" else diff --git a/tests/test_gitea_workflow_bootstrap.py b/tests/test_gitea_workflow_bootstrap.py index c62ec77c..84f8787d 100644 --- a/tests/test_gitea_workflow_bootstrap.py +++ b/tests/test_gitea_workflow_bootstrap.py @@ -37,6 +37,8 @@ class GiteaWorkflowBootstrapTests(unittest.TestCase): or 'mkdir -p "${{ env.WORKSPACE_DIR }}"' in text ) self.assertIn('echo "REPO_DIR=$REPO_DIR" >>', text) + self.assertIn("trap", text) + self.assertIn('rm -rf "$REPO_DIR"', text) def test_test_workflow_installs_tomli_for_python_template_validation(self): text = TEST_WORKFLOW.read_text(encoding="utf-8")