forked from KhronosGroup/Vulkan-Docs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
azure-pipelines.yml
48 lines (40 loc) · 1.9 KB
/
azure-pipelines.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
# Copyright (c) 2020 The Khronos Group Inc.
#
# SPDX-License-Identifier: CC-BY-4.0
# Azure YAML pipeline for Vulkan spec repository CI
trigger:
- main
- master
# To run a Docker container on Azure, this image is required per 'Hosted agents' in
# https://docs.microsoft.com/en-us/azure/devops/pipelines/process/container-phases?view=azure-devops&tabs=yaml
pool:
vmImage: 'ubuntu-latest'
# Use the vulkan-docs-base image since Azure doesn't like the vulkan-docs
# image entrypoint script.
container: khronosgroup/docker-images:vulkan-docs-base
# Run tests and build spec targets
steps:
- script: |
# Internal self-test of the check_spec_links script
( cd scripts && py.test-3 test*.py )
mkdir -p gen/out/checks
scripts/check_spec_links.py --html=gen/out/checks/problems.html > /dev/null || true
# Breaking the build if # of errors increases. We should manually ratchet ignore_count down as errors get fixed.
# If there are unfixable errors, add '--ignore_count #' where '#' is the
# number of them. This is a slightly crude way of enforcing "don't add
# errors" but simpler than the alternatives (running against default branch,
# diff, etc)
scripts/check_spec_links.py -Werror --ignore_count 0
# Build the actual spec, and other common targets
./makeSpec -clean -spec all QUIET= -j${nproc} -Otarget manhtmlpages validusage styleguide registry html
# Build headers, for use by all later stages
( cd xml && make validate test install )
displayName: 'Build the specification and run the spec checking scripts'
# Publish and download build outputs for review.
# Go to https://dev.azure.com/khronosgroup/Vulkan-Docs/_build for pipeline
# results. Click through to an individual job page, then to the 'published'
# link below 'Related', to see published artifacts.
- publish: $(System.DefaultWorkingDirectory)/gen/out
artifact: specTargets
- download: current
artifact: specTargets