Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f75ea6b

Browse files
committed
add action for building artifacts
1 parent 73dfb96 commit f75ea6b

File tree

7 files changed

+216
-0
lines changed

7 files changed

+216
-0
lines changed

.github/workflows/main.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,43 @@ jobs:
99
- uses: actions/checkout@v2
1010
- uses: actions/setup-python@v2
1111
- uses: pre-commit/[email protected]
12+
build:
13+
runs-on: ubuntu-20.04
14+
steps:
15+
- uses: actions/checkout@v2
16+
- uses: actions/setup-python@v2
17+
with:
18+
python-version: 3.6
19+
- name: Install dependencies
20+
run: |
21+
sudo apt-get update
22+
sudo apt-get install \
23+
fontconfig \
24+
libgeos++-dev \
25+
libproj-dev
26+
python -m pip install --upgrade pip
27+
pip install -r requirements/requirements-base.txt
28+
pip install -r requirements/requirements.txt
29+
- name: Install Tex Live
30+
run: |
31+
sudo apt-get update
32+
sudo apt-get install \
33+
texlive-base \
34+
texlive-latex-base \
35+
texlive-latex-extra \
36+
texlive-latex-recommended \
37+
texlive-fonts-recommended \
38+
texlive-xetex
39+
- name: Build artifacts
40+
run: |
41+
rm *.pdf
42+
make -C fonts/
43+
cp -r fonts/ /usr/share/fonts/
44+
fc-cache
45+
make figures cheatsheets
46+
- uses: actions/upload-artifact@v2
47+
with:
48+
name: build
49+
path: |
50+
cheatsheets.pdf
51+
handout-*.pdf

Makefile

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
SRC := $(wildcard *.tex)
2+
3+
.PHONY: default
4+
default: all
5+
6+
.PHONY: all
7+
all: figures cheatsheets
8+
9+
.PHONY: figures
10+
figures:
11+
cd scripts && for script in *.py; do echo $$script; python $$script; done
12+
13+
.PHONY: cheatsheets
14+
cheatsheets:
15+
xelatex cheatsheets.tex
16+
17+
.PHONY: handouts
18+
handouts:
19+
# xelatex handout-beginner.tex
20+
# xelatex handout-intermediate.tex
21+
xelatex handout-tips.tex
22+
23+
.PHONY: fonts
24+
fonts:
25+
make -C fonts/
26+
27+
.PHONY: clean
28+
clean: $(SRC)
29+
git clean -f ./figures/
30+
git clean -f ./scripts/*.pdf
31+
latexmk -c $^
32+
33+
.PHONY: requirements
34+
requirements:
35+
$(MAKE) -C ./requirements/

requirements/Makefile

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
.PHONY: default
2+
default: all
3+
4+
.PHONY: all
5+
all: requirements-base.txt requirements.txt
6+
7+
.PHONY: install
8+
install: requirements-base.txt requirements.txt
9+
pip-sync $^
10+
11+
requirements.txt: requirements-base.txt
12+
13+
%.txt: %.in
14+
pip-compile $<

requirements/requirements-base.in

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
numpy
2+
pip-tools

requirements/requirements-base.txt

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#
2+
# This file is autogenerated by pip-compile
3+
# To update, run:
4+
#
5+
# pip-compile requirements-base.in
6+
#
7+
click==7.1.2
8+
# via pip-tools
9+
importlib-metadata==3.9.0
10+
# via pep517
11+
numpy==1.19.5
12+
# via -r requirements-base.in
13+
pep517==0.10.0
14+
# via pip-tools
15+
pip-tools==6.0.1
16+
# via -r requirements-base.in
17+
toml==0.10.2
18+
# via pep517
19+
typing-extensions==3.7.4.3
20+
# via importlib-metadata
21+
zipp==3.4.1
22+
# via
23+
# importlib-metadata
24+
# pep517
25+
26+
# The following packages are considered to be unsafe in a requirements file:
27+
# pip

requirements/requirements.in

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
-c ./requirements-base.txt
2+
3+
cartopy
4+
fonttools[woff]
5+
matplotlib
6+
pre-commit
7+
scipy
8+
9+
--no-binary shapely

requirements/requirements.txt

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
#
2+
# This file is autogenerated by pip-compile
3+
# To update, run:
4+
#
5+
# pip-compile requirements.in
6+
#
7+
--no-binary shapely
8+
9+
appdirs==1.4.4
10+
# via virtualenv
11+
brotli==1.0.9
12+
# via fonttools
13+
cartopy==0.18.0
14+
# via -r requirements.in
15+
cfgv==3.2.0
16+
# via pre-commit
17+
cycler==0.10.0
18+
# via matplotlib
19+
distlib==0.3.1
20+
# via virtualenv
21+
filelock==3.0.12
22+
# via virtualenv
23+
fonttools[woff]==4.21.1
24+
# via -r requirements.in
25+
identify==2.2.2
26+
# via pre-commit
27+
importlib-metadata==3.9.0
28+
# via
29+
# -c ./requirements-base.txt
30+
# pre-commit
31+
# virtualenv
32+
importlib-resources==5.1.2
33+
# via
34+
# pre-commit
35+
# virtualenv
36+
kiwisolver==1.3.1
37+
# via matplotlib
38+
matplotlib==3.3.4
39+
# via -r requirements.in
40+
nodeenv==1.5.0
41+
# via pre-commit
42+
numpy==1.19.5
43+
# via
44+
# -c ./requirements-base.txt
45+
# cartopy
46+
# matplotlib
47+
# scipy
48+
pillow==8.1.2
49+
# via matplotlib
50+
pre-commit==2.11.1
51+
# via -r requirements.in
52+
pyparsing==2.4.7
53+
# via matplotlib
54+
pyshp==2.1.3
55+
# via cartopy
56+
python-dateutil==2.8.1
57+
# via matplotlib
58+
pyyaml==5.4.1
59+
# via pre-commit
60+
scipy==1.5.4
61+
# via -r requirements.in
62+
shapely==1.7.1
63+
# via cartopy
64+
six==1.15.0
65+
# via
66+
# cartopy
67+
# cycler
68+
# python-dateutil
69+
# virtualenv
70+
toml==0.10.2
71+
# via
72+
# -c ./requirements-base.txt
73+
# pre-commit
74+
typing-extensions==3.7.4.3
75+
# via
76+
# -c ./requirements-base.txt
77+
# importlib-metadata
78+
virtualenv==20.4.3
79+
# via pre-commit
80+
zipp==3.4.1
81+
# via
82+
# -c ./requirements-base.txt
83+
# importlib-metadata
84+
# importlib-resources
85+
zopfli==0.1.8
86+
# via fonttools
87+
88+
# The following packages are considered to be unsafe in a requirements file:
89+
# setuptools

0 commit comments

Comments
 (0)