Updates to GHA scripts

This commit is contained in:
Jasmine Iwanek
2025-07-03 18:22:17 -04:00
parent 31f4da3b63
commit e30f086482
6 changed files with 159 additions and 102 deletions

View File

@@ -8,6 +8,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/cmake_linux.yml - .github/workflows/cmake_linux.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -18,7 +19,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- .github/workflows/** - "!.github/workflows/**"
- .github/workflows/cmake_linux.yml - .github/workflows/cmake_linux.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -26,13 +27,11 @@ on:
jobs: jobs:
linux: linux:
name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64" name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64"
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
strategy: strategy:
fail-fast: true fail-fast: true
matrix: matrix:
@@ -90,9 +89,6 @@ jobs:
with: with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Install sonar-scanner and build-wrapper
uses: SonarSource/sonarcloud-github-c-cpp@v3
- name: Configure CMake - name: Configure CMake
run: >- run: >-
cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }} cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }}
@@ -103,15 +99,7 @@ jobs:
- name: Build - name: Build
run: | run: |
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build cmake --build build
- name: Run sonar-scanner
if: 0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: |
sonar-scanner --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
- name: Generate package - name: Generate package
run: | run: |

View File

@@ -8,6 +8,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/cmake_macos.yml - .github/workflows/cmake_macos.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -18,7 +19,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- .github/workflows/** - "!.github/workflows/**"
- .github/workflows/cmake_macos.yml - .github/workflows/cmake_macos.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -26,13 +27,11 @@ on:
jobs: jobs:
macos13-x86_64: macos13-x86_64:
name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64" name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64"
runs-on: macos-13 runs-on: macos-13
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
strategy: strategy:
fail-fast: true fail-fast: true
matrix: matrix:
@@ -80,9 +79,6 @@ jobs:
with: with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Install sonar-scanner and build-wrapper
uses: SonarSource/sonarcloud-github-c-cpp@v3
- name: Configure CMake - name: Configure CMake
run: >- run: >-
cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }} cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }}
@@ -96,20 +92,10 @@ jobs:
-D LIBSERIALPORT_ROOT=$(brew --prefix libserialport) -D LIBSERIALPORT_ROOT=$(brew --prefix libserialport)
- name: Build - name: Build
run: | run: cmake --build build
build-wrapper-macosx-x86 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build
- name: Run sonar-scanner
if: 0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
run: |
sonar-scanner --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
- name: Generate package - name: Generate package
run: | run: cmake --install build
cmake --install build
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4
@@ -118,13 +104,11 @@ jobs:
path: build/artifacts/** path: build/artifacts/**
macos14-arm64: macos14-arm64:
name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, arm64" name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, arm64"
runs-on: macos-14 runs-on: macos-14
# env:
# BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
strategy: strategy:
fail-fast: true fail-fast: true
matrix: matrix:
@@ -172,9 +156,6 @@ jobs:
with: with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
# - name: Install sonar-scanner and build-wrapper
# uses: SonarSource/sonarcloud-github-c-cpp@v3
- name: Configure CMake - name: Configure CMake
run: >- run: >-
cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }} cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }}
@@ -188,20 +169,10 @@ jobs:
-D LIBSERIALPORT_ROOT=$(brew --prefix libserialport) -D LIBSERIALPORT_ROOT=$(brew --prefix libserialport)
- name: Build - name: Build
run: | run: cmake --build build
cmake --build build
# - name: Run sonar-scanner
# if: 0
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# run: |
# sonar-scanner --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
- name: Generate package - name: Generate package
run: | run: cmake --install build
cmake --install build
- name: Upload artifact - name: Upload artifact
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v4

View File

@@ -8,6 +8,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/cmake_windows_msys2.yml - .github/workflows/cmake_windows_msys2.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -18,6 +19,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/cmake_windows_msys2.yml - .github/workflows/cmake_windows_msys2.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -25,13 +27,11 @@ on:
jobs: jobs:
msys2: msys2:
name: "${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, ${{ matrix.environment.msystem }}" name: "${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, ${{ matrix.environment.msystem }}"
runs-on: ${{ matrix.environment.runner }} runs-on: ${{ matrix.environment.runner }}
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
defaults: defaults:
run: run:
shell: msys2 {0} shell: msys2 {0}
@@ -40,23 +40,47 @@ jobs:
fail-fast: true fail-fast: true
matrix: matrix:
build: build:
- name: Dev Debug # - name: Regular
# preset: regular
- name: Debug
preset: dev_debug preset: dev_debug
slug: -Dev-Debug slug: -Debug
- name: Dev - name: Dev
preset: development preset: development
slug: -Dev slug: -Dev
dynarec: dynarec:
- name: ODR - name: ODR
new: off new: off
slug: -ODR
- name: NDR - name: NDR
new: on new: on
slug: -NDR slug: -NDR
ui:
- name: Qt GUI
qt: on
static: on
slug: -Qt
packages: >-
qt5-base:p
qt5-tools:p
vulkan-headers:p
environment: environment:
# - msystem: MSYS
# toolchain: ./cmake/flags-gcc-x86_64.cmake
# slug: "-MSYS64"
- msystem: MINGW64 - msystem: MINGW64
prefix: mingw-w64-x86_64
toolchain: ./cmake/flags-gcc-x86_64.cmake toolchain: ./cmake/flags-gcc-x86_64.cmake
slug: "-64" slug: "-64"
runner: windows-2022 runner: windows-2022
# - msystem: CLANG64
# prefix: mingw-w64-clang-x86_64
# toolchain: ./cmake/llvm-win32-x86_64.cmake
# slug: "CLANG64"
# - msystem: UCRT64
# prefix: mingw-w64-ucrt-x86_64
# toolchain: ./cmake/flags-gcc-x86_64.cmake
# slug: "UCRT64"
- msystem: CLANGARM64 - msystem: CLANGARM64
toolchain: ./cmake/flags-gcc-aarch64.cmake toolchain: ./cmake/flags-gcc-aarch64.cmake
slug: -arm64 slug: -arm64
@@ -97,9 +121,6 @@ jobs:
with: with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
# - name: Install sonar-scanner and build-wrapper
# uses: SonarSource/sonarcloud-github-c-cpp@v3
- name: Configure CMake - name: Configure CMake
run: >- run: >-
cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }} cmake -G Ninja -S . -B build --preset ${{ matrix.build.preset }}
@@ -107,20 +128,9 @@ jobs:
-D NEW_DYNAREC=${{ matrix.dynarec.new }} -D NEW_DYNAREC=${{ matrix.dynarec.new }}
-D CMAKE_INSTALL_PREFIX=./build/artifacts -D CMAKE_INSTALL_PREFIX=./build/artifacts
# - name: Build
# run: |
# .sonar/build-wrapper-win-x86/build-wrapper-win-x86-64.exe --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build
- name: Build - name: Build
run: cmake --build build run: cmake --build build
# - name: Run sonar-scanner
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# run: |
# .sonar/sonar-scanner-5.0.1.3006-windows/bin/sonar-scanner.bat --define sonar.cfamily.build-wrapper-output="${{ env.BUILD_WRAPPER_OUT_DIR }}"
- name: Generate package - name: Generate package
run: cmake --install build run: cmake --install build

View File

@@ -9,6 +9,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/codeql_linux.yml - .github/workflows/codeql_linux.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -20,7 +21,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- .github/workflows/** - "!.github/workflows/**"
- .github/workflows/codeql_linux.yml - .github/workflows/codeql_linux.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -32,10 +33,13 @@ jobs:
analyze-linux: analyze-linux:
name: "Analyze Linux GCC 11 (${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64)" name: "Analyze (${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64)"
runs-on: ubuntu-22.04 runs-on: ubuntu-22.04
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
permissions: permissions:
actions: read actions: read
contents: read contents: read
@@ -48,12 +52,12 @@ jobs:
build: build:
# - name: Regular # - name: Regular
# preset: regular # preset: regular
# - name: Debug - name: Debug
# preset: debug
# slug: -Debug
- name: Dev
preset: dev_debug preset: dev_debug
slug: -Dev slug: -Debug
# - name: Dev
# preset: development
# slug: -Dev
dynarec: dynarec:
- name: ODR - name: ODR
new: off new: off
@@ -64,6 +68,7 @@ jobs:
ui: ui:
- name: SDL GUI - name: SDL GUI
qt: off qt: off
static: on
- name: Qt GUI - name: Qt GUI
qt: on qt: on
slug: -Qt slug: -Qt
@@ -95,6 +100,11 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v4 uses: actions/checkout@v4
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Install Build Wrapper
uses: SonarSource/sonarqube-scan-action/install-build-wrapper@v5
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@v3 uses: github/codeql-action/init@v3
@@ -111,9 +121,23 @@ jobs:
-D QT=${{ matrix.ui.qt }} -D QT=${{ matrix.ui.qt }}
- name: Build - name: Build
run: cmake --build build run: |
build-wrapper-linux-x86-64 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3 uses: github/codeql-action/analyze@v3
with: with:
category: "/language:${{matrix.language}}" category: "/language:${{matrix.language}}"
- name: SonarQube Scan
if: matrix.build.preset == 'dev_debug' && matrix.dynarec.new == 'on' && matrix.ui.qt == 'on' && env.SONAR_TOKEN != ''
# if: 0
uses: SonarSource/sonarqube-scan-action@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# SONAR_ROOT_CERT: ${{ secrets.SONAR_ROOT_CERT }}
with:
# Consult https://docs.sonarsource.com/sonarqube-server/latest/analyzing-source-code/scanners/sonarscanner/ for more information and options
args: >
--define sonar.cfamily.compile-commands="${{ env.BUILD_WRAPPER_OUT_DIR }}/compile_commands.json"

View File

@@ -9,6 +9,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/codeql_macos.yml - .github/workflows/codeql_macos.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -20,7 +21,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- .github/workflows/** - "!.github/workflows/**"
- .github/workflows/codeql_macos.yml - .github/workflows/codeql_macos.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -32,10 +33,13 @@ jobs:
analyze-macos13-x86_64: analyze-macos13-x86_64:
name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64" name: "Analyze (${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, x86_64)"
runs-on: macos-13 runs-on: macos-13
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
permissions: permissions:
actions: read actions: read
contents: read contents: read
@@ -48,12 +52,12 @@ jobs:
build: build:
# - name: Regular # - name: Regular
# preset: regular # preset: regular
# - name: Debug - name: Debug
# preset: debug
# slug: -Debug
- name: Dev
preset: dev_debug preset: dev_debug
slug: -Dev slug: -Debug
# - name: Dev
# preset: development
# slug: -Dev
dynarec: dynarec:
- name: ODR - name: ODR
new: off new: off
@@ -74,7 +78,6 @@ jobs:
- name: Install dependencies - name: Install dependencies
run: >- run: >-
brew install brew install
ninja
sdl2 sdl2
rtmidi rtmidi
openal-soft openal-soft
@@ -86,6 +89,11 @@ jobs:
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v4 uses: actions/checkout@v4
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Install Build Wrapper
uses: SonarSource/sonarqube-scan-action/install-build-wrapper@v5
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@v3 uses: github/codeql-action/init@v3
@@ -106,9 +114,23 @@ jobs:
-D LIBSERIALPORT_ROOT=$(brew --prefix libserialport) -D LIBSERIALPORT_ROOT=$(brew --prefix libserialport)
- name: Build - name: Build
run: cmake --build build run: |
build-wrapper-macosx-x86 --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3 uses: github/codeql-action/analyze@v3
with: with:
category: "/language:${{matrix.language}}" category: "/language:${{matrix.language}}"
- name: SonarQube Scan
# if: matrix.build.preset == 'dev_debug' && matrix.dynarec.new == 'on' && matrix.ui.qt == 'on' && env.SONAR_TOKEN != ''
if: 0
uses: SonarSource/sonarqube-scan-action@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# SONAR_ROOT_CERT: ${{ secrets.SONAR_ROOT_CERT }}
with:
# Consult https://docs.sonarsource.com/sonarqube-server/latest/analyzing-source-code/scanners/sonarscanner/ for more information and options
args: >
--define sonar.cfamily.compile-commands="${{ env.BUILD_WRAPPER_OUT_DIR }}/compile_commands.json"

View File

@@ -9,6 +9,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- "!.github/workflows/**"
- .github/workflows/codeql_windows_msys2.yml - .github/workflows/codeql_windows_msys2.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -20,7 +21,7 @@ on:
- cmake/** - cmake/**
- "**/CMakeLists.txt" - "**/CMakeLists.txt"
- "CMakePresets.json" - "CMakePresets.json"
- .github/workflows/** - "!.github/workflows/**"
- .github/workflows/codeql_windows_msys2.yml - .github/workflows/codeql_windows_msys2.yml
- vcpkg.json - vcpkg.json
- "!**/Makefile*" - "!**/Makefile*"
@@ -32,9 +33,12 @@ jobs:
analyze-msys2: analyze-msys2:
name: "${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, ${{ matrix.environment.msystem }}" name: "Analyze (${{ matrix.ui.name }}, ${{ matrix.build.name }}, ${{ matrix.dynarec.name }}, ${{ matrix.environment.msystem }})"
runs-on: windows-2022 runs-on: ${{ matrix.environment.runner }}
env:
BUILD_WRAPPER_OUT_DIR: build_wrapper_output_directory # Directory where build-wrapper output will be placed
permissions: permissions:
actions: read actions: read
@@ -52,12 +56,12 @@ jobs:
build: build:
# - name: Regular # - name: Regular
# preset: regular # preset: regular
# - name: Debug - name: Debug
# preset: debug
# slug: -Debug
- name: Dev
preset: dev_debug preset: dev_debug
slug: -Dev slug: -Debug
# - name: Dev
# preset: development
# slug: -Dev
dynarec: dynarec:
- name: ODR - name: ODR
new: off new: off
@@ -77,21 +81,37 @@ jobs:
environment: environment:
# - msystem: MSYS # - msystem: MSYS
# toolchain: ./cmake/flags-gcc-x86_64.cmake # toolchain: ./cmake/flags-gcc-x86_64.cmake
# slug: "-MSYS64"
- msystem: MINGW64 - msystem: MINGW64
prefix: mingw-w64-x86_64 prefix: mingw-w64-x86_64
toolchain: ./cmake/flags-gcc-x86_64.cmake toolchain: ./cmake/flags-gcc-x86_64.cmake
slug: "-64"
runner: windows-2022
# - msystem: CLANG64 # - msystem: CLANG64
# prefix: mingw-w64-clang-x86_64 # prefix: mingw-w64-clang-x86_64
# toolchain: ./cmake/llvm-win32-x86_64.cmake # toolchain: ./cmake/llvm-win32-x86_64.cmake
- msystem: UCRT64 # slug: "CLANG64"
prefix: mingw-w64-ucrt-x86_64 # runner: windows-2022
toolchain: ./cmake/flags-gcc-x86_64.cmake # - msystem: UCRT64
# prefix: mingw-w64-ucrt-x86_64
# toolchain: ./cmake/flags-gcc-x86_64.cmake
# slug: "UCRT64"
# runner: windows-2022
- msystem: CLANGARM64
toolchain: ./cmake/flags-gcc-aarch64.cmake
slug: -arm64
runner: windows-11-arm
exclude:
- dynarec:
new: off
environment:
msystem: CLANGARM64
steps: steps:
- name: Prepare MSYS2 environment - name: Prepare MSYS2 environment
uses: msys2/setup-msys2@v2 uses: msys2/setup-msys2@v2
with: with:
release: false release: true
update: true update: true
msystem: ${{ matrix.environment.msystem }} msystem: ${{ matrix.environment.msystem }}
pacboy: >- pacboy: >-
@@ -109,9 +129,15 @@ jobs:
fluidsynth:p fluidsynth:p
libserialport:p libserialport:p
${{ matrix.ui.packages }} ${{ matrix.ui.packages }}
openmp:p
- name: Checkout repository - name: Checkout repository
uses: actions/checkout@v4 uses: actions/checkout@v4
with:
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
- name: Install Build Wrapper
uses: SonarSource/sonarqube-scan-action/install-build-wrapper@v5
- name: Initialize CodeQL - name: Initialize CodeQL
uses: github/codeql-action/init@v3 uses: github/codeql-action/init@v3
@@ -128,11 +154,27 @@ jobs:
-D QT=${{ matrix.ui.qt }} -D QT=${{ matrix.ui.qt }}
-D STATIC_BUILD=${{ matrix.ui.static }} -D STATIC_BUILD=${{ matrix.ui.static }}
# - name: Build
# run: |
# .sonar/build-wrapper-win-x86/build-wrapper-win-x86-64.exe --out-dir ${{ env.BUILD_WRAPPER_OUT_DIR }} cmake --build build
- name: Build - name: Build
run: cmake --build build run: cmake --build build
- name: Perform CodeQL Analysis - name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3 uses: github/codeql-action/analyze@v3
with: with:
category: "/language:${{matrix.language}}" category: "/language:${{matrix.language}}"
- name: SonarQube Scan
# if: matrix.build.preset == 'dev_debug' && matrix.dynarec.new == 'on' && matrix.ui.qt == 'on' && env.SONAR_TOKEN != ''
if: 0
uses: SonarSource/sonarqube-scan-action@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
# SONAR_ROOT_CERT: ${{ secrets.SONAR_ROOT_CERT }}
with:
# Consult https://docs.sonarsource.com/sonarqube-server/latest/analyzing-source-code/scanners/sonarscanner/ for more information and options
args: >
--define sonar.cfamily.compile-commands="${{ env.BUILD_WRAPPER_OUT_DIR }}/compile_commands.json"