maui-linux/azure-pipelines.yml

139 строки
4.1 KiB
YAML

variables:
- name: DefaultBuildConfiguration
value: Debug
- name: DefaultBuildPlatform
value: 'any cpu'
- name: ApkName
value: AndroidControlGallery.AndroidControlGallery.apk
- name: IpaName
value: XamarinFormsControlGalleryiOS.ipa
- name: SolutionFile
value: Xamarin.Forms.sln
- name: BuildVersion
value: $[counter('$(Build.SourceBranchName)_counter', 1)]
- name: MONO_VERSION
value: 5_18_1
- name: XCODE_VERSION
value: 10.2
- name: NUGET_VERSION
value: 5.0.2
resources:
repositories:
- repository: xamarin-templates
type: github
name: xamarin/yaml-templates
endpoint: xamarin
trigger:
branches:
include:
- master
- 3.*
- 4.*
tags:
include:
- '*'
paths:
exclude:
- README.md
pr:
autoCancel: false
branches:
include:
- master
- 4.*
- 3.*
jobs:
- template: build/steps/build-windows.yml
parameters:
name: win
displayName: Build Windows Phase
vmImage: $(winVmImage)
targetFolder: Xamarin.Forms.ControlGallery.Android/legacyRenderers/
msbuildExtraArguments: '/nowarn:VSX1000 /p:CreateAllAndroidTargets=true /bl:$(Build.ArtifactStagingDirectory)\win.binlog'
buildConfiguration: $(DefaultBuildConfiguration)
buildPlatform: $(DefaultBuildPlatform)
- template: build/steps/build-android.yml
parameters:
name: android_legacy
displayName: Build Android [Legacy Renderers]
vmImage: $(macOSVmImage)
targetFolder: Xamarin.Forms.ControlGallery.Android/legacyRenderers/
androidProjectArguments: '/t:"Rebuild;SignAndroidPackage" /bl:$(Build.ArtifactStagingDirectory)\android-legacy.binlog'
buildConfiguration: $(DefaultBuildConfiguration)
- template: build/steps/build-android.yml
parameters:
name: android_preappcompact
displayName: Build Android [Pre-AppCompat]
vmImage: $(macOSVmImage)
targetFolder: Xamarin.Forms.ControlGallery.Android/preAppCompat
androidProjectArguments: '/t:"Rebuild;SignAndroidPackage" /p:DefineConstants="TRACE DEBUG FORMS_APPLICATION_ACTIVITY APP" /bl:$(Build.ArtifactStagingDirectory)\android-preappcompact.binlog'
buildConfiguration: $(DefaultBuildConfiguration)
- template: build/steps/build-android.yml
parameters:
name: android_fast
displayName: Build Android [Fast Renderers]
vmImage: $(macOSVmImage)
targetFolder: Xamarin.Forms.ControlGallery.Android/newRenderers/
androidProjectArguments: '/t:"Rebuild;SignAndroidPackage" /p:DefineConstants="TRACE DEBUG TEST_EXPERIMENTAL_RENDERERS APP" /bl:$(Build.ArtifactStagingDirectory)\android-newrenderers.binlog'
buildConfiguration: $(DefaultBuildConfiguration)
- job: osx
displayName: OSX Phase
pool:
name: $(macOSVmImage)
demands:
- Agent.OS -equals darwin
- sh
- msbuild
- Xamarin.iOS
variables:
provisioningOSX : $(provisioning)
provisionator.osxPath : 'build/provisioning/provisioning.csx'
provisionator.signPath : 'build/provisioning/provisioning_sign.csx'
buildConfiguration: $(DefaultBuildConfiguration)
slnPath: $(SolutionFile)
nugetVersion: $(NUGET_VERSION)
iOSCertSecureFileName: 'Xamarin Forms iOS Certificate.p12'
iOSProvisioningSecureFileName: 'Xamarin Forms iOS Provisioning.mobileprovision'
steps:
- template: build/steps/build-osx.yml
- job: nuget_pack
displayName: Nuget Phase
dependsOn:
- win
condition: succeeded()
pool:
name: $(winVmImage)
variables:
FormsIdAppend: ''
buildConfiguration: $(DefaultBuildConfiguration)
nugetVersion: $(NUGET_VERSION)
nugetPackageVersion : $[ dependencies.win.outputs['debug.winbuild.xamarinformspackageversion'] ]
steps:
- template: build/steps/build-nuget.yml
# only sign using the private server
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
- job: nuget_sign
displayName: Sign Phase
dependsOn: nuget_pack
pool:
name: $(signVmImage)
variables:
signBuild: $(Sign)
displayName: Sign Phase
steps:
- template: build/steps/build-sign.yml
condition: and(succeeded(), or(eq(variables['Sign'], 'true'), eq(variables['Build.SourceBranch'], 'refs/heads/master')))