Update msbuild.yml #237
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: MSBuild | |
on: | |
push: | |
branches: [ "main" ] | |
# pull_request: | |
# branches: [ "main" ] | |
env: | |
SOLUTION_FILE_PATH: . | |
permissions: | |
contents: read | |
actions: write | |
jobs: | |
analysis: | |
name: Analysis | |
runs-on: self-hosted | |
steps: | |
- uses: actions/[email protected] | |
- name: Add MSBuild to PATH | |
uses: microsoft/[email protected] | |
- name: Restore NuGet packages | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: dotnet restore ${{env.SOLUTION_FILE_PATH}} | |
- name: Analysis Debug (x86) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: | | |
mkdir "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug" | |
python "C:\PVS-Studio_Cmd.py" --settings "C:\Settings.xml" --target "${{env.SOLUTION_FILE_PATH}}\Detours.sln" --useSuppressFile "${{env.SOLUTION_FILE_PATH}}\SuppressionFile.suppress" --configuration Debug --platform x86 --output "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug\results.plog" | |
- name: Analysis Debug (x86_64) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: | | |
mkdir "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug" | |
python "C:\PVS-Studio_Cmd.py" --settings "C:\Settings.xml" --target "${{env.SOLUTION_FILE_PATH}}\Detours.sln" --useSuppressFile "${{env.SOLUTION_FILE_PATH}}\SuppressionFile.suppress" --configuration Debug --platform x64 --output "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug\results.plog" | |
- name: Analysis Release (x86) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: | | |
mkdir "${{env.SOLUTION_FILE_PATH}}\build\x86\Release" | |
python "C:\PVS-Studio_Cmd.py" --settings "C:\Settings.xml" --target "${{env.SOLUTION_FILE_PATH}}\Detours.sln" --useSuppressFile "${{env.SOLUTION_FILE_PATH}}\SuppressionFile.suppress" --configuration Release --platform x86 --output "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug\results.plog" | |
- name: Analysis Release (x86_64) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: | | |
mkdir "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Release" | |
python "C:\PVS-Studio_Cmd.py" --settings "C:\Settings.xml" --target "${{env.SOLUTION_FILE_PATH}}\Detours.sln" --useSuppressFile "${{env.SOLUTION_FILE_PATH}}\SuppressionFile.suppress" --configuration Release --platform x64 --output "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug\results.plog" | |
- name: Uploading results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Analysis | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.plog | |
if-no-files-found: error | |
building-debug-x86: | |
name: Building Debug (x86) | |
runs-on: windows-latest | |
needs: analysis | |
steps: | |
- uses: actions/[email protected] | |
- name: Add MSBuild to PATH | |
uses: microsoft/[email protected] | |
- name: Restore NuGet packages | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: dotnet restore ${{env.SOLUTION_FILE_PATH}} | |
- name: Building Debug (x86) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: msbuild /m /p:Configuration=Debug /p:Platform=x86 ${{env.SOLUTION_FILE_PATH}} | |
- name: Uploading build | |
uses: actions/upload-artifact@v4 | |
with: | |
name: BuildDebug32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.exe | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.pdb | |
if-no-files-found: error | |
building-debug-x86-64: | |
name: Building Debug (x86_64) | |
runs-on: windows-latest | |
needs: analysis | |
steps: | |
- uses: actions/[email protected] | |
- name: Add MSBuild to PATH | |
uses: microsoft/[email protected] | |
- name: Restore NuGet packages | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: dotnet restore ${{env.SOLUTION_FILE_PATH}} | |
- name: Building Debug (x86_64) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: msbuild /m /p:Configuration=Debug /p:Platform=x64 ${{env.SOLUTION_FILE_PATH}} | |
- name: Uploading build | |
uses: actions/upload-artifact@v4 | |
with: | |
name: BuildDebug64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.exe | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.pdb | |
if-no-files-found: error | |
building-release-x86: | |
name: Building Release (x86) | |
runs-on: windows-latest | |
needs: analysis | |
steps: | |
- uses: actions/[email protected] | |
- name: Add MSBuild to PATH | |
uses: microsoft/[email protected] | |
- name: Restore NuGet packages | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: dotnet restore ${{env.SOLUTION_FILE_PATH}} | |
- name: Building Release (x86) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: msbuild /m /p:Configuration=Release /p:Platform=x86 ${{env.SOLUTION_FILE_PATH}} | |
- name: Uploading build | |
uses: actions/upload-artifact@v4 | |
with: | |
name: BuildRelease32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.exe | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.pdb | |
if-no-files-found: error | |
building-release-x86-64: | |
name: Building Release (x86_64) | |
runs-on: windows-latest | |
needs: analysis | |
steps: | |
- uses: actions/[email protected] | |
- name: Add MSBuild to PATH | |
uses: microsoft/[email protected] | |
- name: Restore NuGet packages | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: dotnet restore ${{env.SOLUTION_FILE_PATH}} | |
- name: Building Release (x86_64) | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: msbuild /m /p:Configuration=Release /p:Platform=x64 ${{env.SOLUTION_FILE_PATH}} | |
- name: Uploading build | |
uses: actions/upload-artifact@v4 | |
with: | |
name: BuildRelease64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.exe | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.pdb | |
if-no-files-found: error | |
testing-debug: | |
name: Testing Debug | |
runs-on: self-hosted | |
needs: [ building-debug-x86, building-debug-x86-64 ] | |
steps: | |
- name: Downloading Debug (x86) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildDebug32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Downloading Debug (x86_64) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildDebug64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Testing Debug (x86) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\DeleakerConsole.py" --export-xml-report-on-exit "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug\report.xml" --run "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug\Detours.exe" | |
- name: Testing Debug (x86_64) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\DeleakerConsole.py" --export-xml-report-on-exit "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug\report.xml" --run "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug\Detours.exe" | |
- name: Uploading results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: DebugTesting | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.xml | |
if-no-files-found: error | |
testing-release: | |
name: Testing Release | |
runs-on: self-hosted | |
needs: [ testing-debug, building-release-x86, building-release-x86-64 ] | |
steps: | |
- name: Downloading Release (x86) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildRelease32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Downloading Release (x86_64) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildRelease64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Testing Release (x86) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: ${{env.SOLUTION_FILE_PATH}}\build\x86\Release\Detours.exe | |
- name: Testing Release (x86_64) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: ${{env.SOLUTION_FILE_PATH}}\build\x86_64\Release\Detours.exe | |
- name: Uploading results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ReleaseTesting | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.xml | |
if-no-files-found: error | |
checking-debug: | |
name: Checking Debug | |
runs-on: self-hosted | |
needs: testing-debug | |
steps: | |
- name: Downloading Debug (x86) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildDebug32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Downloading Debug (x86_64) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildDebug64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Checking Debug (x86) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\DeleakerConsole.py" --export-xml-report-on-exit "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug\report.xml" --run "${{env.SOLUTION_FILE_PATH}}\build\x86\Debug\Detours.exe" | |
- name: Checking Debug (x86_64) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\DeleakerConsole.py" --export-xml-report-on-exit "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug\report.xml" --run "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Debug\Detours.exe" | |
- name: Uploading results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: DebugChecking | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.xml | |
if-no-files-found: error | |
checking-release: | |
name: Checking Release | |
runs-on: self-hosted | |
needs: [ checking-debug, testing-release ] | |
steps: | |
- name: Downloading Release (x86) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildRelease32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Downloading Release (x86_64) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildRelease64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Checking Release (x86) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\DeleakerConsole.py" --export-xml-report-on-exit "${{env.SOLUTION_FILE_PATH}}\build\x86\Release\report.xml" --run "${{env.SOLUTION_FILE_PATH}}\build\x86\Release\Detours.exe" | |
- name: Checking Release (x86_64) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\DeleakerConsole.py" --export-xml-report-on-exit "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Release\report.xml" --run "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Release\Detours.exe" | |
- name: Uploading results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ReleaseChecking | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\*.xml | |
if-no-files-found: error | |
signing: | |
name: Signing Release | |
runs-on: self-hosted | |
needs: checking-release | |
steps: | |
- name: Downloading Release (x86) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildRelease32 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Downloading Release (x86_64) | |
uses: actions/download-artifact@v4 | |
with: | |
name: BuildRelease64 | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build | |
- name: Signing Release (x86) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\SignExecutable.py" "${{env.SOLUTION_FILE_PATH}}\build\x86\Release\Detours.exe" | |
- name: Signing Release (x86_64) | |
if: always() | |
timeout-minutes: 3 | |
working-directory: ${{env.GITHUB_WORKSPACE}} | |
run: python "C:\SignExecutable.py" "${{env.SOLUTION_FILE_PATH}}\build\x86_64\Release\Detours.exe" | |
- name: Uploading Release | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Production | |
path: | | |
${{env.SOLUTION_FILE_PATH}}\build\**\Release\*.exe | |
if-no-files-found: error |