-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathbuild_jobs.yml
58 lines (47 loc) · 2.69 KB
/
build_jobs.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
jobs:
- job: Generate_Site
steps:
- checkout: self
fetchDepth: 0
fetchTags: true
displayName: Checkout $(Build.Repository.Name)
- template: ../dotnetcommon/dotnet_sdk.yml
parameters:
useDotNetSDK: ${{ parameters.useDotNetSDK }}
- template: ../dotnetcommon/dotnet_auth.yml
parameters:
sources: ${{ parameters.sources }}
- template: ../dotnetcommon/prebuild_common.yml
parameters:
preBuildScript: ${{ parameters.preBuildScript }}
- script: dotnet tool install --global Wcom.StaticSiteGenerator.Console --configfile ${{ parameters.projectRoot }}/nuget.config
displayName: Installing Artifact Downloader.
- script: dotnet tool install --global WCOM.Docs.Tools.BuildArtifactDownloader --configfile ${{ parameters.projectRoot }}/nuget.config
displayName: Installing Build Artifact Downloader.
#- script: dotnet tool restore --configfile ${{ parameters.projectRoot }}/nuget.config
#displayName: .NET Tool Restore
- pwsh: dotnet-wcom-docs-buildartifactdownloader download '${{ parameters.projectRoot }}/input/.assemblies/*.yaml'
env:
WCOM_DOCS_DEVOPS_PAT: $(System.AccessToken)
WCOM_DOCS_DEVOPS_ORG: ${{ parameters.devopsOrg }}
displayName: Download Assembly Artifacts
- pwsh: dotnet-wcom-docs-buildartifactdownloader download '${{ parameters.projectRoot }}/input/.generated/*.yaml' --output '${{ parameters.projectRoot }}/input/generated'
env:
WCOM_DOCS_DEVOPS_PAT: $(System.AccessToken)
WCOM_DOCS_DEVOPS_ORG: ${{ parameters.devopsOrg }}
displayName: Download Generated Content Artifacts
- ${{ each site in parameters.sites }}:
- pwsh: |
dotnet-wcomsite -i ${{ parameters.projectRoot }}/input/theme -i ${{ parameters.projectRoot }}/input/generated -i ${{ parameters.projectRoot }}/input/${{ site.name }} -o "$(build.artifactstagingdirectory)/output/${{ site.name }}"
[int] $Result = $LASTEXITCODE
$Result
exit $Result
env:
SiteName: ${{ site.name }}
displayName: Build ${{ site.name }} HTML
- script: |
cp ${{ parameters.projectRoot }}/input/staticwebapp.config.json "$(build.artifactstagingdirectory)/output/${{ site.name }}/staticwebapp.config.json"
displayName: Copy static web app config
- publish: $(build.artifactstagingdirectory)/output/${{ site.name }}
displayName: Publish ${{ parameters.artifactNamePrefix }}$(Build.DefinitionName).${{ site.name }} Static Site Artifact
artifact: ${{ parameters.artifactNamePrefix }}$(Build.DefinitionName).${{ site.name }}