75 строки
2.6 KiB
YAML
75 строки
2.6 KiB
YAML
pool:
|
|
vmImage: 'windows-2022'
|
|
|
|
trigger:
|
|
branches:
|
|
include:
|
|
- master
|
|
- release/beta/*
|
|
- release/stable/*
|
|
|
|
pr:
|
|
branches:
|
|
include:
|
|
- master
|
|
- release/beta/*
|
|
- release/stable/*
|
|
|
|
variables:
|
|
DotNetVersion: 6.0.300
|
|
UnoCheck.Version: '1.3.1'
|
|
DotNet.Cli.Telemetry.OptOut: true
|
|
UnoCheck.Manifest: https://raw.githubusercontent.com/unoplatform/uno.check/c4e7effc6d2a1fe8c8c282572228733c471faaa4/manifests/uno.ui-preview.manifest.json
|
|
|
|
BuildConfiguration: 'Release'
|
|
|
|
steps:
|
|
- task: gitversion/setup@0
|
|
inputs:
|
|
versionSpec: '5.x'
|
|
|
|
- task: gitversion/execute@0
|
|
inputs:
|
|
updateAssemblyInfo: 'False'
|
|
useConfigFile: true
|
|
configFilePath: GitVersion.yml
|
|
displayName: Use GitVersion
|
|
|
|
## Required until .NET 6 installs properly on Windows using UseDotnet
|
|
- powershell: |
|
|
$ProgressPreference = 'SilentlyContinue'
|
|
Invoke-WebRequest -Uri "https://dot.net/v1/dotnet-install.ps1" -OutFile dotnet-install.ps1
|
|
& .\dotnet-install.ps1 -Version $(DotNetVersion) -InstallDir "$env:ProgramFiles\dotnet\" -Verbose
|
|
& dotnet --list-sdks
|
|
displayName: install .NET $(DotNetVersion)
|
|
errorActionPreference: stop
|
|
- powershell: |
|
|
& dotnet tool update --global uno.check --version $(UnoCheck.Version) --add-source https://api.nuget.org/v3/index.json
|
|
& uno-check --ci --non-interactive --fix --skip androidsdk --skip androidemulator --skip xcode --skip vswin --skip vsmac --manifest $(UnoCheck.Manifest)
|
|
displayName: Install .NET 6 Workloads
|
|
errorActionPreference: continue
|
|
ignoreLASTEXITCODE: true
|
|
|
|
- pwsh: |
|
|
dotnet msbuild UniversalImageLoader.sln /r /p:Configuration=$(BuildConfiguration) /p:GeneratePackageOnBuild=true /p:PackageOutputPath=$(Build.ArtifactStagingDirectory) /detailedsummary /bl:$(Build.ArtifactStagingDirectory)/msbuild.binlog
|
|
displayName: Build
|
|
|
|
- task: PowerShell@2
|
|
displayName: Authenticode Sign Packages
|
|
inputs:
|
|
filePath: build/Sign-Package.ps1
|
|
env:
|
|
SignClientUser: $(SignClientUser)
|
|
SignClientSecret: $(SignClientSecret)
|
|
SignPackageName: "Uno.PackageDiff"
|
|
SignPackageDescription: "Uno.PackageDiff"
|
|
ArtifactDirectory: $(build.artifactstagingdirectory)
|
|
condition: and(succeeded(), not(eq(variables['build.reason'], 'PullRequest')), not(eq(variables['SignClientSecret'], '')), not(eq(variables['SignClientUser'], '')))
|
|
|
|
- task: PublishBuildArtifacts@1
|
|
displayName: 'Publish Artifact: Binding.UniversalImageLoader'
|
|
condition: always()
|
|
inputs:
|
|
ArtifactName: Binding.UniversalImageLoader
|
|
|