uado/azure-pipelines.iOS.yml

88 строки
2.4 KiB
YAML

# iOS-only pipeline for internal iOS builds
trigger:
batch: true
branches:
include:
- master
pr:
branches:
include:
- master
jobs:
- job: macOS
pool:
name: Default
demands:
- Agent.OS -equals Darwin
- Xamarin.iOS -equals Latest
workspace:
clean: all
variables:
- name: UnoPackageOutputPath
value: $(Build.ArtifactStagingDirectory)
- group: 'iOS Signing'
strategy:
maxParallel: 1
matrix:
Release_iPhone:
BuildPlatform: iPhone
steps:
- task: InstallAppleCertificate@2
name: Certificate
inputs:
certSecureFile: 'nventive.p12'
certPwd: $(CertificatePassword)
- task: InstallAppleProvisioningProfile@1
name: Profile
inputs:
provProfileSecureFile: 'Universal_Azure_DevOps_Organizer.mobileprovision'
#Fixes gitversion task
- bash: |
shopt -s nullglob
function join_by { local IFS="$1"; shift; echo "$*"; }
lib_path=$(join_by ';' $(Agent.WorkFolder)/_tasks/GitVersion*/4.0.*/lib/osx)
echo LD_LIBRARY_PATH: $lib_path
echo "##vso[task.setvariable variable=LD_LIBRARY_PATH]$lib_path"
- task: gittools.gitversion.gitversion-task.GitVersion@4
- task: NuGetToolInstaller@0
inputs:
versionSpec: 4.9.1
- task: NuGetCommand@2
inputs:
command: restore
restoreSolution: src/Uno.AzureDevOps.sln
feedsToUse: select
- powershell: ((Get-Content src/Uno.AzureDevOps/Uno.AzureDevOps.Shared/Client/ClientConstants.cs -Raw) -Replace '--production-secret--','$(ProductionSecret)' -Replace '--staging-secret--','$(StagingSecret)').Trim() | Set-Content -Path src/Uno.AzureDevOps/Uno.AzureDevOps.Shared/Client/ClientConstants.cs -Encoding UTF8
displayName: Set client secrets
- powershell: ((Get-Content src\Uno.AzureDevOps\Uno.AzureDevOps.Shared\Client\ClientConstants.cs -Raw) -Replace '--appcenter-secret-ios--','$(AppCenterSecretiOS)').Trim() | Set-Content -Path src\Uno.AzureDevOps\Uno.AzureDevOps.Shared\Client\ClientConstants.cs -Encoding UTF8
displayName: Set AppCenter secret
- task: MSBuild@1
inputs:
solution: src/Uno.AzureDevOps.sln
configuration: Release
platform: $(BuildPlatform)
restoreNugetPackages: false
- task: PublishBuildArtifacts@1
inputs:
ArtifactName: $(BuildPlatform)
PathtoPublish: $(UnoPackageOutputPath)
publishLocation: Container