From: dpasukhi Date: Fri, 5 Dec 2025 23:13:07 +0000 (+0000) Subject: Testing - Update build-windows-packages workflow for OCCT version 7.9.3 X-Git-Tag: V7_9_3^0 X-Git-Url: http://git.dev.opencascade.org/gitweb/?a=commitdiff_plain;h=refs%2Fheads%2FOCCT-793;p=occt.git Testing - Update build-windows-packages workflow for OCCT version 7.9.3 - Bump OCCT version from 7.9.2 to 7.9.3. - Refactor file handling in the workflow to use Rename-Item instead of Copy-Item for better clarity and efficiency. - Update artifact paths to include the new version in the filenames. - Fix env.bat THIRDPARTY_DIR path for Debug builds to use a relative path. --- diff --git a/.github/workflows/build-windows-packages.yml b/.github/workflows/build-windows-packages.yml index 5efe5b54bb..71f69a8ae2 100644 --- a/.github/workflows/build-windows-packages.yml +++ b/.github/workflows/build-windows-packages.yml @@ -1,5 +1,5 @@ # This workflow builds OCCT Windows packages using prepared 3rd-party archives. -# It creates various package configurations (Release/Debug, with/without PCH) and signs DLLs. +# It creates various package configurations (Release/Debug, with/without PCH). # The workflow is designed to build each package variant on separate machines for optimal isolation. name: Build Windows Packages @@ -14,11 +14,9 @@ on: permissions: contents: read - id-token: write - attestations: write env: - OCCT_VERSION: '7.9.2' + OCCT_VERSION: '7.9.3' THIRDPARTY_URL: 'https://github.com/Open-Cascade-SAS/OCCT/releases/download/V7_9_0_beta1/3rdparty-vc14-64.zip' jobs: @@ -108,18 +106,13 @@ jobs: } shell: pwsh - - name: Sign Release DLLs with GitHub attestation - uses: actions/attest-build-provenance@v1 - with: - subject-path: '${{ github.workspace }}/occt-vc14-64/**/*.dll' - - name: Create OCCT Release package run: | $version = $env:OCCT_VERSION $folderName = "opencascade-$version-vc14-64" - Copy-Item occt-vc14-64 $folderName -Recurse + Rename-Item occt-vc14-64 $folderName Compress-Archive -Path $folderName -DestinationPath "$folderName.zip" - Remove-Item $folderName -Recurse -Force + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload OCCT Release package @@ -131,14 +124,19 @@ jobs: - name: Create combined package (Release + 3rd-party) run: | - Compress-Archive -Path 3rdparty-vc14-64,occt-vc14-64 -DestinationPath occt-vc14-64-combined.zip + $version = $env:OCCT_VERSION + $folderName = "opencascade-$version-vc14-64" + $thirdpartyName = "3rdparty-vc14-64" + Rename-Item occt-vc14-64 $folderName + Compress-Archive -Path $thirdpartyName,$folderName -DestinationPath "$folderName-combined.zip" + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload combined Release package uses: actions/upload-artifact@v4.4.3 with: name: occt-combined-release-no-pch - path: occt-vc14-64-combined.zip + path: opencascade-${{ env.OCCT_VERSION }}-vc14-64-combined.zip retention-days: 30 - name: Build and Install OCCT Debug (keeping Release files) @@ -147,18 +145,24 @@ jobs: cmake --build . --target install --config Debug shell: pwsh - - name: Sign Debug DLLs with GitHub attestation - uses: actions/attest-build-provenance@v1 - with: - subject-path: '${{ github.workspace }}/occt-vc14-64/**/*.dll' + - name: Fix env.bat THIRDPARTY_DIR path for Debug + run: | + $envBatPath = "${{ github.workspace }}/occt-vc14-64/env.bat" + if (Test-Path $envBatPath) { + $content = Get-Content $envBatPath -Raw + $content = $content -replace 'THIRDPARTY_DIR=.*3rdparty-vc14-64"', 'THIRDPARTY_DIR=..\3rdparty-vc14-64"' + Set-Content -Path $envBatPath -Value $content -NoNewline + Write-Host "Updated env.bat with relative THIRDPARTY_DIR path" + } + shell: pwsh - name: Create OCCT Release+Debug package run: | $version = $env:OCCT_VERSION $folderName = "opencascade-$version-vc14-64" - Copy-Item occt-vc14-64 $folderName -Recurse + Rename-Item occt-vc14-64 $folderName Compress-Archive -Path $folderName -DestinationPath "opencascade-$version-vc14-64-with-debug.zip" - Remove-Item $folderName -Recurse -Force + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload OCCT Release+Debug package @@ -170,14 +174,19 @@ jobs: - name: Create combined package (Release+Debug + 3rd-party) run: | - Compress-Archive -Path 3rdparty-vc14-64,occt-vc14-64 -DestinationPath occt-vc14-64-combined.zip -Force + $version = $env:OCCT_VERSION + $folderName = "opencascade-$version-vc14-64" + $thirdpartyName = "3rdparty-vc14-64" + Rename-Item occt-vc14-64 $folderName + Compress-Archive -Path $thirdpartyName,$folderName -DestinationPath "$folderName-with-debug-combined.zip" + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload combined Release+Debug package uses: actions/upload-artifact@v4.4.3 with: name: occt-combined-with-debug-no-pch - path: occt-vc14-64-combined.zip + path: opencascade-${{ env.OCCT_VERSION }}-vc14-64-with-debug-combined.zip retention-days: 30 # Build OCCT with PCH (Release + Debug) @@ -248,18 +257,13 @@ jobs: } shell: pwsh - - name: Sign Release DLLs with GitHub attestation - uses: actions/attest-build-provenance@v1 - with: - subject-path: '${{ github.workspace }}/occt-vc14-64/**/*.dll' - - name: Create OCCT Release PCH package run: | $version = $env:OCCT_VERSION $folderName = "opencascade-$version-vc14-64" - Copy-Item occt-vc14-64 $folderName -Recurse + Rename-Item occt-vc14-64 $folderName Compress-Archive -Path $folderName -DestinationPath "opencascade-$version-vc14-64-pch.zip" - Remove-Item $folderName -Recurse -Force + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload OCCT Release PCH package @@ -271,14 +275,19 @@ jobs: - name: Create combined PCH package (Release + 3rd-party) run: | - Compress-Archive -Path 3rdparty-vc14-64,occt-vc14-64 -DestinationPath occt-vc14-64-combined.zip + $version = $env:OCCT_VERSION + $folderName = "opencascade-$version-vc14-64" + $thirdpartyName = "3rdparty-vc14-64" + Rename-Item occt-vc14-64 $folderName + Compress-Archive -Path $thirdpartyName,$folderName -DestinationPath "$folderName-pch-combined.zip" + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload combined Release PCH package uses: actions/upload-artifact@v4.4.3 with: name: occt-combined-release-pch - path: occt-vc14-64-combined.zip + path: opencascade-${{ env.OCCT_VERSION }}-vc14-64-pch-combined.zip retention-days: 30 - name: Build and Install OCCT Debug (keeping Release files) @@ -287,18 +296,24 @@ jobs: cmake --build . --target install --config Debug shell: pwsh - - name: Sign Debug DLLs with GitHub attestation - uses: actions/attest-build-provenance@v1 - with: - subject-path: '${{ github.workspace }}/occt-vc14-64/**/*.dll' + - name: Fix env.bat THIRDPARTY_DIR path for Debug + run: | + $envBatPath = "${{ github.workspace }}/occt-vc14-64/env.bat" + if (Test-Path $envBatPath) { + $content = Get-Content $envBatPath -Raw + $content = $content -replace 'THIRDPARTY_DIR=.*3rdparty-vc14-64"', 'THIRDPARTY_DIR=..\3rdparty-vc14-64"' + Set-Content -Path $envBatPath -Value $content -NoNewline + Write-Host "Updated env.bat with relative THIRDPARTY_DIR path" + } + shell: pwsh - name: Create OCCT Release+Debug PCH package run: | $version = $env:OCCT_VERSION $folderName = "opencascade-$version-vc14-64" - Copy-Item occt-vc14-64 $folderName -Recurse + Rename-Item occt-vc14-64 $folderName Compress-Archive -Path $folderName -DestinationPath "opencascade-$version-vc14-64-pch-with-debug.zip" - Remove-Item $folderName -Recurse -Force + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload OCCT Release+Debug PCH package @@ -310,12 +325,17 @@ jobs: - name: Create combined PCH package (Release+Debug + 3rd-party) run: | - Compress-Archive -Path 3rdparty-vc14-64,occt-vc14-64 -DestinationPath occt-vc14-64-combined.zip -Force + $version = $env:OCCT_VERSION + $folderName = "opencascade-$version-vc14-64" + $thirdpartyName = "3rdparty-vc14-64" + Rename-Item occt-vc14-64 $folderName + Compress-Archive -Path $thirdpartyName,$folderName -DestinationPath "$folderName-pch-with-debug-combined.zip" + Rename-Item $folderName occt-vc14-64 shell: pwsh - name: Upload combined Release+Debug PCH package uses: actions/upload-artifact@v4.4.3 with: name: occt-combined-with-debug-pch - path: occt-vc14-64-combined.zip + path: opencascade-${{ env.OCCT_VERSION }}-vc14-64-pch-with-debug-combined.zip retention-days: 30