name: Checks on: pull_request: jobs: cppcheck: name: Cppcheck runs-on: ubuntu-22.04 steps: - name: Checkout sources uses: actions/checkout@v4 with: path: src/pg_stat_monitor - name: Checkout cppcheck sources uses: actions/checkout@v4 with: repository: "danmar/cppcheck" ref: "2.13.4" path: src/cppcheck - name: Build and install cppcheck working-directory: src/cppcheck run: | mkdir build cd build cmake .. cmake --build . sudo cmake --install . - name: Execute linter check with cppcheck working-directory: src/pg_stat_monitor run: | set -x cppcheck --enable=all --inline-suppr --template='{file}:{line},{severity},{id},{message}' --error-exitcode=1 --suppress=missingIncludeSystem --suppress=missingInclude --suppress=unmatchedSuppression:pg_stat_monitor.c --check-config . format: name: Code format runs-on: ubuntu-22.04 steps: - name: Checkout sources uses: actions/checkout@v4 - name: Clone postgres repository uses: actions/checkout@v4 with: repository: 'postgres/postgres' ref: 'REL_16_STABLE' - name: Install perltidy run: sudo cpan SHANCOCK/Perl-Tidy-20230309.tar.gz - name: Install pg_bsd_indent working-directory: src/tools/pg_bsd_indent run: make install - name: Format sources run: | make update-typedefs make indent - name: Check files are formatted and no source code changes run: | git status git diff --exit-code license: name: License runs-on: ubuntu-22.04 steps: - name: Checkout sources uses: actions/checkout@v4 - name: Check license headers uses: apache/skywalking-eyes/header@v0.6.0 with: token: "" # Prevent comments