Skip to content

Commit

Permalink
revert to commit:
Browse files Browse the repository at this point in the history
  • Loading branch information
anirudTT authored Oct 23, 2024
1 parent acd5f93 commit db26fbd
Showing 1 changed file with 50 additions and 21 deletions.
71 changes: 50 additions & 21 deletions .github/workflows/backend-license-checker.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Check SPDX Licenses
name: Backend-Models SPDX Licenses Checker

on:
workflow_dispatch:
Expand All @@ -19,12 +19,17 @@ 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: |
Expand All @@ -37,10 +42,13 @@ 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: |
Expand All @@ -57,43 +65,64 @@ 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<<EOF" >> $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.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.");
}
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.");
}

0 comments on commit db26fbd

Please sign in to comment.