Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 14 additions & 5 deletions .github/workflows/base-installer-cd.yml
Original file line number Diff line number Diff line change
@@ -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)
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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: |
Expand All @@ -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: |
Expand Down Expand Up @@ -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:
Expand Down
20 changes: 14 additions & 6 deletions .github/workflows/patch-installer-cd.yml
Original file line number Diff line number Diff line change
@@ -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"]
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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"
Expand Down Expand Up @@ -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 "") {
Expand Down
2 changes: 2 additions & 0 deletions Build/Installer.targets
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,8 @@
<Target Name="InstallerVersionNumbers" DependsOnTargets="VersionNumbers">
<PropertyGroup>
<!-- set default values for trailing version numbers -->
<!-- REVIEW (Hasso): is the base build number required to be 1 for WiX, too? Mismatched numbers is confusing, and having to maintain two numbers
has caused us to need a followup change for a patching bug fix (LT-22298) -->
<BuildVersionSegment Condition="'$(BuildVersionSegment)'==''">1</BuildVersionSegment> <!-- 1 is the base build number. It may be a NAnt thing... -->

<MajorVersion>$(MajorVersionSegment)</MajorVersion>
Expand Down
Loading