name: Code Style on: [pull_request] concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: clang-format: runs-on: ubuntu-20.04 permissions: pull-requests: write steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Install clang-format-9 run: | sudo apt update sudo apt --assume-yes install clang-format-9 - name: Install dependencies run: | python3 -m pip install --upgrade pip python3 -m pip install -r ./src/bindings/python/requirements.txt # Add for -DENABLE_PYTHON=ON, no cython python3 -m pip install -r ./src/bindings/python/src/compatibility/openvino/requirements-dev.txt # Run cmake with -DENABLE_PROFILING_ITT=ON -DSELECTIVE_BUILD=COLLECT in order to enable codestyle check for ITT collector - name: CMake configure run: cmake -DENABLE_PYTHON=ON -DENABLE_TESTS=ON -DENABLE_PROFILING_ITT=ON -DSELECTIVE_BUILD=COLLECT -B build - name: Create code style diff run: cmake --build build --target clang_format_fix_all -j8 - name: suggester / clang-format if: startsWith(github.event_name, 'pull_request') uses: reviewdog/action-suggester@v1 with: github_token: ${{ secrets.GITHUB_TOKEN }} level: warning fail_on_error: true ShellCheck: runs-on: ubuntu-22.04 permissions: pull-requests: write steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Install ShellCheck run: | sudo apt update sudo apt --assume-yes install shellcheck - name: CMake configure run: cmake -B build - name: Shellcheck cmake target run: cmake --build build --target ie_shellcheck -j8 # always provide suggestions even for skipped scripts in ie_shellcheck tagret - name: ShellCheck action if: always() uses: reviewdog/action-shellcheck@v1 with: level: style reporter: github-pr-review check_all_files_with_shebangs: true fail_on_error: true exclude: | "*/thirdparty/*" "./temp/*" NamingConventionCheck: runs-on: ubuntu-22.04 steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Install Clang dependency run: | sudo apt update sudo apt --assume-yes remove clang-7 clang-8 clang-9 clang-10 clang-11 clang-12 clang-13 sudo apt --assume-yes install libclang-14-dev - name: Install Python-based dependencies run: python3 -m pip install -r cmake/developer_package/ncc_naming_style/requirements_dev.txt - name: CMake configure run: cmake -B build - name: Naming convention check run: cmake --build build --target ncc_all -j8