-
-
Notifications
You must be signed in to change notification settings - Fork 34
/
azure-pipelines.yml
128 lines (116 loc) · 3.95 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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# Cross-platform build pipeline + NPM publish
name: $(Build.SourceVersion)
# Master build triggers
trigger:
- master
# PR Triggers
pr:
autoCancel: true
branches:
include:
- master
paths:
exclude:
- README.md
jobs:
# Temporarily remove Arch build, until CI issues are worked out:
# https://github.com/actions/virtual-environments/issues/2658
# - job: ArchDocker
# displayName: "Linux - Arch"
# pool:
# vmImage: 'Ubuntu 16.04'
# steps:
# - script: docker build -t arch-libvim src/build/docker/arch
# displayName: 'docker build'
# - script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind arch-libvim /bin/bash -c 'echo hello'
# - script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind arch-libvim /bin/bash -c 'cd libvim/src && ls'
# displayName: 'docker run'
# - script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind arch-libvim /bin/bash -c 'cd libvim/src && pwd'
# displayName: 'docker run'
# - script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind arch-libvim /bin/bash -c 'cd libvim/src && esy @test install'
# displayName: 'docker run'
# - script: docker run --rm -i --mount src=`pwd`,target=/libvim,type=bind arch-libvim /bin/bash -c 'cd libvim/src && esy @test x run-tests.sh'
# displayName: 'docker run'
- job: AlpineDocker
displayName: "Linux - Alpine 3.8 (Docker)"
pool:
vmImage: 'Ubuntu 16.04'
steps:
- script: docker build -t alpine-libvim src/build/docker/alpine
displayName: 'docker build'
- script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind alpine-libvim /bin/bash -c 'esy --version'
displayName: 'docker run'
- script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind alpine-libvim /bin/bash -c 'cd libvim/src && ls'
displayName: 'docker run'
- script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind alpine-libvim /bin/bash -c 'cd libvim/src && pwd'
displayName: 'docker run'
- script: docker run --rm --mount src=`pwd`,target=/libvim,type=bind alpine-libvim /bin/bash -c 'cd libvim/src && esy install'
displayName: 'docker run'
- script: docker run --rm -i --mount src=`pwd`,target=/libvim,type=bind alpine-libvim /bin/bash -c 'cd libvim/src && esy build'
- job: UbuntuDocker
displayName: "Linux - Ubuntu 18.04"
pool:
vmImage: 'Ubuntu 18.04'
steps:
- template: .ci/esy-build-steps.yml
- template: .ci/libvim-test.yml
parameters:
testRunner: run-tests.sh
- job: UbuntuValgrind
displayName: "Linux - Ubuntu 18.04 (VALGRIND)"
pool:
vmImage: 'Ubuntu 18.04'
steps:
- script: sudo apt-get update
displayName: "apt-get update"
- script: sudo apt-get --yes install valgrind
displayName: "apt-get install valgrind"
- script: valgrind --version
displayName: "valgrind --version"
- template: .ci/esy-build-steps.yml
- template: .ci/libvim-test.yml
parameters:
testRunner: run-tests-valgrind.sh
- job: MacOS14
displayName: "MacOS Mojave"
pool:
vmImage: 'macOS-10.14'
steps:
- template: .ci/esy-build-steps.yml
- template: .ci/libvim-test.yml
parameters:
testRunner: run-tests.sh
- job: MacOS15
displayName: "MacOS Catalina"
pool:
vmImage: 'macOS-10.15'
steps:
- template: .ci/esy-build-steps.yml
- template: .ci/libvim-test.yml
parameters:
testRunner: run-tests.sh
- job: MacOS15XCode12
displayName: "MacOS Catalina + XCode 12.2"
pool:
vmImage: 'macOS-10.15'
steps:
- script: sudo xcode-select -s /Applications/Xcode_12.2.app
- script: xcodebuild -version
- template: .ci/esy-build-steps.yml
- template: .ci/libvim-test.yml
parameters:
testRunner: run-tests.sh
- job: Windows
pool:
vmImage: 'vs2017-win2016'
steps:
- template: .ci/esy-build-steps.yml
- template: .ci/libvim-test.yml
parameters:
testRunner: run-tests.bat
- job: HygieneChecks
displayName: "Hygiene Checks"
pool:
vmImage: 'macOS-10.15'
steps:
- template: .ci/check-hygiene.yml