1name: Kernel-Checker
2
3on: [push, pull_request]
4
5jobs:
6  kernel-checker:
7    name: FreeRTOS Kernel Header Checks
8    runs-on: ubuntu-20.04
9    steps:
10      # Install python 3
11      - name: Tool Setup
12        uses: actions/setup-python@v2
13        with:
14          python-version: 3.7.10
15          architecture:   x64
16        env:
17          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
18
19      # There is shared code, hosted by FreeRTOS/FreeRTOS, with deps needed by header checker
20      - name: Checkout FreeRTOS Tools
21        uses: actions/checkout@v2
22        with:
23          repository: FreeRTOS/FreeRTOS
24          ref:  main
25          path: tools
26
27      # Checkout user pull request changes
28      - name: Checkout Pull Request
29        uses: actions/checkout@v2
30        with:
31          path: inspect
32
33      # Collect all affected files
34      - name: Collecting changed files
35        uses: lots0logs/gh-action-get-changed-files@2.1.4
36        with:
37          token: ${{ secrets.GITHUB_TOKEN }}
38
39      # Run checks
40      - name: Check File Headers
41        run: |
42          mv tools/.github/scripts/common inspect/.github/scripts
43          pip install -r inspect/.github/scripts/common/requirements.txt
44          cd inspect
45          .github/scripts/kernel_checker.py --json ${HOME}/files_modified.json ${HOME}/files_added.json ${HOME}/files_renamed.json
46          exit $?
47