build2.yml 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. name: build2
  2. on:
  3. push:
  4. workflow_dispatch:
  5. env:
  6. HOME: "${{github.workspace}}\\home"
  7. jobs:
  8. build2:
  9. # Only set the topic `has-issrc-build2-env` if the secrets are available
  10. if: contains(github.event.repository.topics, 'has-issrc-build2-env') && github.ref != 'refs/heads/copilot-review'
  11. runs-on: windows-latest
  12. steps:
  13. - name: Checkout
  14. uses: actions/checkout@v3
  15. with:
  16. submodules: true
  17. - name: Setup MSBuild
  18. uses: microsoft/setup-msbuild@v2
  19. - name: Initialize build environment
  20. env:
  21. ISSRC_BUILD2_ENV_ZIP_PASSWORD: ${{ secrets.ISSRC_BUILD2_ENV_ZIP_PASSWORD }}
  22. ISSRC_BUILD2_ENV_ZIP_URL: ${{ secrets.ISSRC_BUILD2_ENV_ZIP_URL }}
  23. run: |
  24. (New-Object Net.WebClient).DownloadFile($env:ISSRC_BUILD2_ENV_ZIP_URL, "issrc-build-env.zip")
  25. & "C:\\Program Files\\7-Zip\\7z.exe" x -oissrc-build-env -p"$env:ISSRC_BUILD2_ENV_ZIP_PASSWORD" issrc-build-env.zip
  26. if (!(Test-Path issrc-build-env\bin\dcc32.exe)) {
  27. Write-Host "Failed to extract dcc32.exe"
  28. Exit 1
  29. }
  30. Remove-Item issrc-build-env.zip
  31. $DELPHIXEROOT = (Get-Item .\issrc-build-env).FullName
  32. "DELPHIXEROOT=$DELPHIXEROOT" | Out-File -NoNewline -Encoding ascii -Append "$env:GITHUB_ENV"
  33. "set BDS=$DELPHIXEROOT" | Out-File -Encoding ascii issrc-build-env\bin\rsvars.bat
  34. "set BDSCOMMONDIR=$DELPHIXEROOT" | Out-File -NoNewline -Encoding ascii -Append issrc-build-env\bin\rsvars.bat
  35. - name: Configure build
  36. run: |
  37. "set DELPHIXEROOT=$env:DELPHIXEROOT" | Out-File -Encoding ascii compilesettings.bat
  38. "set ISSIGTOOL_KEY_FILE=${{github.workspace}}\mykey.isprivatekey" | Out-File -NoNewline -Encoding ascii -Append compilesettings.bat
  39. "set HHCEXE=%ProgramFiles(x86)%\HTML Help Workshop\hhc.exe" | Out-File -NoNewline -Encoding ascii ISHelp\compilesettings.bat
  40. - name: Build issrc
  41. run: |
  42. .\build.bat
  43. - name: Clean up temporary files
  44. if: always()
  45. shell: bash
  46. run: |
  47. rm -rf mykey.isprivatekey