diff --git a/.github/workflows/base-installer-cd.yml b/.github/workflows/base-installer-cd.yml index 2f388ad066..e1b173a515 100644 --- a/.github/workflows/base-installer-cd.yml +++ b/.github/workflows/base-installer-cd.yml @@ -1,4 +1,13 @@ name: Base Installer + +# Builds the FieldWorks Base Installers (On- and Offline) (x64). +# If `make_release` is true: +# - Uploads installers to https://flex-updates.s3.amazonaws.com/?prefix=jobs/FieldWorks-Win-all-Release-Base. +# - Tags the repository. +# - Creates a GitHub Release of the artifacts required for creating a patch installer on this base. +# Saves the build log as an artifact of the workflow run. +# Note: FW_BUILD_NUMBER is higher than GITHUB_RUN_NUMBER because it needs to be higher than the build number on artifacts from our previous system. + on: schedule: # Runs every Monday at 02:30 UTC (which is 6:30pm PST / 7:30pm PDT Sunday evening) @@ -94,14 +103,14 @@ jobs: fetch-depth: 0 path: 'Localizations/LCM' - - name: Download 461 targeting pack + - name: Download .NET 461 targeting pack uses: suisei-cn/actions-download-file@818d6b7dc8fe73f2f924b6241f2b1134ca1377d9 # 1.6.0 id: downloadfile # Remember to give an ID if you need the output filename with: url: "https://download.microsoft.com/download/F/1/D/F1DEB8DB-D277-4EF9-9F48-3A65D4D8F965/NDP461-DevPack-KB3105179-ENU.exe" target: public/ - - name: Install targeting pack + - name: Install .NET 461 targeting pack shell: cmd working-directory: public run: NDP461-DevPack-KB3105179-ENU.exe /q @@ -130,7 +139,7 @@ jobs: working-directory: Build run: build64.bat /t:WriteNonlocalDevelopmentPropertiesFile - - name: Build Debug and run tests + - name: Build and run tests id: build_installer shell: powershell run: | @@ -140,7 +149,7 @@ jobs: cd BuildDir md5sum *.exe > md5.txt - - name: Scan Debug Build Output + - name: Scan Build Output shell: powershell working-directory: Build run: | @@ -268,7 +277,7 @@ jobs: "proc_runner_zip=$(("${{ github.workspace }}/ProcRunner.zip") -replace '\\','/')" >> $env:GITHUB_OUTPUT - - name: Create Release and Upload artifacts + - name: Tag, Create Release, and Upload artifacts if: ${{ inputs.make_release == 'true' }} uses: softprops/action-gh-release@6cbd405e2c4e67a21c47fa9e383d020e4e28b836 with: diff --git a/.github/workflows/patch-installer-cd.yml b/.github/workflows/patch-installer-cd.yml index 2ba7939612..cdff425ac0 100644 --- a/.github/workflows/patch-installer-cd.yml +++ b/.github/workflows/patch-installer-cd.yml @@ -1,4 +1,11 @@ name: Patch Installer + +# Builds the FieldWorks Patch Installer on the specified `base_release` +# If `make_release` is true, uploads installers to https://flex-updates.s3.amazonaws.com/?prefix=jobs/FieldWorks-Win-all-Release-Patch. +# Saves the build log as an artifact of the workflow run. +# Note: FW_BUILD_NUMBER is higher than GITHUB_RUN_NUMBER because it needs to be higher than the build number on artifacts from our previous system. +# Note: FW_BUILD_NUMBER must be higher for patches than their base so that the patch is considered an upgrade. + on: push: branches: ["release/9.3"] @@ -30,7 +37,7 @@ on: # default should be changed to the most recent base release for the release cycle base_release: description: 'The github release for the base build artifacts' - default: 'build-1155' + default: 'build-1182' # When updating this, update fallbacks below, too. base_build_number: description: 'The base build number (only for bootstrapping, should be removed after 9.3 is the stable)' required: false @@ -64,6 +71,7 @@ jobs: $combined = $lastJenkins + $githubRun echo "Calculated build number: $combined" echo "FW_BUILD_NUMBER=$combined" >> $env:GITHUB_ENV + echo "BuildVersionSegment=$combined" >> $env:GITHUB_ENV - name: Checkout Files uses: actions/checkout@v4 @@ -141,7 +149,7 @@ jobs: - name: Import Base Build Artifacts shell: pwsh run: | - $release = "${{ inputs.base_release || 'build-1155' }}" + $release = "${{ inputs.base_release || 'build-1182' }}" $repo = "${{ github.repository }}" Write-Host "Downloading artifacts for release $release from $repo" @@ -254,12 +262,12 @@ jobs: if: ${{ (inputs.make_release || 'true') == 'true' }} shell: pwsh env: - BASE_RELEASE: ${{ inputs.base_release || 'build-1155' }} + BASE_RELEASE: ${{ inputs.base_release || 'build-1182' }} BASE_BUILD_NUMBER: ${{ inputs.base_build_number || '' }} run: | - # The github action base-installer-cd will make releases with a tag build-[build number] - # manually created releases with Jenkins artifacts need to use existing tags so we need - # to specify the base build number when we launch patches against Jenkins releases + # The github action base-installer-cd will make releases with a tag build-[build number]. + # Manually created releases with Jenkins artifacts need to use existing tags, so we need + # to specify the base build number when we launch patches against Jenkins releases. if ($env:BASE_BUILD_NUMBER -and $env:BASE_BUILD_NUMBER.Trim() -ne "") { $baseBuildNumber = "_b$($env:BASE_BUILD_NUMBER)" } elseif ($env:BASE_RELEASE -and $env:BASE_RELEASE.Trim() -ne "") { diff --git a/Build/Installer.targets b/Build/Installer.targets index e3a4bfbbb1..4ae2793e94 100644 --- a/Build/Installer.targets +++ b/Build/Installer.targets @@ -46,6 +46,8 @@ + 1 $(MajorVersionSegment)