From acd5f93fb416a91db8e21525a8483401f81343ba Mon Sep 17 00:00:00 2001 From: Anirudh Ramchandran Date: Wed, 23 Oct 2024 15:52:29 -0400 Subject: [PATCH] try again with older workflow --- .github/workflows/backend-license-checker.yml | 71 ++++++------------- 1 file changed, 21 insertions(+), 50 deletions(-) diff --git a/.github/workflows/backend-license-checker.yml b/.github/workflows/backend-license-checker.yml index b919edb2..67f7e931 100644 --- a/.github/workflows/backend-license-checker.yml +++ b/.github/workflows/backend-license-checker.yml @@ -1,4 +1,4 @@ -name: Backend-Models SPDX Licenses Checker +name: Check SPDX Licenses on: workflow_dispatch: @@ -19,17 +19,12 @@ jobs: runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v4 - - uses: actions/setup-python@v5.0.0 with: cache: "pip" python-version: "3.8" - - # Install the copyright checking tool - name: Install copyright check tool run: pip install git+https://github.com/espressif/check-copyright.git@master - - # Check SPDX licenses - name: Check SPDX licenses id: check_spdx_licenses run: | @@ -42,13 +37,10 @@ jobs: echo "EOF" >> $GITHUB_ENV echo "EXIT_CODE=$exit_code" >> $GITHUB_ENV exit 0 - - name: Debug Extracted Files run: | echo "Extracted Files:" echo "$CLEAN_OUTPUT" - - # Extract files needing SPDX header addition - name: Extract Files id: extract_files run: | @@ -65,64 +57,43 @@ jobs: echo "EOF" >> $GITHUB_ENV echo "Extracted Files: $files" exit 0 - - name: Debug Extracted Files run: | echo "Extracted Files:" echo "$FILES" - - # Run the `add_spdx_header.py` script to fix missing SPDX headers - - name: Run SPDX Header Script - if: env.FILES != '' - run: | - set +e - python add_spdx_header.py # Run the script to add SPDX headers to the missing files - exit 0 - - # Commit the changes made by `add_spdx_header.py` - - name: Commit changes - if: env.FILES != '' - uses: stefanzweifel/git-auto-commit-action@v5 - with: - commit_user_name: SPDX-Bot - commit_user_email: bot@example.com - commit_message: '🚨✨AUTOMATED COMMIT | Added missing SPDX license headers automatically' - branch: ${{ github.head_ref }} - - # Extract and clean file paths - name: Extract File Paths if: env.FILES != '' run: | + # Extract lines starting with './' but ignore any paths following "Modified files:" until a stop marker files_clean=$(echo "$FILES" | awk '/^Modified files:/ {ignore = 1} /^Above is a list of files/ {ignore = 0} !ignore && /^\.\// {print}' | sort | uniq) + # Save the cleaned files into a new environment variable 'FILES_CLEAN' echo "FILES_CLEAN<> $GITHUB_ENV echo "$files_clean" >> $GITHUB_ENV echo "EOF" >> $GITHUB_ENV - echo "Extracted Paths: $files_clean" - + echo "Extracted Paths: $files_clean" - name: Debug Extracted Paths run: | echo "Extracted Paths:" echo "$FILES_CLEAN" echo "---------------------------------" - - # Post a comment on the PR or Issue if there are SPDX issues - name: Comment on PR or Issue if: env.FILES_CLEAN != '' uses: actions/github-script@v7 with: - script: | - const formattedOutput = process.env.FILES_CLEAN; - const issueNumber = context.payload.pull_request.number; - const owner = context.repo.owner; - const repo = context.repo.repo; - if (formattedOutput) { - const commentBody = `Our automated SPDX license verification process has discovered that the following files are missing a license header:\n\`\`\`\n${formattedOutput}\n\`\`\`\nPlease ensure each indicated file includes a valid SPDX license identifier. This is essential for maintaining licensing compliance. Thank you.`; - await github.rest.issues.createComment({ - issue_number: issueNumber, - owner: owner, - repo: repo, - body: commentBody - }); - } else { - console.log("No SPDX license issues found."); - } \ No newline at end of file + script: | + const formattedOutput = process.env.FILES_CLEAN; + const issueNumber = context.issue.number || context.payload.pull_request.number; + const owner = context.repo.owner; + const repo = context.repo.repo; + if (formattedOutput) { + const commentBody = `Our automated SPDX license verification process has discovered that the following files are missing a license header:\n\`\`\`\n${formattedOutput}\n\`\`\`\nPlease ensure each indicated file includes a valid SPDX license identifier. This is essential for maintaining licensing compliance. Your attention and cooperation in updating these files are greatly appreciated. Thank you.`; + await github.rest.issues.createComment({ + issue_number: issueNumber, + owner: owner, + repo: repo, + body: commentBody + }); + core.setFailed("SPDX license issues found."); + } else { + console.log("No SPDX license issues found."); + } \ No newline at end of file