2019-08-02 19:09:56 +03:00
trigger :
2021-05-10 19:33:23 +03:00
- main
2019-08-06 18:45:43 +03:00
- refs/tags/*
2022-03-04 23:23:31 +03:00
2020-03-09 22:43:27 +03:00
pr :
2021-05-10 19:33:23 +03:00
- main
2019-08-02 19:09:56 +03:00
resources :
repositories :
2019-08-29 15:27:25 +03:00
- repository : internal-templates
2019-08-02 19:09:56 +03:00
type : github
name : xamarin/yaml-templates
endpoint : xamarin
2020-12-10 13:21:59 +03:00
ref : refs/heads/main
2019-08-29 15:27:25 +03:00
- repository : components
type : github
name : xamarin/XamarinComponents
endpoint : xamarin
2021-05-10 19:33:23 +03:00
ref : refs/heads/main
2019-08-02 19:09:56 +03:00
2021-05-26 16:27:43 +03:00
variables :
2022-05-15 12:16:06 +03:00
DotNet6Version : 6.0 .300
2022-07-29 15:13:39 +03:00
DotNet6Source : https://aka.ms/dotnet6/nuget/index.json
NuGetOrgSource : https://api.nuget.org/v3/index.json
XamarinDotNetWorkloadSource : workloads.json # or url (check for recent versions - redth)
# https://aka.ms/dotnet/maui/6.0.400.json
2022-07-28 11:34:59 +03:00
# matching builds
2021-09-16 17:58:02 +03:00
# NOTE: there wasn't a public release of 16.11 for macOS
2022-07-28 11:34:59 +03:00
LegacyXamarinAndroidPkg : https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/6454390/6.0.4xx/0b8d593a61bb49120fdf817e8dfdbc4b33937772/xamarin.android-12.3.99.117.pkg
LegacyXamarinAndroidVsix : https://dl.internalx.com/vsts-devdiv/Xamarin.Android/public/6454390/6.0.4xx/0b8d593a61bb49120fdf817e8dfdbc4b33937772/Xamarin.Android.Sdk-12.3.99.117.vsix
2019-08-02 19:09:56 +03:00
jobs :
2022-03-01 18:44:03 +03:00
- template : .ci/build.v1.yml@components
2019-08-29 15:27:25 +03:00
parameters :
2019-08-30 17:24:00 +03:00
timeoutInMinutes : 360
2022-11-15 17:34:46 +03:00
areaPath : 'DevDiv\VS Client - Runtime SDKs\Android'
2022-07-28 11:34:59 +03:00
macosImage : 'macOS-12' # the name of the macOS VM image
# Monterey 20220728
2022-03-01 18:44:03 +03:00
windowsAgentPoolName : AzurePipelines-EO
windowsImage : ''
windowsImageOverride : AzurePipelinesWindows2019compliant
2022-03-04 23:23:31 +03:00
2022-07-28 11:34:59 +03:00
xcode : 13.3 .1
2019-08-29 15:27:25 +03:00
buildType : 'manifest'
2022-03-04 23:23:31 +03:00
linuxAgentPoolName : AzurePipelines-EO
linuxsImage : ''
linuxImageOverride : AzurePipelinesUbuntu20.04compliant
validPackagePrefixes :
2019-10-08 01:07:47 +03:00
# Preferred prefixes
- Xamarin
- Mono
# Other product prefixes
- SkiaSharp
- HarfBuzzSharp
- mdoc
# Historical prefixes
- Masonry
- GoogleGson
- AndroidEasingFunctions
2020-05-15 00:43:00 +03:00
- Square
2020-08-24 20:55:07 +03:00
- JakeWharton.Picasso2OkHttp3Downloader
2021-05-10 10:29:27 +03:00
- RecyclerViewAnimators
2021-05-11 10:45:12 +03:00
- GoogleGson
2021-05-26 16:27:43 +03:00
dotnet : $(DotNet6Version)
2020-09-22 11:02:11 +03:00
preBuildSteps :
2021-09-16 17:58:02 +03:00
- task : JavaToolInstaller@0
displayName : install JDK 11
inputs :
versionSpec : '11'
jdkArchitectureOption : 'x64'
jdkSourceOption : 'PreInstalled'
2020-09-22 11:02:11 +03:00
- pwsh : |
dotnet tool install --global boots
2021-05-26 16:27:43 +03:00
displayName : install .NET global tools
- pwsh : |
boots $(XamarinAndroidPkg)
2020-09-22 11:02:11 +03:00
condition : eq(variables['System.JobName'], 'macos')
2021-05-26 16:27:43 +03:00
displayName : install Xamarin.Android
2020-09-22 11:02:11 +03:00
- pwsh : |
2021-05-26 16:27:43 +03:00
boots $(XamarinAndroidVsix)
2020-09-22 11:02:11 +03:00
condition : eq(variables['System.JobName'], 'windows')
2021-05-26 16:27:43 +03:00
displayName : install Xamarin.Android
- pwsh : |
2022-07-29 15:13:39 +03:00
dotnet workload update --verbosity diag --from-rollback-file $(XamarinDotNetWorkloadSource) --source $(Dotnet6Source) --source $(NuGetOrgSource)
dotnet workload install android --verbosity diag --skip-manifest-update --source $(Dotnet6Source) --source $(NuGetOrgSource)
dotnet workload install maui --verbosity diag --skip-manifest-update --source $(Dotnet6Source) --source $(NuGetOrgSource)
2021-05-26 16:27:43 +03:00
displayName : install .NET 6 Android Workload
condition : ne(variables['System.JobName'], 'linux')
2019-09-16 19:36:46 +03:00
tools :
2022-05-15 12:16:06 +03:00
- 'xamarin.androidbinderator.tool' : '0.5.4'
2022-07-28 11:34:59 +03:00
- 'xamarin.androidx.migration.tool' : '1.0.10'
2019-08-02 19:09:56 +03:00
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
2020-12-10 13:21:59 +03:00
- template : sign-artifacts/jobs/v2.yml@internal-templates
2019-08-29 15:27:25 +03:00
parameters :
2022-04-13 22:21:04 +03:00
dependsOn : [ 'build_linux' , 'build_macos' , 'windows' ]
2021-02-23 23:10:48 +03:00
condition : startsWith(variables['Build.SourceBranch'], 'refs/tags/')
2022-03-06 18:36:01 +03:00
# Executive Order (EO): Software Bill of Materials (SBOM): https://eng.ms/docs/cloud-ai-platform/devdiv/one-engineering-system-1es/1es-docs/secure-supply-chain/ado-sbom-generator
- template : compliance/sbom/job.v1.yml@internal-templates
parameters :
dependsOn : [ 'signing' ]
artifactNames : [ 'nuget-signed' ]
packageName: Xamarin.Components # SBOM package name. TODO: Customize for specific component : Replace with the name of the nuget package such as Square.Moshi.Adapters
packageVersionRegex: '' # SBOM package version. TODO: Customize for specific component : Regular expression used to glean the version number from the package name such as '(?i)^Square.Moshi.Adapters\.(?<version>\d+\.\d+\.\d+).nupkg$'
packageFilter : '*.nupkg'
condition : startsWith(variables['Build.SourceBranch'], 'refs/tags/')