-
-
Notifications
You must be signed in to change notification settings - Fork 9
154 lines (127 loc) · 3.56 KB
/
ci.yaml
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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
name: CI
on:
# Run on all pull requests that change code.
pull_request:
paths-ignore:
- 'README.md'
- LICENSE
- .editorconfig
# Run every time a code change is pushed.
push:
paths-ignore:
- 'README.md'
- LICENSE
- .editorconfig
# Test if things still work each Tuesday morning.
# This way we will catch incompatible pandoc changes in a timely
# manner.
schedule:
# At 4:27am each Tuesday
- cron: '27 4 * * 2'
jobs:
Asymptote:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
pandoc:
- latest
container:
image: pandoc/latex:${{ matrix.pandoc }}-ubuntu
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
run: |
apt-get -q --no-allow-insecure-repositories update && \
apt-get install --no-install-recommends --assume-yes \
make inkscape asymptote
- name: Test
run: 'make test-asymptote'
GraphViz:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
pandoc:
- latest
container:
image: pandoc/core:${{ matrix.pandoc }}-ubuntu
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
run: |
apt-get -q --no-allow-insecure-repositories update && \
apt-get install --no-install-recommends --assume-yes \
make graphviz
- name: Test
run: 'make test-dot test-no-alt-or-caption'
Mermaid:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
pandoc:
- latest
container:
image: pandoc/core:${{ matrix.pandoc }}
env:
MERMAID_BIN: /usr/local/bin/mmdc-test
PUPPETEER_EXECUTABLE_PATH: /usr/bin/chromium-browser
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
## We need a little hack to get puppeteer working in the container.
run: |
apk update && apk add chromium chromium-chromedriver make npm
npm install -g @mermaid-js/mermaid-cli
printf '{"args":["--no-sandbox","--disable-setuid-sandbox"]}' > \
/etc/puppeteer-conf.json
printf '#!/bin/sh\nmmdc -p /etc/puppeteer-conf.json $@' > $MERMAID_BIN
chmod +x $MERMAID_BIN
- name: Test
run: 'make test-mermaid'
PlantUML:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
pandoc:
- edge
- latest
# The oldest version that's guaranteed to be supported
- '3.0'
container:
image: pandoc/core:${{ matrix.pandoc }}-ubuntu
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
run: |
apt-get -q --no-allow-insecure-repositories update && \
apt-get install --no-install-recommends --assume-yes \
make plantuml
- name: Test
run: make test-plantuml
TikZ:
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
pandoc:
- latest
container:
image: pandoc/latex:${{ matrix.pandoc }}-ubuntu
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install dependencies
run: |
tlmgr install pgf standalone
apt-get -q --no-allow-insecure-repositories update && \
apt-get install --no-install-recommends --assume-yes \
make inkscape
- name: Test
run: 'make test-tikz'