name: Scancode

on: [pull_request]

jobs:
  scancode_job:
    runs-on: ubuntu-22.04
    name: Scan code for licenses
    steps:
    - name: Checkout the code
      uses: actions/checkout@v4
      with:
        fetch-depth: 0
    - name: Scan the code
      id: scancode
      uses: zephyrproject-rtos/action_scancode@v4
      with:
        directory-to-scan: 'scan/'
    - name: Artifact Upload
      uses: actions/upload-artifact@v4
      with:
        name: scancode
        path: ./artifacts

    - name: Verify
      run: |
        if [ -s ./artifacts/report.txt ]; then
          report=$(cat ./artifacts/report.txt)
          report="${report//'%'/'%25'}"
          report="${report//$'\n'/'%0A'}"
          report="${report//$'\r'/'%0D'}"
          echo "::error file=./artifacts/report.txt::$report"
          exit 1
        fi
