Skip to content

Implement profiles #334

Implement profiles

Implement profiles #334

Workflow file for this run

name: Static Analysis
# Workflow will trigger on any push to the master/main branch
on:
pull_request:
push:
branches:
- master
- main
jobs:
CppcheckTest:
# Our project is windows only, so we will compile project at windows server
runs-on: windows-2022
steps:
# Cloning all repository recursively
- name: Get Sources
uses: actions/checkout@v4
with:
submodules: true
# Deploy cppcheck from https://github.com/MahBoiDeveloper/CI-CD-buffer/releases/tag/v1.0
- name: Download Cppcheck
uses: robinraju/release-downloader@v1
with:
repository: MahBoiDeveloper/CI-CD-buffer
latest: true
fileName: cppcheck*
- name: Set Up Cppcheck
shell: cmd
run: |
powershell Expand-Archive -path .\cppcheck.zip -DestinationPath .
clang-format --version
# Remove clang-format due to incompatybility with Discord RPC library
- name: Remove clang-format From OS And PATH
shell: powershell
run: |
$clangPath = "C:\Program Files\LLVM\bin\clang-format.exe"
if (Test-Path $clangPath) {
Remove-Item -Force $clangPath
Write-Host "Clang-format deleted successfully."
}
# Check this about more info: https://github.com/marketplace/actions/install-version-specific-mingw
# Setting up MinGW_x64 version 8.1.0
- name: Set Up MinGW
uses: egor-tensin/setup-mingw@v2
with:
platform: x64
version: 12.2.0
# Check this about more info: https://github.com/marketplace/actions/install-qt
# This action cannot download needed mingw810
# So it downloads only Qt part
- name: Set Up Qt
uses: jurplel/install-qt-action@v3
with:
version: 5.15.2
arch: win64_mingw81
target: desktop
dir: C:\
# Check this about more info: https://github.com/marketplace/actions/cmake-action
- name: Set Up CMake
uses: threeal/cmake-action@v1.3.0
with:
run-build: false
- name: Run Cppcheck
shell: cmd
run: |
mkdir C:\Qt\Tools > nul
mklink C:\Qt\Tools\mingw_64 C:\ProgramData\chocolatey\lib\mingw\tools\install\mingw64 > nul
set PATH=%PATH%;C:\Qt\5.15.2\mingw81_64\bin;C:\Qt\Tools\mingw_64\bin
call Build.bat
cppcheck\cppcheck.exe --enable=all --suppress=missingIncludeSystem --report-progress --check-level=exhaustive --platform=win64 --project=build\compile_commands.json --project-configuration="Release" --output-file=cppcheckresult.log --max-ctu-depth=10 --inconclusive -j 12 --template=">>>{file}:{line}: {severity}: {message}\n{code}<<<" --template-location=">>>{file}:{line}: note: {info}\n{code}<<<"
# Show cpppcheck results
- name: Publish Results
shell: cmd
run: type cppcheckresult.log
# Upload artifact to the GitHub
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
# ${{github.sha}} - commit long hash name
name: cppcheckresult-${{github.sha}}
# zip all content in the "build\exe" folder
path: cppcheckresult.log