2019-02-05 06:22:35 +03:00
|
|
|
trigger:
|
|
|
|
- master
|
2019-09-26 17:52:20 +03:00
|
|
|
- refs/tags/*
|
2019-09-24 02:34:44 +03:00
|
|
|
|
2019-02-05 06:22:35 +03:00
|
|
|
variables:
|
2019-12-22 23:18:14 +03:00
|
|
|
SKIASHARP_VERSION: 1.68.2
|
2019-02-11 21:21:23 +03:00
|
|
|
FEATURE_NAME_PREFIX: 'feature/'
|
2019-02-05 06:22:35 +03:00
|
|
|
VERBOSITY: normal
|
|
|
|
GIT_SHA: $(Build.SourceVersion)
|
|
|
|
GIT_BRANCH_NAME: $(Build.SourceBranchName)
|
2019-11-27 08:49:33 +03:00
|
|
|
BUILD_NUMBER: $[counter(format('{0}_{1}', variables['SKIASHARP_VERSION'], variables['Build.SourceBranch']), 1)]
|
2019-02-11 21:21:23 +03:00
|
|
|
FEATURE_NAME: ''
|
2019-11-27 08:49:33 +03:00
|
|
|
PREVIEW_LABEL: 'preview'
|
|
|
|
TIZEN_LINUX_PACKAGES: libxcb-xfixes0 libxcb-render-util0 libwebkitgtk-1.0-0 libxcb-image0 acl libsdl1.2debian libv4l-0 libxcb-randr0 libxcb-shape0 libxcb-icccm4 libsm6 gettext rpm2cpio cpio bridge-utils openvpn
|
|
|
|
MANAGED_LINUX_PACKAGES: ttf-ancient-fonts
|
2019-12-22 19:50:47 +03:00
|
|
|
MONO_VERSION_MACOS: 6_4_0
|
|
|
|
MONO_VERSION_LINUX: stable-xenial/snapshots/6.4.0
|
|
|
|
XCODE_VERSION: 11
|
|
|
|
DOTNET_VERSION: 3.0.x
|
2019-09-24 02:34:44 +03:00
|
|
|
CONFIGURATION: 'Release'
|
2019-12-22 19:50:47 +03:00
|
|
|
VM_IMAGE_WINDOWS_NATIVE: Hosted VS2017
|
|
|
|
VM_IMAGE_WINDOWS: Hosted Windows 2019 with VS2019
|
2019-09-24 02:34:44 +03:00
|
|
|
VM_IMAGE_MAC: Hosted macOS
|
|
|
|
VM_IMAGE_LINUX: Hosted Ubuntu 1604
|
|
|
|
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
|
|
|
|
|
|
|
|
# # To speed up builds when debugging DevOps
|
|
|
|
# DOWNLOAD_EXTERNALS: ''
|
2019-02-05 06:22:35 +03:00
|
|
|
|
2019-02-21 00:48:56 +03:00
|
|
|
resources:
|
|
|
|
repositories:
|
|
|
|
- repository: xamarin-templates
|
|
|
|
type: github
|
|
|
|
name: xamarin/yaml-templates
|
|
|
|
endpoint: xamarin
|
|
|
|
|
2019-07-13 06:14:48 +03:00
|
|
|
stages:
|
2019-11-27 08:49:33 +03:00
|
|
|
- stage: prepare
|
|
|
|
displayName: Prepare Build
|
|
|
|
jobs:
|
|
|
|
- job: prepare # Prepare Build
|
|
|
|
displayName: Prepare Build
|
|
|
|
pool:
|
|
|
|
name: $(VM_IMAGE_LINUX)
|
|
|
|
steps:
|
|
|
|
- checkout: none
|
|
|
|
- template: azure-templates-variables.yml
|
|
|
|
parameters:
|
|
|
|
updateBuild: true
|
|
|
|
|
2019-07-13 06:14:48 +03:00
|
|
|
- stage: native
|
|
|
|
displayName: Build Native
|
2019-11-27 08:49:33 +03:00
|
|
|
dependsOn: prepare
|
2019-07-13 06:14:48 +03:00
|
|
|
jobs:
|
|
|
|
# NATIVE JOBS - WINDOWS
|
2019-11-05 20:38:03 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|x86 (Windows)
|
2019-07-13 06:14:48 +03:00
|
|
|
parameters:
|
2019-11-05 20:38:03 +03:00
|
|
|
name: native_android_x86_windows
|
|
|
|
displayName: Build Native Android|x86 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-07-13 06:14:48 +03:00
|
|
|
target: externals-android
|
2019-11-05 20:38:03 +03:00
|
|
|
additionalArgs: --buildarch=x86
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|x64 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_android_x64_windows
|
|
|
|
displayName: Build Native Android|x64 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-android
|
|
|
|
additionalArgs: --buildarch=x64
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|arm (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_android_arm_windows
|
|
|
|
displayName: Build Native Android|arm (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-android
|
|
|
|
additionalArgs: --buildarch=arm
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|arm64 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_android_arm64_windows
|
|
|
|
displayName: Build Native Android|arm64 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-android
|
|
|
|
additionalArgs: --buildarch=arm64
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Tizen (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_tizen_windows
|
|
|
|
displayName: Build Native Tizen (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-07-13 06:14:48 +03:00
|
|
|
target: externals-tizen
|
2019-07-26 16:05:54 +03:00
|
|
|
condition: false # TODO: TIZEN INSTALL BUGS
|
2019-11-05 20:38:03 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native UWP|x86 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_uwp_x86_windows
|
|
|
|
displayName: Build Native UWP|x86 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-uwp
|
|
|
|
additionalArgs: --buildarch=x86
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native UWP|x64 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_uwp_x64_windows
|
|
|
|
displayName: Build Native UWP|x64 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-uwp
|
|
|
|
additionalArgs: --buildarch=x64
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native UWP|arm (Windows)
|
2019-07-13 06:14:48 +03:00
|
|
|
parameters:
|
2019-11-05 20:38:03 +03:00
|
|
|
name: native_uwp_arm_windows
|
|
|
|
displayName: Build Native UWP|arm (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-07-13 06:14:48 +03:00
|
|
|
target: externals-uwp
|
2019-11-05 20:38:03 +03:00
|
|
|
additionalArgs: --buildarch=arm
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native UWP|arm64 (Windows)
|
2019-07-13 06:14:48 +03:00
|
|
|
parameters:
|
2019-11-05 20:38:03 +03:00
|
|
|
name: native_uwp_arm64_windows
|
|
|
|
displayName: Build Native UWP|arm64 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-uwp
|
|
|
|
additionalArgs: --buildarch=arm64
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Win32|x86 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_win32_x86_windows
|
|
|
|
displayName: Build Native Win32|x86 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-11-05 20:38:03 +03:00
|
|
|
target: externals-windows
|
|
|
|
additionalArgs: --buildarch=x86
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Win32|x64 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_win32_x64_windows
|
|
|
|
displayName: Build Native Win32|x64 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-07-13 06:14:48 +03:00
|
|
|
target: externals-windows
|
2019-11-05 20:38:03 +03:00
|
|
|
additionalArgs: --buildarch=x64
|
2019-12-04 04:12:12 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native NanoServer|x64 (Windows)
|
|
|
|
parameters:
|
|
|
|
name: native_win32_x64_nanoserver_windows
|
|
|
|
displayName: Build Native NanoServer|x64 (Windows)
|
2019-12-22 19:50:47 +03:00
|
|
|
vmImage: $(VM_IMAGE_WINDOWS_NATIVE)
|
2019-12-04 04:12:12 +03:00
|
|
|
target: externals-nanoserver
|
|
|
|
additionalArgs: --buildarch=x64
|
|
|
|
preBuildSteps:
|
|
|
|
- pwsh: dotnet tool install -g nano-api-scan
|
|
|
|
displayName: Install nano-api-scan
|
2019-07-13 06:14:48 +03:00
|
|
|
# NATIVE JOBS - MAC
|
2019-11-05 20:38:03 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|x86 (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_android_x86_macos
|
|
|
|
displayName: Build Native Android|x86 (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-android
|
|
|
|
additionalArgs: --buildarch=x86
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|x64 (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_android_x64_macos
|
|
|
|
displayName: Build Native Android|x64 (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-android
|
|
|
|
additionalArgs: --buildarch=x64
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|arm (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_android_arm_macos
|
|
|
|
displayName: Build Native Android|arm (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-android
|
|
|
|
additionalArgs: --buildarch=arm
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Android|arm64 (macOS)
|
2019-07-13 06:14:48 +03:00
|
|
|
parameters:
|
2019-11-05 20:38:03 +03:00
|
|
|
name: native_android_arm64_macos
|
|
|
|
displayName: Build Native Android|arm64 (macOS)
|
2019-07-13 06:14:48 +03:00
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-android
|
2019-11-05 20:38:03 +03:00
|
|
|
additionalArgs: --buildarch=arm64
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native iOS (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_ios_macos
|
|
|
|
displayName: Build Native iOS (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-ios
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native macOS (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_macos_macos
|
|
|
|
displayName: Build Native macOS (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-macos
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Tizen (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_tizen_macos
|
|
|
|
displayName: Build Native Tizen (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-tizen
|
2019-07-26 16:05:54 +03:00
|
|
|
condition: false # TODO: TIZEN INSTALL BUGS
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native tvOS (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_tvos_macos
|
|
|
|
displayName: Build Native tvOS (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-tvos
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native watchOS (macOS)
|
|
|
|
parameters:
|
|
|
|
name: native_watchos_macos
|
|
|
|
displayName: Build Native watchOS (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: externals-watchos
|
|
|
|
# NATIVE JOBS - LINUX
|
2019-11-27 08:49:33 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Linux (Linux)
|
2019-07-13 06:14:48 +03:00
|
|
|
parameters:
|
|
|
|
name: native_linux_linux
|
|
|
|
displayName: Build Native Linux (Linux)
|
2019-09-24 02:34:44 +03:00
|
|
|
vmImage: $(VM_IMAGE_LINUX)
|
2019-11-27 08:49:33 +03:00
|
|
|
docker: scripts/Docker/ubuntu16/amd64
|
2019-07-13 06:14:48 +03:00
|
|
|
target: externals-linux
|
2019-12-04 04:12:12 +03:00
|
|
|
additionalArgs: --buildarch=x64
|
2019-11-27 08:49:33 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Linux [No Dependencies] (Linux)
|
2019-07-13 06:14:48 +03:00
|
|
|
parameters:
|
|
|
|
name: native_linux_nodependencies_linux
|
|
|
|
displayName: Build Native Linux [No Dependencies] (Linux)
|
2019-09-24 02:34:44 +03:00
|
|
|
vmImage: $(VM_IMAGE_LINUX)
|
2019-11-27 08:49:33 +03:00
|
|
|
docker: scripts/Docker/ubuntu16/amd64
|
2019-12-04 04:12:12 +03:00
|
|
|
target: externals-linuxnodeps
|
|
|
|
additionalArgs: --buildarch=x64
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Native Tizen (Linux)
|
|
|
|
parameters:
|
|
|
|
name: native_tizen_linux
|
|
|
|
displayName: Build Native Tizen (Linux)
|
|
|
|
vmImage: $(VM_IMAGE_LINUX)
|
|
|
|
packages: $(TIZEN_LINUX_PACKAGES)
|
|
|
|
target: externals-tizen
|
2019-02-06 01:00:48 +03:00
|
|
|
|
2019-07-13 06:14:48 +03:00
|
|
|
- stage: managed
|
|
|
|
displayName: Build Managed
|
|
|
|
dependsOn: native
|
|
|
|
jobs:
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Managed (Windows)
|
|
|
|
parameters:
|
|
|
|
name: managed_windows
|
|
|
|
displayName: Build Managed (Windows)
|
|
|
|
vmImage: $(VM_IMAGE_WINDOWS)
|
2019-12-04 04:12:12 +03:00
|
|
|
target: libs
|
|
|
|
additionalArgs: --exclusive
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
2019-11-05 20:38:03 +03:00
|
|
|
- native_android_x86_windows
|
|
|
|
- native_android_x64_windows
|
|
|
|
- native_android_arm_windows
|
|
|
|
- native_android_arm64_windows
|
2019-07-26 16:05:54 +03:00
|
|
|
# - native_tizen_windows
|
|
|
|
- native_tizen_linux
|
2019-11-05 20:38:03 +03:00
|
|
|
- native_uwp_x86_windows
|
|
|
|
- native_uwp_x64_windows
|
|
|
|
- native_uwp_arm_windows
|
|
|
|
- native_uwp_arm64_windows
|
|
|
|
- native_win32_x86_windows
|
|
|
|
- native_win32_x64_windows
|
2019-12-04 04:12:12 +03:00
|
|
|
- native_win32_x64_nanoserver_windows
|
2019-12-22 19:50:47 +03:00
|
|
|
preBuildSteps:
|
|
|
|
- pwsh: |
|
|
|
|
$uri = 'https://go.microsoft.com/fwlink/p/?LinkId=619296'
|
|
|
|
.\scripts\download-file.ps1 -Uri $uri -OutFile sdksetup.exe
|
|
|
|
.\sdksetup.exe /norestart /quiet | Out-Null
|
|
|
|
displayName: Install the Windows 10 SDK 10.0.10240
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Managed (macOS)
|
|
|
|
parameters:
|
|
|
|
name: managed_macos
|
|
|
|
displayName: Build Managed (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
2019-12-04 04:12:12 +03:00
|
|
|
target: libs
|
|
|
|
additionalArgs: --exclusive
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
2019-11-05 20:38:03 +03:00
|
|
|
- native_android_x86_macos
|
|
|
|
- native_android_x64_macos
|
|
|
|
- native_android_arm_macos
|
|
|
|
- native_android_arm64_macos
|
2019-07-13 06:14:48 +03:00
|
|
|
- native_ios_macos
|
|
|
|
- native_macos_macos
|
|
|
|
# - native_tizen_macos
|
|
|
|
- native_tizen_linux
|
|
|
|
- native_tvos_macos
|
|
|
|
- native_watchos_macos
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Managed (Linux)
|
|
|
|
parameters:
|
|
|
|
name: managed_linux
|
|
|
|
displayName: Build Managed (Linux)
|
|
|
|
vmImage: $(VM_IMAGE_LINUX)
|
|
|
|
packages: $(MANAGED_LINUX_PACKAGES)
|
2019-12-04 04:12:12 +03:00
|
|
|
target: libs
|
|
|
|
additionalArgs: --exclusive
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
|
|
|
- native_linux_linux
|
|
|
|
- native_linux_nodependencies_linux
|
|
|
|
- native_tizen_linux
|
2019-02-05 06:22:35 +03:00
|
|
|
|
2019-07-13 06:14:48 +03:00
|
|
|
- stage: package
|
|
|
|
displayName: Package NuGets
|
|
|
|
dependsOn: managed
|
|
|
|
jobs:
|
|
|
|
- template: azure-templates-bootstrapper.yml # Package NuGets
|
|
|
|
parameters:
|
|
|
|
name: package_windows
|
|
|
|
displayName: Package NuGets
|
|
|
|
vmImage: $(VM_IMAGE_WINDOWS)
|
2019-12-04 04:12:12 +03:00
|
|
|
target: nuget
|
|
|
|
additionalArgs: --packall=true --exclusive
|
2019-07-26 16:05:54 +03:00
|
|
|
shouldPublish: false
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
|
|
|
- managed_linux
|
|
|
|
- managed_macos
|
|
|
|
- managed_windows
|
|
|
|
postBuildSteps:
|
|
|
|
- task: PublishBuildArtifacts@1
|
2019-12-04 04:12:12 +03:00
|
|
|
displayName: Publish the native artifacts
|
2019-07-13 06:14:48 +03:00
|
|
|
inputs:
|
2019-12-04 04:12:12 +03:00
|
|
|
artifactName: native
|
2019-07-13 06:14:48 +03:00
|
|
|
pathToPublish: 'output/native'
|
2019-07-26 16:05:54 +03:00
|
|
|
- task: PublishBuildArtifacts@1
|
2019-12-04 04:12:12 +03:00
|
|
|
displayName: Publish the nuget artifacts
|
2019-07-13 06:14:48 +03:00
|
|
|
inputs:
|
2019-12-04 04:12:12 +03:00
|
|
|
artifactName: nuget
|
2019-07-26 16:05:54 +03:00
|
|
|
pathToPublish: 'output/nugets'
|
2019-02-05 06:22:35 +03:00
|
|
|
|
2019-02-15 00:04:20 +03:00
|
|
|
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
2019-07-13 06:14:48 +03:00
|
|
|
- stage: signing
|
2019-05-19 01:52:44 +03:00
|
|
|
displayName: Sign NuGets
|
|
|
|
dependsOn: package
|
2019-07-13 06:14:48 +03:00
|
|
|
condition: eq(variables['System.TeamProject'], 'devdiv')
|
|
|
|
jobs:
|
2019-09-24 02:34:44 +03:00
|
|
|
- template: sign-artifacts/jobs/v1.yml@xamarin-templates
|
|
|
|
parameters:
|
|
|
|
additionalConditions: eq(variables['Build.SourceBranch'], 'refs/heads/master')
|
2019-02-05 06:22:35 +03:00
|
|
|
|
2019-07-13 06:14:48 +03:00
|
|
|
- stage: tests
|
|
|
|
displayName: Run Tests
|
|
|
|
dependsOn: native
|
|
|
|
jobs:
|
|
|
|
- template: azure-templates-bootstrapper.yml # Tests (Windows)
|
|
|
|
parameters:
|
|
|
|
name: tests_windows
|
|
|
|
displayName: Tests (Windows)
|
|
|
|
vmImage: $(VM_IMAGE_WINDOWS)
|
|
|
|
retryCount: 3
|
|
|
|
target: tests
|
|
|
|
additionalArgs: --skipExternals="all"
|
|
|
|
shouldPublish: false
|
|
|
|
requiredArtifacts:
|
2019-11-05 20:38:03 +03:00
|
|
|
- native_win32_x86_windows
|
|
|
|
- native_win32_x64_windows
|
2019-12-04 04:12:12 +03:00
|
|
|
- native_win32_x64_nanoserver_windows
|
2019-07-13 06:14:48 +03:00
|
|
|
postBuildSteps:
|
|
|
|
- task: PublishTestResults@2
|
2019-09-24 02:34:44 +03:00
|
|
|
displayName: Publish the .NET Framework test results
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
testResultsFormat: xUnit
|
|
|
|
testResultsFiles: 'tests/SkiaSharp.Desktop.Tests/**/TestResults.xml'
|
|
|
|
testRunTitle: 'Windows .NET Framework Tests'
|
|
|
|
- task: PublishTestResults@2
|
|
|
|
displayName: Publish the .NET Core test results
|
2019-07-13 06:14:48 +03:00
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
testResultsFormat: xUnit
|
2019-09-24 02:34:44 +03:00
|
|
|
testResultsFiles: 'tests/SkiaSharp.NetCore.Tests/**/TestResults.xml'
|
|
|
|
testRunTitle: 'Windows .NET Core Tests'
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Tests (macOS)
|
|
|
|
parameters:
|
|
|
|
name: tests_macos
|
|
|
|
displayName: Tests (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
retryCount: 3
|
|
|
|
target: tests
|
|
|
|
additionalArgs: --skipExternals="all"
|
|
|
|
shouldPublish: false
|
|
|
|
requiredArtifacts:
|
|
|
|
- native_macos_macos
|
|
|
|
postBuildSteps:
|
|
|
|
- task: PublishTestResults@2
|
2019-09-24 02:34:44 +03:00
|
|
|
displayName: Publish the Mono test results
|
2019-07-13 06:14:48 +03:00
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
testResultsFormat: xUnit
|
2019-09-24 02:34:44 +03:00
|
|
|
testResultsFiles: 'tests/SkiaSharp.Desktop.Tests/**/TestResults.xml'
|
|
|
|
testRunTitle: 'macOS Mono Tests'
|
|
|
|
- task: PublishTestResults@2
|
|
|
|
displayName: Publish the .NET Core test results
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
testResultsFormat: xUnit
|
|
|
|
testResultsFiles: 'tests/SkiaSharp.NetCore.Tests/**/TestResults.xml'
|
|
|
|
testRunTitle: 'macOS .NET Core Tests'
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Tests (Linux)
|
|
|
|
parameters:
|
|
|
|
name: tests_linux
|
|
|
|
displayName: Tests (Linux)
|
|
|
|
vmImage: $(VM_IMAGE_LINUX)
|
|
|
|
packages: $(MANAGED_LINUX_PACKAGES)
|
|
|
|
retryCount: 3
|
|
|
|
target: tests
|
|
|
|
additionalArgs: --skipExternals="all"
|
|
|
|
shouldPublish: false
|
|
|
|
requiredArtifacts:
|
|
|
|
- native_linux_linux
|
2019-12-04 04:12:12 +03:00
|
|
|
- native_linux_nodependencies_linux
|
2019-07-13 06:14:48 +03:00
|
|
|
postBuildSteps:
|
|
|
|
- task: PublishTestResults@2
|
2019-09-24 02:34:44 +03:00
|
|
|
displayName: Publish the Mono test results
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
testResultsFormat: xUnit
|
|
|
|
testResultsFiles: 'tests/SkiaSharp.Desktop.Tests/**/TestResults.xml'
|
|
|
|
testRunTitle: 'Linux Mono Tests'
|
|
|
|
- task: PublishTestResults@2
|
|
|
|
displayName: Publish the .NET Core test results
|
2019-07-13 06:14:48 +03:00
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
testResultsFormat: xUnit
|
2019-09-24 02:34:44 +03:00
|
|
|
testResultsFiles: 'tests/SkiaSharp.NetCore.Tests/**/TestResults.xml'
|
|
|
|
testRunTitle: 'Linux .NET Core Tests'
|
2019-12-04 04:12:12 +03:00
|
|
|
# TODO: add tests for linux no dependencies
|
|
|
|
# TODO: add tests for windows nano server
|
2019-02-05 06:22:35 +03:00
|
|
|
|
2019-07-13 06:14:48 +03:00
|
|
|
- stage: samples
|
|
|
|
displayName: Build Samples
|
2019-07-23 04:02:20 +03:00
|
|
|
dependsOn: package
|
2019-07-13 06:14:48 +03:00
|
|
|
jobs:
|
|
|
|
- template: azure-templates-bootstrapper.yml # Build Samples (Windows)
|
|
|
|
parameters:
|
|
|
|
name: samples_windows
|
|
|
|
displayName: Build Samples (Windows)
|
|
|
|
vmImage: $(VM_IMAGE_WINDOWS)
|
|
|
|
target: samples
|
2019-07-26 16:05:54 +03:00
|
|
|
shouldPublish: false
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
2019-07-26 16:05:54 +03:00
|
|
|
- nuget
|
|
|
|
preBuildSteps:
|
2019-11-05 20:38:03 +03:00
|
|
|
- pwsh: |
|
2019-07-26 16:05:54 +03:00
|
|
|
New-Item '.\output\nugets\' -Type Directory -Force | Out-Null
|
|
|
|
Get-ChildItem '.\output\*.nupkg' | Move-Item -Destination '.\output\nugets\'
|
|
|
|
displayName: Copy the *.nupkgs into the correct folder for the samples
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Samples (macOS)
|
|
|
|
parameters:
|
|
|
|
name: samples_macos
|
|
|
|
displayName: Build Samples (macOS)
|
|
|
|
vmImage: $(VM_IMAGE_MAC)
|
|
|
|
target: samples
|
2019-07-26 16:05:54 +03:00
|
|
|
shouldPublish: false
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
2019-07-26 16:05:54 +03:00
|
|
|
- nuget
|
2019-07-13 06:14:48 +03:00
|
|
|
preBuildSteps:
|
|
|
|
- task: InstallAppleCertificate@2
|
|
|
|
inputs:
|
|
|
|
certSecureFile: 'SkiaSharp iOS Certificate.p12'
|
|
|
|
- task: InstallAppleCertificate@2
|
|
|
|
inputs:
|
|
|
|
certSecureFile: 'SkiaSharp Mac Certificate.p12'
|
|
|
|
- task: InstallAppleProvisioningProfile@1
|
|
|
|
inputs:
|
|
|
|
provProfileSecureFile: 'SkiaSharp iOS Provisioning.mobileprovision'
|
|
|
|
- task: InstallAppleProvisioningProfile@1
|
|
|
|
inputs:
|
|
|
|
provProfileSecureFile: 'SkiaSharp Mac Provisioning.provisionprofile'
|
|
|
|
- task: InstallAppleProvisioningProfile@1
|
|
|
|
inputs:
|
|
|
|
provProfileSecureFile: 'SkiaSharp tvOS Provisioning.mobileprovision'
|
2019-11-05 20:38:03 +03:00
|
|
|
- pwsh: |
|
2019-07-26 16:05:54 +03:00
|
|
|
New-Item '.\output\nugets\' -Type Directory -Force | Out-Null
|
|
|
|
Get-ChildItem '.\output\*.nupkg' | Move-Item -Destination '.\output\nugets\'
|
|
|
|
displayName: Copy the *.nupkgs into the correct folder for the samples
|
2019-07-13 06:14:48 +03:00
|
|
|
- template: azure-templates-bootstrapper.yml # Build Samples (Linux)
|
|
|
|
parameters:
|
|
|
|
name: samples_linux
|
|
|
|
displayName: Build Samples (Linux)
|
|
|
|
vmImage: $(VM_IMAGE_LINUX)
|
|
|
|
packages: $(MANAGED_LINUX_PACKAGES)
|
|
|
|
target: samples
|
2019-07-26 16:05:54 +03:00
|
|
|
shouldPublish: false
|
2019-07-13 06:14:48 +03:00
|
|
|
requiredArtifacts:
|
2019-07-26 16:05:54 +03:00
|
|
|
- nuget
|
|
|
|
preBuildSteps:
|
2019-11-05 20:38:03 +03:00
|
|
|
- pwsh: |
|
2019-07-26 16:05:54 +03:00
|
|
|
New-Item '.\output\nugets\' -Type Directory -Force | Out-Null
|
|
|
|
Get-ChildItem '.\output\*.nupkg' | Move-Item -Destination '.\output\nugets\'
|
|
|
|
displayName: Copy the *.nupkgs into the correct folder for the samples
|
|
|
|
postBuildSteps:
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
|
|
displayName: Publish the samples artifacts
|
2019-12-04 04:12:12 +03:00
|
|
|
condition: always()
|
2019-07-26 16:05:54 +03:00
|
|
|
inputs:
|
|
|
|
artifactName: samples
|
|
|
|
pathToPublish: 'output'
|
2019-11-27 19:47:17 +03:00
|
|
|
|
|
|
|
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
|
|
|
|
- stage: checks
|
|
|
|
displayName: Run Code Checks
|
|
|
|
dependsOn: prepare
|
|
|
|
jobs:
|
|
|
|
- template: azure-templates-bootstrapper.yml # Run Code Checks
|
|
|
|
parameters:
|
|
|
|
name: native_checks_windows
|
|
|
|
displayName: Run Code Checks
|
|
|
|
# condition: and(always(), eq('refs/heads/master', variables['Build.SourceBranch']))
|
|
|
|
vmImage: $(VM_IMAGE_WINDOWS)
|
2019-12-04 04:12:12 +03:00
|
|
|
target: git-sync-deps
|
2019-11-27 19:47:17 +03:00
|
|
|
shouldPublish: false
|
|
|
|
postBuildSteps:
|
|
|
|
- task: CredScan@2
|
|
|
|
displayName: Analyze source for credentials
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
toolMajorVersion: 'V2'
|
|
|
|
- task: PoliCheck@1
|
|
|
|
displayName: Run PoliCheck
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
inputType: 'Basic'
|
|
|
|
targetType: 'F'
|
|
|
|
- task: SdtReport@1
|
|
|
|
displayName: Create security analysis report
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
AllTools: false
|
|
|
|
APIScan: false
|
|
|
|
BinSkim: false
|
|
|
|
CodesignValidation: false
|
|
|
|
CredScan: true
|
|
|
|
FortifySCA: false
|
|
|
|
FxCop: false
|
|
|
|
ModernCop: false
|
|
|
|
MSRD: false
|
|
|
|
PoliCheck: true
|
|
|
|
RoslynAnalyzers: false
|
|
|
|
SDLNativeRules: false
|
|
|
|
Semmle: false
|
|
|
|
TSLint: false
|
|
|
|
ToolLogsNotFoundAction: 'Standard'
|
|
|
|
- task: PublishSecurityAnalysisLogs@3
|
|
|
|
displayName: Publish security analysis logs
|
|
|
|
condition: always()
|
|
|
|
- task: TSAUpload@1
|
|
|
|
displayName: Publish TSA logs
|
|
|
|
condition: always()
|
|
|
|
inputs:
|
|
|
|
tsaVersion: 'TsaV2'
|
|
|
|
codebase: 'NewOrUpdate'
|
|
|
|
tsaEnvironment: 'PROD'
|
|
|
|
codeBaseName: 'SkiaSharp_master'
|
|
|
|
notificationAlias: 'xamacomd@microsoft.com'
|
|
|
|
notifyAlwaysV2: false
|
|
|
|
instanceUrlForTsaV2: 'DEVDIV'
|
|
|
|
projectNameDEVDIV: 'DevDiv'
|
|
|
|
areaPath: 'DevDiv\Xamarin Tools and SDKs\Components'
|
|
|
|
iterationPath: 'DevDiv\OneVS'
|
|
|
|
uploadAPIScan: false
|
|
|
|
uploadBinSkim: false
|
|
|
|
uploadCredScan: true
|
|
|
|
uploadFortifySCA: false
|
|
|
|
uploadFxCop: false
|
|
|
|
uploadModernCop: false
|
|
|
|
uploadPoliCheck: true
|
|
|
|
uploadPREfast: false
|
|
|
|
uploadRoslyn: false
|
|
|
|
uploadTSLint: false
|
|
|
|
uploadAsync: true
|