Uno.Playground/.vsts-qa.internal.yml

170 строки
4.2 KiB
YAML

variables:
NUGET_PACKAGES: $(Agent.WorkFolder)/.nuget
NUGET_HTTP_CACHE_PATH: $(Agent.WorkFolder)/.nuget-http-cache
UnoPackageOutputPath: $(Build.ArtifactStagingDirectory)/Packages
jobs:
- job: UWP
pool:
name: Default
demands:
- VS15.7.2
workspace:
clean: all
steps:
- checkout: self
clean: true
lfs: true
- task: DownloadSecureFile@1
inputs:
secureFile: 'b6a5d0ed-c041-44c7-8db9-9c127d0ae8a9'
- task: gittools.gitversion.gitversion-task.GitVersion@4
displayName: 'Generate version'
- task: NuGetToolInstaller@0
displayName: 'Install NuGet 4.7.0'
inputs:
versionSpec: 4.7.0
checkLatest: false
- task: NuGetCommand@2
displayName: 'Restore solution packages'
inputs:
command: restore
solution: src\Uno.Playground.sln
selectOrConfig: select
includeNuGetOrg: true
verbosityRestore: Normal
- task: MSBuild@1
displayName: 'Update version'
inputs:
solution: src\Build\Build.proj
msbuildLocationMethod: version
msbuildVersion: latest
msbuildArchitecture: x86
clean: false
maximumCpuCount: true
restoreNugetPackages: false
logProjectEvents: false
createLogFile: false
- task: MSBuild@1
displayName: 'Build solution'
inputs:
solution: src\Uno.Playground.sln
msbuildLocationMethod: version
msbuildVersion: latest
msbuildArchitecture: x86
msbuildArguments: /p:AndroidSigningKeyStore=$(DownloadSecureFile.SecureFilePath) /p:AndroidSigningKeyPass=$(AndroidSigningKeyPass) /p:AndroidSigningStorePass=$(AndroidSigningStorePass)
configuration: Release
platform: 'Any CPU'
clean: false
maximumCpuCount: true
restoreNugetPackages: false
logProjectEvents: false
createLogFile: false
- task: PublishBuildArtifacts@1
displayName: 'Publish artifacts'
condition: always()
inputs:
PathtoPublish: $(Build.ArtifactStagingDirectory)
ArtifactName: drop
ArtifactType: Container
- job: MacOS_Agent
pool:
name: Default
demands:
- Agent.OS -equals Darwin
- Xamarin.iOS -equals Latest
workspace:
clean: all
variables:
TargetProject: $(Build.SourcesDirectory)/src/Uno.Playground.iOS/Uno.Playground.iOS.csproj
steps:
- checkout: self
clean: true
lfs: true
#Fixes gitversion task
- bash: |
shopt -s nullglob
function join_by { local IFS="$1"; shift; echo "$*"; }
lib_path=$(join_by ';' $(Agent.WorkFolder)/_tasks/GitVersion*/4.0.*/lib/osx)
echo LD_LIBRARY_PATH: $lib_path
echo "##vso[task.setvariable variable=LD_LIBRARY_PATH]$lib_path"
- task: gittools.gitversion.gitversion-task.GitVersion@4
displayName: 'Generate version'
- task: NuGetToolInstaller@0
displayName: 'Install NuGet 4.7.0'
inputs:
versionSpec: 4.7.0
checkLatest: false
- task: NuGetCommand@2
displayName: 'Restore iOS packages'
inputs:
command: restore
solution: $(TargetProject)
selectOrConfig: select
includeNuGetOrg: true
verbosityRestore: Normal
noCache: true
- task: NuGetCommand@2
displayName: 'Restore build packages'
inputs:
command: restore
solution: $(Build.SourcesDirectory)/src/Build/Build.csproj
selectOrConfig: select
includeNuGetOrg: true
verbosityRestore: Normal
noCache: true
- task: MSBuild@1
displayName: 'Update version'
inputs:
solution: src/Build/build.proj
msbuildLocationMethod: version
msbuildVersion: latest
msbuildArchitecture: x86
msbuildArguments:
clean: false
maximumCpuCount: true
restoreNugetPackages: false
logProjectEvents: false
createLogFile: false
- task: MSBuild@1
displayName: 'Build iOS project'
inputs:
solution: $(TargetProject)
msbuildLocationMethod: version
msbuildVersion: latest
msbuildArchitecture: x86
configuration: Release
platform: iPhone
clean: false
maximumCpuCount: true
restoreNugetPackages: false
logProjectEvents: false
createLogFile: false
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: $(Build.ArtifactStagingDirectory)
ArtifactName: drop
ArtifactType: Container