2022-03-23 23:13:04 +03:00
|
|
|
jobs:
|
2022-03-23 23:21:38 +03:00
|
|
|
- job: Catalyst
|
2022-03-23 23:13:04 +03:00
|
|
|
|
|
|
|
pool:
|
2024-09-21 15:41:27 +03:00
|
|
|
vmImage: macOS-14
|
2022-03-23 23:13:04 +03:00
|
|
|
|
|
|
|
variables:
|
2024-09-21 06:43:30 +03:00
|
|
|
- name: XCODE_ROOT
|
2024-10-10 04:55:24 +03:00
|
|
|
value: '/Applications/Xcode_16.app'
|
2022-03-23 23:13:04 +03:00
|
|
|
- name: NUGET_PACKAGES
|
|
|
|
value: $(build.sourcesdirectory)/.nuget
|
|
|
|
- name: VersionCodeOffset
|
|
|
|
value: 400559 # last value for the APK release
|
2022-05-19 04:36:17 +03:00
|
|
|
- group: unoplatform.apple.ios.appstore.distribution
|
2022-03-23 23:13:04 +03:00
|
|
|
|
|
|
|
workspace:
|
|
|
|
clean: all
|
|
|
|
|
|
|
|
steps:
|
|
|
|
|
2024-02-14 15:35:52 +03:00
|
|
|
- template: build/uno-ci/dotnet-install-mac.yml
|
2022-03-23 23:13:04 +03:00
|
|
|
- template: build/uno-ci/canary-updater.yml
|
|
|
|
- template: build/uno-ci/gitversion.yml
|
|
|
|
- template: build/uno-ci/jdk-setup.yml
|
|
|
|
|
|
|
|
- task: InstallAppleCertificate@2
|
2022-05-19 04:36:17 +03:00
|
|
|
displayName: Install Certificate
|
2022-03-23 23:13:04 +03:00
|
|
|
inputs:
|
2022-05-19 04:36:17 +03:00
|
|
|
certSecureFile: UnoPlatform-Apple-Distribution.p12
|
|
|
|
certPwd: $(appleappstorecertificatepassword)
|
|
|
|
keychain: temp
|
2022-03-23 23:13:04 +03:00
|
|
|
|
|
|
|
- task: InstallAppleCertificate@2
|
2022-05-19 04:36:17 +03:00
|
|
|
displayName: Install Certificate
|
2022-03-23 23:13:04 +03:00
|
|
|
inputs:
|
2022-05-19 04:36:17 +03:00
|
|
|
certSecureFile: UnoPlatform-MacInstaller.p12
|
|
|
|
certPwd: $(appleappstorecertificatepassword)
|
|
|
|
keychain: temp
|
2022-03-23 23:13:04 +03:00
|
|
|
|
2024-09-21 06:27:14 +03:00
|
|
|
- task: InstallAppleProvisioningProfile@1
|
2022-03-23 23:13:04 +03:00
|
|
|
displayName: 'Install Apple Provisioning Profile'
|
|
|
|
inputs:
|
|
|
|
provisioningProfileLocation: 'secureFiles'
|
2022-05-19 04:36:17 +03:00
|
|
|
provProfileSecureFile: Uno_Calculator_Canary_Catalyst.provisionprofile # Located in the Library's secure files
|
|
|
|
|
|
|
|
- task: InstallAppleProvisioningProfile@1
|
|
|
|
displayName: 'Install Apple Provisioning Profile'
|
|
|
|
inputs:
|
|
|
|
provisioningProfileLocation: 'secureFiles'
|
|
|
|
provProfileSecureFile: Uno_Calculator_catalyst.provisionprofile # Located in the Library's secure files
|
2024-09-21 15:41:27 +03:00
|
|
|
|
|
|
|
- template: build/uno-ci/xcode-select.yml
|
|
|
|
parameters:
|
|
|
|
xCodeRoot: $(XCODE_ROOT)
|
2022-03-23 23:13:04 +03:00
|
|
|
|
|
|
|
- bash: |
|
|
|
|
cd $(build.sourcesdirectory)/src/CalcManager
|
|
|
|
chmod +x build_catalyst.sh
|
|
|
|
./build_catalyst.sh
|
|
|
|
|
|
|
|
displayName: Build native CalcManager
|
|
|
|
|
|
|
|
- task: MSBuild@1
|
|
|
|
inputs:
|
|
|
|
solution: '$(build.sourcesdirectory)/src/build/build.csproj'
|
|
|
|
msbuildLocationMethod: version
|
|
|
|
msbuildVersion: latest
|
|
|
|
msbuildArchitecture: x86
|
|
|
|
msbuildArguments: /r /p:BuildPlatformTarget=iPhoneSimulator /bl:$(build.artifactstagingdirectory)/build.binlog
|
|
|
|
clean: false
|
|
|
|
maximumCpuCount: true
|
|
|
|
restoreNugetPackages: false
|
|
|
|
logProjectEvents: true
|
|
|
|
createLogFile: true
|
|
|
|
|
|
|
|
- bash: |
|
|
|
|
cd $(build.sourcesdirectory)/src/Calculator.mobile
|
2024-09-21 03:33:31 +03:00
|
|
|
dotnet build -f net9.0-maccatalyst -c Release /bl:$(build.artifactstagingdirectory)/build.binlog "/p:InformationalVersion=$GITVERSION_INFORMATIONALVERSION"
|
2022-03-23 23:13:04 +03:00
|
|
|
|
|
|
|
- task: CopyFiles@2
|
|
|
|
displayName: 'Publish Catalyst Binaries'
|
|
|
|
inputs:
|
2024-09-21 03:33:31 +03:00
|
|
|
SourceFolder: $(build.sourcesdirectory)/src/Calculator.Mobile/bin/Release/net9.0-maccatalyst/maccatalyst-x64
|
2022-05-19 04:36:17 +03:00
|
|
|
Contents: |
|
|
|
|
*.pkg
|
|
|
|
*.dSym/**
|
2022-03-23 23:13:04 +03:00
|
|
|
TargetFolder: $(build.artifactstagingdirectory)
|
|
|
|
CleanTargetFolder: false
|
|
|
|
OverWrite: false
|
|
|
|
flattenFolders: false
|
|
|
|
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
|
|
condition: always()
|
|
|
|
retryCountOnTaskFailure: 3
|
|
|
|
inputs:
|
|
|
|
PathtoPublish: $(build.artifactstagingdirectory)
|
2022-03-24 04:19:56 +03:00
|
|
|
ArtifactName: Uno-Calculator-catalyst
|
2022-03-23 23:13:04 +03:00
|
|
|
ArtifactType: Container
|