Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jun 20, 2023. It is now read-only.

Commit 8fedc1f

Browse files
Use the new yaml and dotnet tools
1 parent 6a56aac commit 8fedc1f

20 files changed

+161
-3932
lines changed

‎azure-pipelines.yml‎

Lines changed: 62 additions & 98 deletions
Original file line numberDiff line numberDiff line change
@@ -1,109 +1,73 @@
1+
trigger:
2+
- master
3+
- refs/tags/*
14

25
variables:
3-
MONO_VERSION: 5_16_0
4-
XCODE_VERSION: 10.1
5-
VERBOSITY: minimal
6+
# XAMARIN_ANDROID_PATH: <path to Xamarin.Android>
7+
# MONO_API_INFO_XML_URL: <url to api-info.xml>
68

79
resources:
810
repositories:
9-
- repository: xamarin-templates
11+
- repository: internal-templates
1012
type: github
1113
name: xamarin/yaml-templates
1214
endpoint: xamarin
15+
ref: refs/heads/dev/signing-job
16+
- repository: components
17+
type: github
18+
name: xamarin/XamarinComponents
19+
endpoint: xamarin
20+
ref: refs/heads/dev/templating
1321

1422
jobs:
15-
16-
- job: build
17-
displayName: 'Build Libraries & NuGets (macOS)'
18-
timeoutInMinutes: 360
19-
pool:
20-
vmImage: macos-10.13
21-
steps:
22-
# Make sure to select the correct Xamarin and mono
23-
- bash: sudo $AGENT_HOMEDIRECTORY/scripts/select-xamarin-sdk.sh $(MONO_VERSION)
24-
displayName: 'Switch to the latest Xamarin SDK'
25-
- bash: echo '##vso[task.setvariable variable=MD_APPLE_SDK_ROOT;]'/Applications/Xcode_$(XCODE_VERSION).app;sudo xcode-select --switch /Applications/Xcode_$(XCODE_VERSION).app/Contents/Developer
26-
displayName: 'Switch to the latest Xcode'
27-
# Build the libraries and packages
28-
- bash: sh build.sh --target=ci --settings_skipverification=true --verbosity=$(VERBOSITY)
29-
displayName: 'Build NuGets'
30-
- script: |
31-
# Make a temp folder to move the created nugets to before we fat package them
32-
mkdir -p $(Build.SourcesDirectory)/tmp/nuget
33-
mkdir -p $(Build.SourcesDirectory)/tmp/output
34-
# Move all of the nupkg files from output into the temp folder we just created
35-
mv $(Build.SourcesDirectory)/output/*.nupkg $(Build.SourcesDirectory)/tmp/nuget
36-
# Move the remaining output bits to a temp location so they don't get overwritten
37-
mv $(Build.SourcesDirectory)/output/* $(Build.SourcesDirectory)/tmp/output
38-
sh build.sh --script nuget.cake \
39-
--localSource=$(Build.SourcesDirectory)/tmp/nuget \
40-
--packagesPath=$(Build.SourcesDirectory)/tmp/pkgs \
41-
--workingPath=$(Build.SourcesDirectory)/tmp/working \
42-
--outputPath=$(Build.SourcesDirectory)/output \
43-
--incrementVersion=False \
44-
--packLatestOnly=True \
45-
--useExplicitVersion=True
46-
# Move the other output bits back to the original output folder
47-
mv $(Build.SourcesDirectory)/tmp/output/* $(Build.SourcesDirectory)/output
48-
displayName: 'NuGet FAT'
49-
enabled: false
50-
# Publish the artifacts
51-
- task: PublishBuildArtifacts@1
52-
displayName: 'Publish unsigned artifacts'
53-
inputs:
54-
pathToPublish: '$(Build.SourcesDirectory)/output'
55-
artifactName: 'nuget'
56-
57-
- job: build_windows
58-
displayName: 'Build Libraries & NuGets (Windows)'
59-
timeoutInMinutes: 360
60-
pool:
61-
vmImage: vs2017-win2016
62-
steps:
63-
# Build the libraries and packages
64-
- powershell: .\build.ps1 --target=ci --settings_skipverification=true --verbosity=$(VERBOSITY)
65-
displayName: 'Build everything'
66-
# Publish the artifacts
67-
- task: PublishBuildArtifacts@1
68-
displayName: 'Publish Windows artifacts'
69-
inputs:
70-
pathToPublish: '$(Build.SourcesDirectory)/output'
71-
artifactName: 'windows_output'
72-
# Run some internal auditing
73-
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
74-
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
75-
condition: not(startsWith(variables['Build.SourceBranch'], 'refs/tags/'))
76-
displayName: Component Detection - Log
77-
inputs:
78-
scanType: LogOnly
79-
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
80-
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/')
81-
displayName: Component Detection - Report
82-
- task: securedevelopmentteam.vss-secure-development-tools.build-task-policheck.PoliCheck@1
83-
condition: eq(variables['System.TeamProject'], 'devdiv')
84-
displayName: 'PoliCheck'
85-
inputs:
86-
targetType: F
87-
88-
# only sign the packages when running on Windows, and using the private server which has the certificates
23+
- template: .ci/prepare.yml@components
24+
parameters:
25+
buildType: 'basic'
26+
masterBranchName: 'master'
27+
- template: .ci/build.yml@components
28+
parameters:
29+
cakeTemplatesBranch: 'dev/templating'
30+
cakeExtraArgs: '--settings_skipverification=true --nuget_useinprocessclient=false'
31+
tools:
32+
- 'xamarin.androidbinderator.tool': '0.3.0'
33+
- 'xamarin.androidx.migration.tool': '1.0.0-preview03'
34+
postBuildSteps:
35+
- script: |
36+
# Make a temp folder to move the created nugets to before we fat package them
37+
mkdir -p $(Build.SourcesDirectory)/tmp/nuget
38+
mkdir -p $(Build.SourcesDirectory)/tmp/output
39+
# Move all of the nupkg files from output into the temp folder we just created
40+
mv $(Build.SourcesDirectory)/output/*.nupkg $(Build.SourcesDirectory)/tmp/nuget
41+
# Move the remaining output bits to a temp location so they don't get overwritten
42+
mv $(Build.SourcesDirectory)/output/* $(Build.SourcesDirectory)/tmp/output
43+
sh build.sh --script nuget.cake \
44+
--localSource=$(Build.SourcesDirectory)/tmp/nuget \
45+
--packagesPath=$(Build.SourcesDirectory)/tmp/pkgs \
46+
--workingPath=$(Build.SourcesDirectory)/tmp/working \
47+
--outputPath=$(Build.SourcesDirectory)/output \
48+
--incrementVersion=False \
49+
--packLatestOnly=True \
50+
--useExplicitVersion=True
51+
# Move the other output bits back to the original output folder
52+
mv $(Build.SourcesDirectory)/tmp/output/* $(Build.SourcesDirectory)/output
53+
displayName: 'NuGet FAT'
54+
enabled: false
55+
# Run some internal auditing on Windows
56+
- ${{ if and(eq(variables['System.TeamProject'], 'devdiv'), eq(variables['System.JobName'], 'windows')) }}:
57+
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
58+
condition: not(startsWith(variables['Build.SourceBranch'], 'refs/tags/'))
59+
displayName: Component Detection - Log
60+
inputs:
61+
scanType: LogOnly
62+
- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
63+
condition: startsWith(variables['Build.SourceBranch'], 'refs/tags/')
64+
displayName: Component Detection - Report
65+
- task: securedevelopmentteam.vss-secure-development-tools.build-task-policheck.PoliCheck@1
66+
condition: eq(variables['System.TeamProject'], 'devdiv')
67+
displayName: 'PoliCheck'
68+
inputs:
69+
targetType: F
8970
- ${{ if eq(variables['System.TeamProject'], 'devdiv') }}:
90-
- job: signing
91-
displayName: Signing NuGets
92-
dependsOn: build
93-
pool:
94-
name: VSEng-XamarinCustom
95-
demands:
96-
- corpnet
97-
condition: and(succeeded(), startsWith(variables['Build.SourceBranch'],'refs/tags/'))
98-
steps:
99-
# don't checkout code and sign the packages
100-
- checkout: none
101-
- template: sign-artifacts.yml@xamarin-templates
102-
parameters:
103-
targetFolder: '$(Build.ArtifactStagingDirectory)/signed'
104-
# publish the signed packages
105-
- task: PublishBuildArtifacts@1
106-
displayName: 'Publish Signed NuGets'
107-
inputs:
108-
artifactName: nuget-signed
109-
pathToPublish: '$(Build.ArtifactStagingDirectory)/signed'
71+
- template: sign-artifacts/jobs/v1.yml@internal-templates
72+
parameters:
73+
dependsOn: [ 'build' ]

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /