2020-09-29 13:15:20 +03:00
|
|
|
trigger:
|
|
|
|
branches:
|
|
|
|
include:
|
|
|
|
- main
|
2021-04-24 20:06:28 +03:00
|
|
|
- release/*
|
2021-03-11 19:23:29 +03:00
|
|
|
tags:
|
|
|
|
include:
|
|
|
|
- '*'
|
2020-09-29 13:15:20 +03:00
|
|
|
paths:
|
|
|
|
include:
|
|
|
|
- '*'
|
|
|
|
exclude:
|
|
|
|
- .github/*
|
|
|
|
- docs/*
|
|
|
|
- CODE-OF-CONDUCT.md
|
|
|
|
- CONTRIBUTING.md
|
|
|
|
- LICENSE.TXT
|
|
|
|
- PATENTS.TXT
|
|
|
|
- README.md
|
|
|
|
- SECURITY.md
|
|
|
|
- THIRD-PARTY-NOTICES.TXT
|
|
|
|
|
|
|
|
pr:
|
|
|
|
branches:
|
|
|
|
include:
|
|
|
|
- main
|
2021-04-24 21:19:50 +03:00
|
|
|
- release/*
|
2020-09-29 13:15:20 +03:00
|
|
|
paths:
|
|
|
|
include:
|
|
|
|
- '*'
|
|
|
|
exclude:
|
|
|
|
- .github/*
|
|
|
|
- docs/*
|
|
|
|
- CODE-OF-CONDUCT.md
|
|
|
|
- CONTRIBUTING.md
|
|
|
|
- LICENSE.TXT
|
|
|
|
- PATENTS.TXT
|
|
|
|
- README.md
|
|
|
|
- SECURITY.md
|
|
|
|
- THIRD-PARTY-NOTICES.TXT
|
|
|
|
|
|
|
|
schedules:
|
|
|
|
- cron: "0 0 * * *"
|
|
|
|
displayName: Daily midnight build
|
|
|
|
branches:
|
|
|
|
include:
|
|
|
|
- main
|
|
|
|
|
|
|
|
variables:
|
|
|
|
- template: /eng/pipelines/common/variables.yml
|
|
|
|
|
2021-03-17 05:35:08 +03:00
|
|
|
parameters:
|
|
|
|
- name: BuildEverything
|
|
|
|
type: boolean
|
|
|
|
default: false
|
|
|
|
- name: BuildConfigurations
|
|
|
|
type: object
|
|
|
|
default:
|
|
|
|
- Debug
|
|
|
|
- Release
|
|
|
|
- name: BuildPlatforms
|
|
|
|
type: object
|
|
|
|
default:
|
|
|
|
- name: windows
|
|
|
|
poolName: 'Azure Pipelines'
|
|
|
|
vmImage: windows-latest
|
|
|
|
bootsAndroid: $(Android.Msi)
|
|
|
|
bootsiOS: $(iOS.Msi)
|
|
|
|
artifact: net6-windows
|
|
|
|
- name: macos
|
|
|
|
poolName: $(macOSXNet6VmPool)
|
|
|
|
vmImage: $(macOSXNet6VmImage)
|
|
|
|
bootsAndroid: $(Android.Pkg)
|
|
|
|
bootsiOS: $(iOS.Pkg)
|
|
|
|
bootsMacCatalyst: $(MacCatalyst.Pkg)
|
|
|
|
artifact: net6-macos
|
|
|
|
- name: PackPlatforms
|
|
|
|
type: object
|
|
|
|
default:
|
|
|
|
- name: windows
|
|
|
|
poolName: 'Azure Pipelines'
|
|
|
|
vmImage: windows-latest
|
|
|
|
bootsAndroid: $(Android.Msi)
|
|
|
|
bootsiOS: $(iOS.Msi)
|
2021-04-07 01:16:25 +03:00
|
|
|
artifact: nuget
|
2021-03-17 05:35:08 +03:00
|
|
|
- name: macos
|
|
|
|
poolName: 'Azure Pipelines'
|
|
|
|
vmImage: macos-latest
|
|
|
|
bootsAndroid: $(Android.Pkg)
|
|
|
|
bootsiOS: $(iOS.Pkg)
|
|
|
|
bootsMacCatalyst: $(MacCatalyst.Pkg)
|
2021-04-07 01:16:25 +03:00
|
|
|
artifact: nuget-macos
|
2021-03-17 05:35:08 +03:00
|
|
|
|
2020-09-29 13:15:20 +03:00
|
|
|
resources:
|
|
|
|
repositories:
|
|
|
|
- repository: xamarin-templates
|
|
|
|
type: github
|
|
|
|
name: xamarin/yaml-templates
|
|
|
|
endpoint: xamarin
|
|
|
|
ref: refs/heads/main # still defaults to master even though main is the main branch
|
|
|
|
|
|
|
|
stages:
|
2021-03-17 05:35:08 +03:00
|
|
|
|
2020-09-29 13:15:20 +03:00
|
|
|
- stage: windows
|
|
|
|
displayName: Build Windows
|
|
|
|
jobs:
|
2021-03-17 05:35:08 +03:00
|
|
|
- ${{ each BuildCondition in parameters.BuildConfigurations }}:
|
|
|
|
- job: win_hosted_${{ BuildCondition }}
|
|
|
|
workspace:
|
|
|
|
clean: all
|
|
|
|
displayName: Build Windows Phase (${{ BuildCondition }})
|
|
|
|
condition: or(
|
|
|
|
${{ parameters.BuildEverything }},
|
|
|
|
ne(variables['Build.Reason'], 'PullRequest'),
|
|
|
|
eq('${{ BuildCondition }}', 'Release'))
|
|
|
|
timeoutInMinutes: 60
|
|
|
|
pool:
|
|
|
|
name: $(vs2019VmPool)
|
|
|
|
vmImage: $(vs2019VmImage)
|
|
|
|
demands: [ msbuild ]
|
|
|
|
steps:
|
|
|
|
- template: common/build-windows.yml
|
2021-03-02 20:36:17 +03:00
|
|
|
|
2021-05-05 00:05:54 +03:00
|
|
|
# - stage: windows_controlgallery
|
|
|
|
# displayName: Build Windows ControlGallery
|
|
|
|
# dependsOn: []
|
|
|
|
# jobs:
|
|
|
|
# - ${{ each BuildCondition in parameters.BuildConfigurations }}:
|
|
|
|
# - job: win_hosted_${{ BuildCondition }}
|
|
|
|
# workspace:
|
|
|
|
# clean: all
|
|
|
|
# displayName: Build Windows Phase (${{ BuildCondition }})
|
|
|
|
# condition: or(
|
|
|
|
# ${{ parameters.BuildEverything }},
|
|
|
|
# ne(variables['Build.Reason'], 'PullRequest'),
|
|
|
|
# eq('${{ BuildCondition }}', 'Release'))
|
|
|
|
# timeoutInMinutes: 60
|
|
|
|
# pool:
|
|
|
|
# name: $(vs2019VmPool)
|
|
|
|
# vmImage: $(vs2019VmImage)
|
|
|
|
# demands: [ msbuild ]
|
|
|
|
# steps:
|
|
|
|
# - template: common/controlgallery-windows.yml
|
|
|
|
|
2021-03-17 19:27:38 +03:00
|
|
|
- stage: build_osx
|
|
|
|
displayName: iOS
|
|
|
|
dependsOn: []
|
|
|
|
jobs:
|
|
|
|
- job: ios
|
|
|
|
workspace:
|
|
|
|
clean: all
|
|
|
|
displayName: Build ControlGallery iOS
|
|
|
|
timeoutInMinutes: 120
|
|
|
|
pool:
|
|
|
|
name: $(macOSXVmPool)
|
|
|
|
vmImage: $(macOSXVmImage)
|
|
|
|
demands:
|
|
|
|
- sh
|
|
|
|
- Xamarin.iOS
|
|
|
|
steps:
|
|
|
|
- template: common/controlgallery-ios.yml
|
|
|
|
|
2021-03-17 21:59:35 +03:00
|
|
|
- stage: build_android
|
|
|
|
displayName: Android
|
|
|
|
dependsOn: []
|
|
|
|
jobs:
|
|
|
|
- job: android
|
|
|
|
workspace:
|
|
|
|
clean: all
|
|
|
|
displayName: Build ControlGallery Android
|
|
|
|
timeoutInMinutes: 120
|
|
|
|
pool:
|
|
|
|
name: $(macOSXVmPool)
|
|
|
|
vmImage: $(macOSXVmImage)
|
|
|
|
variables:
|
|
|
|
renderers: 'FAST'
|
|
|
|
outputfolder: 'newRenderers'
|
|
|
|
steps:
|
|
|
|
- template: common/controlgallery-android.yml
|
|
|
|
|
2021-03-06 04:12:14 +03:00
|
|
|
- stage: pack_net6
|
|
|
|
displayName: Pack .NET 6
|
2021-03-02 20:36:17 +03:00
|
|
|
dependsOn: []
|
|
|
|
jobs:
|
2021-03-17 05:35:08 +03:00
|
|
|
- ${{ each BuildPlatform in parameters.PackPlatforms }}:
|
|
|
|
- job: pack_net6_${{ BuildPlatform.name }}
|
|
|
|
workspace:
|
|
|
|
clean: all
|
|
|
|
displayName: Pack .NET 6 (${{ BuildPlatform.name }})
|
|
|
|
timeoutInMinutes: 120
|
|
|
|
pool:
|
|
|
|
name: ${{ BuildPlatform.poolName }}
|
|
|
|
vmImage: ${{ BuildPlatform.vmImage }}
|
|
|
|
steps:
|
|
|
|
- ${{ if eq(BuildPlatform.name, 'macos') }}:
|
2021-04-28 22:29:13 +03:00
|
|
|
- task: xamops.azdevex.provisionator-task.provisionator@1
|
|
|
|
displayName: 'Provision Xcode'
|
|
|
|
condition: ne(variables['REQUIRED_XCODE'], '')
|
|
|
|
inputs:
|
|
|
|
provisioning_script: $(provisionator.xcode)
|
|
|
|
|
|
|
|
- task: xamops.azdevex.provisionator-task.provisionator@1
|
|
|
|
displayName: 'Provisionator'
|
|
|
|
condition: eq(variables['provisioning'], 'true')
|
|
|
|
inputs:
|
|
|
|
provisioning_script: $(provisionator.xcode)
|
|
|
|
provisioning_extra_args: $(provisionator.extraArguments)
|
|
|
|
|
|
|
|
- script: |
|
|
|
|
echo "##vso[task.prependpath]/Library/Frameworks/Mono.framework/Versions/Current/Commands/"
|
|
|
|
echo "##vso[task.prependpath]~/Library/Developer/Xamarin/android-sdk-macosx"
|
|
|
|
displayName: 'Setup SDK Paths'
|
|
|
|
condition: ne(variables['osx2019VmPool'], 'Azure Pipelines')
|
|
|
|
|
2021-03-17 05:35:08 +03:00
|
|
|
- bash: |
|
|
|
|
set -x
|
|
|
|
mkdir -p ~/Library/Preferences/Xamarin
|
|
|
|
rm -f ~/Library/Preferences/Xamarin/Settings.plist
|
|
|
|
/usr/libexec/PlistBuddy -c "add :AppleSdkRoot string $(dirname $(dirname $(xcode-select -p)))" ~/Library/Preferences/Xamarin/Settings.plist || true
|
|
|
|
cat ~/Library/Preferences/Xamarin/Settings.plist || true
|
|
|
|
displayName: configure vsmac xcode
|
2021-05-06 21:30:49 +03:00
|
|
|
|
[build] Update to .NET 6 Preview 4 (#796)
* [build] Update to .NET 6 Preview 4
Brings in Preview 4 updates for the Android, MaciOS, and .NET SDks.
Initial build attempts were failing with hundreds of errors:
D:\a\1\s\src\Essentials\src\Connectivity\Connectivity.ios.tvos.macos.cs(12,70): error BI1234: 'CTCellularData' is obsolete: 'Starting with ios14.0 Use the 'CallKit' API instead.' [D:\a\1\s\src\Essentials\src\Essentials-net6.csproj]
D:\a\1\s\src\Essentials\src\Compass\Compass.ios.cs(31,6): error CA1416: This call site is reachable on: 'iOS' 13.6 and later. 'CLLocationManager.HeadingFilter' is only supported on: 'macos' 11.0 and later. [D:\a\1\s\src\Essentials\src\Essentials-net6.csproj]
D:\a\1\s\src\Core\src\Platform\MaciOS\ColorExtensions.cs(64,13): error CA1416: This call site is reachable on: 'MacCatalyst' 13.5 and later. 'UIColor.SystemBackgroundColor.get' is supported on: 'ios' 13.0 and later. [D:\a\1\s\src\Core\src\Core-net6.csproj]
CSC : error AD0001: Analyzer 'Microsoft.NetCore.Analyzers.InteropServices.PlatformCompatibilityAnalyzer' threw an exception of type 'System.NullReferenceException' with message 'Object reference not set to an instance of an object.'. [D:\a\1\s\src\BlazorWebView\src\core\Microsoft.AspNetCore.Components.WebView.Maui.csproj]
The [platform compatibility analyzer][0] has been disabled for now, and
it can be enabled locally to work through the few hundred errors in
future PRs.
Once these issues were sorted, there were a handful of other breaks
that I've attempted to fix:
D:\a\1\s\src\Essentials\src\AssemblyInfo\AssemblyInfo.ios.tvos.watchos.macos.cs(3,12): error CS0618: 'LinkerSafeAttribute' is obsolete: 'Replace with '[assembly: System.Reflection.AssemblyMetadata ("IsTrimmable", "True")]'.' [D:\a\1\s\src\Essentials\src\Essentials-net6.csproj]
D:\a\1\s\src\Compatibility\Core\src\iOS\Renderers\TabbedRenderer.cs(422,33): error CS1503: Argument 1: cannot convert from 'UIKit.UIStringAttributes' to 'UIKit.UITextAttributes' [D:\a\1\s\src\Compatibility\Core\src\Compatibility-net6.csproj]
D:\a\1\s\src\Compatibility\Core\src\iOS\CollectionView\CarouselViewController.cs(106,23): error CS0114: 'CarouselViewController.DraggingStarted(UIScrollView)' hides inherited member 'UICollectionViewController.DraggingStarted(UIScrollView)'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword. [ D:\a\1\s\src\Compatibility\Core\src\Compatibility-net6.csproj]
D:\a\1\s\src\Compatibility\Core\src\iOS\CollectionView\CarouselViewController.cs(117,23): error CS0114: 'CarouselViewController.DraggingEnded(UIScrollView, bool)' hides inherited member 'UICollectionViewController.DraggingEnded(UIScrollView, bool)'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword. [ D:\a\1\s\src\Compatibility\Core\src\Compatibility-net6.csproj]
Finally it seems JDK 14 was being preferred on macOS machines in CI, so
I've set `$(JI_JAVA_HOME)` to the [pre-installed JDK 11][1].
[0]: https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1416
[1]: https://github.com/actions/virtual-environments/blob/macOS-10.15/20210419.2/images/macos/macos-10.15-Readme.md#java
* Apply feedback, bump p4 bits, provision xcode 12.5 rc
* Use Big Sur pool, clean up duplicate variable declaration
* Revert "Use Big Sur pool, clean up duplicate variable declaration"
This reverts commit b91482e10cdef99158e9060c9bf51298a74d89a8.
* Disable linker for ios and catalyst
Co-authored-by: Rui Marinho <me@ruimarinho.net>
2021-04-24 13:32:18 +03:00
|
|
|
- script: echo '##vso[task.setvariable variable=JI_JAVA_HOME]$(JAVA_HOME_11_X64)'
|
|
|
|
displayName: set JI_JAVA_HOME
|
2021-05-06 21:30:49 +03:00
|
|
|
|
|
|
|
- ${{ if eq(BuildPlatform.name, 'windows') }}:
|
|
|
|
- task: xamops.azdevex.provisionator-task.provisionator@1
|
|
|
|
displayName: 'Provision VSWindows'
|
|
|
|
inputs:
|
|
|
|
provisioning_script: $(provisionator.vs2019)
|
|
|
|
|
2021-05-05 00:05:54 +03:00
|
|
|
- script: dotnet tool restore
|
|
|
|
displayName: install dotnet tools
|
|
|
|
- script: dotnet cake --configuration=Release
|
2021-03-17 05:35:08 +03:00
|
|
|
displayName: pack nugets
|
|
|
|
- task: CopyFiles@2
|
|
|
|
displayName: 'Copy SignList.xml Files'
|
|
|
|
inputs:
|
|
|
|
Contents: |
|
2021-03-22 17:45:13 +03:00
|
|
|
**/Microsoft.Maui.*.nupkg
|
|
|
|
**/Microsoft.Maui.*.snupkg
|
2021-04-22 02:17:21 +03:00
|
|
|
**/Microsoft.AspNetCore.Components.WebView.Maui.*.nupkg
|
|
|
|
**/Microsoft.AspNetCore.Components.WebView.Maui.*.snupkg
|
2021-03-17 05:35:08 +03:00
|
|
|
**/SignList.xml
|
2021-05-05 00:05:54 +03:00
|
|
|
TargetFolder: $(build.artifactstagingdirectory)
|
|
|
|
flattenFolders: true
|
|
|
|
- task: CopyFiles@2
|
|
|
|
displayName: 'Copy Bin Log Files'
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
Contents: |
|
2021-04-28 04:18:50 +03:00
|
|
|
**/*.binlog
|
2021-03-17 05:35:08 +03:00
|
|
|
TargetFolder: $(build.artifactstagingdirectory)
|
|
|
|
flattenFolders: true
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
|
|
condition: always()
|
|
|
|
displayName: publish artifacts
|
|
|
|
inputs:
|
|
|
|
ArtifactName: ${{ BuildPlatform.artifact }}
|
2021-03-06 04:12:14 +03:00
|
|
|
|
|
|
|
- stage: build_net6
|
|
|
|
displayName: Build .NET 6
|
2021-02-11 01:24:09 +03:00
|
|
|
dependsOn: []
|
|
|
|
jobs:
|
2021-03-17 05:35:08 +03:00
|
|
|
- ${{ each BuildPlatform in parameters.BuildPlatforms }}:
|
|
|
|
- ${{ each BuildCondition in parameters.BuildConfigurations }}:
|
|
|
|
- job: build_net6_${{ BuildPlatform.name }}_${{ BuildCondition }}
|
|
|
|
workspace:
|
|
|
|
clean: all
|
|
|
|
displayName: Build .NET 6 (${{ BuildPlatform.name }} | ${{ BuildCondition }})
|
|
|
|
timeoutInMinutes: 120
|
|
|
|
condition: or(
|
|
|
|
${{ parameters.BuildEverything }},
|
|
|
|
ne(variables['Build.Reason'], 'PullRequest'),
|
2021-03-25 17:02:01 +03:00
|
|
|
eq('${{ BuildCondition }}', 'Release'))
|
2021-03-17 05:35:08 +03:00
|
|
|
pool:
|
|
|
|
name: ${{ BuildPlatform.poolName }}
|
|
|
|
vmImage: ${{ BuildPlatform.vmImage }}
|
|
|
|
steps:
|
|
|
|
- ${{ if eq(BuildPlatform.name, 'macos') }}:
|
2021-04-28 22:29:13 +03:00
|
|
|
- task: xamops.azdevex.provisionator-task.provisionator@1
|
|
|
|
displayName: 'Provision Xcode'
|
|
|
|
condition: ne(variables['REQUIRED_XCODE'], '')
|
|
|
|
inputs:
|
|
|
|
provisioning_script: $(provisionator.xcode)
|
|
|
|
|
|
|
|
- task: xamops.azdevex.provisionator-task.provisionator@1
|
|
|
|
displayName: 'Provisionator'
|
|
|
|
condition: eq(variables['provisioning'], 'true')
|
|
|
|
inputs:
|
|
|
|
provisioning_script: $(provisionator.xcode)
|
|
|
|
provisioning_extra_args: $(provisionator.extraArguments)
|
|
|
|
|
|
|
|
- script: |
|
|
|
|
echo "##vso[task.prependpath]/Library/Frameworks/Mono.framework/Versions/Current/Commands/"
|
|
|
|
echo "##vso[task.prependpath]~/Library/Developer/Xamarin/android-sdk-macosx"
|
|
|
|
displayName: 'Setup SDK Paths'
|
|
|
|
condition: ne(variables['osx2019VmPool'], 'Azure Pipelines')
|
|
|
|
|
2021-03-17 05:35:08 +03:00
|
|
|
- bash: |
|
|
|
|
set -x
|
|
|
|
mkdir -p ~/Library/Preferences/Xamarin
|
|
|
|
rm -f ~/Library/Preferences/Xamarin/Settings.plist
|
|
|
|
/usr/libexec/PlistBuddy -c "add :AppleSdkRoot string $(dirname $(dirname $(xcode-select -p)))" ~/Library/Preferences/Xamarin/Settings.plist || true
|
|
|
|
cat ~/Library/Preferences/Xamarin/Settings.plist || true
|
|
|
|
displayName: configure vsmac xcode
|
[build] Update to .NET 6 Preview 4 (#796)
* [build] Update to .NET 6 Preview 4
Brings in Preview 4 updates for the Android, MaciOS, and .NET SDks.
Initial build attempts were failing with hundreds of errors:
D:\a\1\s\src\Essentials\src\Connectivity\Connectivity.ios.tvos.macos.cs(12,70): error BI1234: 'CTCellularData' is obsolete: 'Starting with ios14.0 Use the 'CallKit' API instead.' [D:\a\1\s\src\Essentials\src\Essentials-net6.csproj]
D:\a\1\s\src\Essentials\src\Compass\Compass.ios.cs(31,6): error CA1416: This call site is reachable on: 'iOS' 13.6 and later. 'CLLocationManager.HeadingFilter' is only supported on: 'macos' 11.0 and later. [D:\a\1\s\src\Essentials\src\Essentials-net6.csproj]
D:\a\1\s\src\Core\src\Platform\MaciOS\ColorExtensions.cs(64,13): error CA1416: This call site is reachable on: 'MacCatalyst' 13.5 and later. 'UIColor.SystemBackgroundColor.get' is supported on: 'ios' 13.0 and later. [D:\a\1\s\src\Core\src\Core-net6.csproj]
CSC : error AD0001: Analyzer 'Microsoft.NetCore.Analyzers.InteropServices.PlatformCompatibilityAnalyzer' threw an exception of type 'System.NullReferenceException' with message 'Object reference not set to an instance of an object.'. [D:\a\1\s\src\BlazorWebView\src\core\Microsoft.AspNetCore.Components.WebView.Maui.csproj]
The [platform compatibility analyzer][0] has been disabled for now, and
it can be enabled locally to work through the few hundred errors in
future PRs.
Once these issues were sorted, there were a handful of other breaks
that I've attempted to fix:
D:\a\1\s\src\Essentials\src\AssemblyInfo\AssemblyInfo.ios.tvos.watchos.macos.cs(3,12): error CS0618: 'LinkerSafeAttribute' is obsolete: 'Replace with '[assembly: System.Reflection.AssemblyMetadata ("IsTrimmable", "True")]'.' [D:\a\1\s\src\Essentials\src\Essentials-net6.csproj]
D:\a\1\s\src\Compatibility\Core\src\iOS\Renderers\TabbedRenderer.cs(422,33): error CS1503: Argument 1: cannot convert from 'UIKit.UIStringAttributes' to 'UIKit.UITextAttributes' [D:\a\1\s\src\Compatibility\Core\src\Compatibility-net6.csproj]
D:\a\1\s\src\Compatibility\Core\src\iOS\CollectionView\CarouselViewController.cs(106,23): error CS0114: 'CarouselViewController.DraggingStarted(UIScrollView)' hides inherited member 'UICollectionViewController.DraggingStarted(UIScrollView)'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword. [ D:\a\1\s\src\Compatibility\Core\src\Compatibility-net6.csproj]
D:\a\1\s\src\Compatibility\Core\src\iOS\CollectionView\CarouselViewController.cs(117,23): error CS0114: 'CarouselViewController.DraggingEnded(UIScrollView, bool)' hides inherited member 'UICollectionViewController.DraggingEnded(UIScrollView, bool)'. To make the current member override that implementation, add the override keyword. Otherwise add the new keyword. [ D:\a\1\s\src\Compatibility\Core\src\Compatibility-net6.csproj]
Finally it seems JDK 14 was being preferred on macOS machines in CI, so
I've set `$(JI_JAVA_HOME)` to the [pre-installed JDK 11][1].
[0]: https://docs.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1416
[1]: https://github.com/actions/virtual-environments/blob/macOS-10.15/20210419.2/images/macos/macos-10.15-Readme.md#java
* Apply feedback, bump p4 bits, provision xcode 12.5 rc
* Use Big Sur pool, clean up duplicate variable declaration
* Revert "Use Big Sur pool, clean up duplicate variable declaration"
This reverts commit b91482e10cdef99158e9060c9bf51298a74d89a8.
* Disable linker for ios and catalyst
Co-authored-by: Rui Marinho <me@ruimarinho.net>
2021-04-24 13:32:18 +03:00
|
|
|
- script: echo '##vso[task.setvariable variable=JI_JAVA_HOME]$(JAVA_HOME_11_X64)'
|
|
|
|
displayName: set JI_JAVA_HOME
|
2021-05-06 21:30:49 +03:00
|
|
|
|
|
|
|
- ${{ if eq(BuildPlatform.name, 'windows') }}:
|
|
|
|
- task: xamops.azdevex.provisionator-task.provisionator@1
|
|
|
|
displayName: 'Provision VSWindows'
|
|
|
|
inputs:
|
|
|
|
provisioning_script: $(provisionator.vs2019)
|
|
|
|
|
2021-03-17 05:35:08 +03:00
|
|
|
- pwsh: |
|
2021-03-22 13:16:06 +03:00
|
|
|
& dotnet build src/DotNet/DotNet.csproj -bl:$(LogDirectory)/$(BuildConfiguration)-dotnet.binlog
|
|
|
|
& $(DotNet.Path) build Microsoft.Maui.BuildTasks-net6.sln -c $(BuildConfiguration) -bl:$(LogDirectory)/$(BuildConfiguration)-buildtasks.binlog
|
|
|
|
& $(DotNet.Path) build Microsoft.Maui-net6.sln -c $(BuildConfiguration) -bl:$(LogDirectory)/$(BuildConfiguration).binlog
|
2021-03-17 05:35:08 +03:00
|
|
|
displayName: build samples
|
|
|
|
errorActionPreference: stop
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
|
|
condition: always()
|
|
|
|
displayName: publish artifacts
|
|
|
|
inputs:
|
|
|
|
ArtifactName: ${{ BuildPlatform.artifact }}
|
2021-03-04 22:41:31 +03:00
|
|
|
|
2021-03-05 04:45:21 +03:00
|
|
|
- template: common/device-tests.yml
|
|
|
|
parameters:
|
2021-03-17 05:35:08 +03:00
|
|
|
${{ if or(parameters.BuildEverything, ne(variables['Build.Reason'], 'PullRequest')) }}:
|
|
|
|
androidApiLevels: [ 30, 29, 21 ]
|
|
|
|
iosVersions: [ 'latest' ]
|
2021-03-05 04:45:21 +03:00
|
|
|
projects:
|
|
|
|
- name: essentials
|
|
|
|
desc: Essentials
|
|
|
|
android: $(System.DefaultWorkingDirectory)/src/Essentials/test/DeviceTests.Android/Essentials.DeviceTests.Android.csproj
|
|
|
|
ios: $(System.DefaultWorkingDirectory)/src/Essentials/test/DeviceTests.iOS/Essentials.DeviceTests.iOS.csproj
|
|
|
|
- name: core
|
|
|
|
desc: Core
|
|
|
|
android: $(System.DefaultWorkingDirectory)/src/Core/tests/DeviceTests.Android/Core.DeviceTests.Android.csproj
|
|
|
|
ios: $(System.DefaultWorkingDirectory)/src/Core/tests/DeviceTests.iOS/Core.DeviceTests.iOS.csproj
|
|
|
|
|
2021-03-17 05:35:08 +03:00
|
|
|
# only sign using the private server
|
2021-03-04 22:41:31 +03:00
|
|
|
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
|
|
|
- stage: nuget_signing
|
2021-03-06 04:36:17 +03:00
|
|
|
dependsOn: pack_net6
|
2021-03-04 22:41:31 +03:00
|
|
|
displayName: Sign Nuget
|
|
|
|
jobs:
|
|
|
|
- template: sign-artifacts/jobs/v2.yml@xamarin-templates
|
|
|
|
parameters:
|
|
|
|
teamName: Maui
|
|
|
|
usePipelineArtifactTasks: false
|
|
|
|
targetFolder: $(Build.ArtifactStagingDirectory)/nuget/signed
|
|
|
|
signedArtifactName: nuget
|
|
|
|
signedArtifactPath: signed
|
|
|
|
displayName: Sign Phase
|
2021-05-03 16:20:10 +03:00
|
|
|
condition: and(succeeded(), ne(variables['signVmImage'], ''), or(eq(variables['Sign'], 'true'), or(eq(variables['Build.SourceBranch'], 'refs/heads/main'), or(startsWith(variables['Build.SourceBranch'],'refs/tags/'), startsWith(variables['Build.SourceBranch'],'refs/heads/release/') ))))
|