-
Notifications
You must be signed in to change notification settings - Fork 97
139 lines (123 loc) · 3.62 KB
/
release.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
129
130
131
132
133
134
135
136
137
138
139
name: Release
on:
push:
tags:
- "*.*.*"
jobs:
build:
name: build bithesis manual
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: xu-cheng/texlive-action/full@v1
with:
run: |
apk add make msttcorefonts-installer fontconfig
update-ms-fonts
fc-cache -f
make doc
- name: Upload bithesis.pdf for later usage.
uses: actions/upload-artifact@v3
with:
name: bithesis
path: bithesis.pdf
- name: Upload *.cls for later usage.
uses: actions/upload-artifact@v3
with:
name: cls
path: "*.cls"
publish_bithesis_templates:
name: Publish ${{ matrix.template }}
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
template: [graduate-thesis, undergraduate-thesis, paper-translation, undergraduate-thesis-en]
steps:
- &CHECKOUT
uses: actions/checkout@v2
- &DOWNLOAD_BITHESIS
name: Download bithesis.pdf
uses: actions/download-artifact@v3
with:
name: bithesis
- &DOANLOWD_CLS
name: Download bithesis.cls
uses: actions/download-artifact@v3
with:
name: cls
- &MOVE_CLS
name: Move `.cls` file to template
run: mv bithesis.cls ./templates/${{ matrix.template }}
- &MOVE_ARTIFACTS
name: Copy artifacts to the template folder.
run: mv bithesis.pdf ./templates/${{ matrix.template }}
- &ZIP_INSTALL
name: Install zip
uses: montudor/action-zip@v1
- &ZIP_TEMPLATE
name: Zip files under ./${{ matrix.template }}
run: zip -qq -r ./${{ matrix.template }}.zip ./${{ matrix.template }}
working-directory: ./templates
- &UPLOAD_ARTIFACTS
name: Upload ${{ matrix.template }}.zip to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ./templates/${{ matrix.template }}.zip
asset_name: ${{ matrix.template }}.zip
tag: ${{ github.ref }}
publish_bitreport_templates:
name: Publish ${{ matrix.template }}
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
template: [lab-report]
steps:
- *CHECKOUT
- *DOWNLOAD_BITHESIS
- *DOANLOWD_CLS
- name: Move `.cls` file to template
run: mv bitreport.cls ./templates/${{ matrix.template }}
- *MOVE_ARTIFACTS
- *ZIP_INSTALL
- *ZIP_TEMPLATE
- *UPLOAD_ARTIFACTS
publish_bitbeamer_templates:
name: Publish ${{ matrix.template }}
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
template: [presentation-slide]
steps:
- *CHECKOUT
- *DOWNLOAD_BITHESIS
- *DOANLOWD_CLS
- name: Move `.cls` file to template
run: mv bitbeamer.cls ./templates/${{ matrix.template }}
- *MOVE_ARTIFACTS
- *ZIP_INSTALL
- *ZIP_TEMPLATE
- *UPLOAD_ARTIFACTS
publish_cls:
name: Publish ${{ matrix.cls }}
runs-on: ubuntu-latest
needs: build
strategy:
matrix:
cls: [bithesis, bitreport, bitbeamer]
steps:
- uses: actions/checkout@v2
- name: Download *.cls
uses: actions/download-artifact@v3
with:
name: cls
- name: Upload ${{ matrix.cls }}.cls to release
uses: svenstaro/upload-release-action@v2
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: ${{ matrix.cls }}.cls
asset_name: ${{ matrix.cls }}.cls
tag: ${{ github.ref }}