-
Notifications
You must be signed in to change notification settings - Fork 0
138 lines (121 loc) · 3.9 KB
/
ci.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
name: 'CI & Auto Scripts'
on: [ pull_request ]
jobs:
ChangedCodePathsFilter:
runs-on: ubuntu-latest
outputs:
rcOutput: ${{ steps.filter.outputs.rcImportsHaveChanged }}
texOutput: ${{ steps.filter.outputs.texFilesHaveChanged }}
steps:
- name: Clone repository
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- uses: dorny/paths-filter@v2
id: filter
with:
filters: |
rcImportsHaveChanged:
- 'temp-runners/rc_authors_to_process.txt'
- 'temp-runners/rc_ids_to_ignore.txt'
- 'temp-runners/rc_ids_to_process.txt'
texFilesHaveChanged: 'LaTeX/**/*.tex'
Build:
needs: ChangedCodePathsFilter
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
- name: Install dependencies
run: npm i
- name: Build
run: npm run build:ci
env:
CI: true
FORCE_COLOR: 2
ImportFromRCBasedOnAuthorsOrIds:
needs: [ ChangedCodePathsFilter, Build ]
runs-on: ubuntu-latest
if: needs.ChangedCodePathsFilter.outputs.rcOutput == 'true'
steps:
- name: Clone repository
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
path: bes-lyrics
- name: Checkout bes-lyrics-parser repo
uses: actions/checkout@v3
with:
token: ${{ secrets.PAT_BES_PROJECTS }}
repository: ioanlucut/bes-lyrics-parser
path: bes-lyrics-parser
sparse-checkout: |
out
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
- name: Import from RC (if not exists already)
working-directory: bes-lyrics
run: |
npm i && npm run import:rc:ci
git config user.name github-actions
git config user.email [email protected]
git add -A
git diff --quiet && git diff --staged --quiet || git commit --cleanup=verbatim -am "[Bot] I have imported the resurse crestine songs based on the rc_authors_to_process.txt and rc_ids_to_process.txt.
>
>
request-checks: true"
git push
env:
CI: true
FORCE_COLOR: 2
AutoUpdateMeta:
needs: [ Build ]
runs-on: ubuntu-latest
steps:
- name: Clone repository
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Use Node.js 20.x
uses: actions/setup-node@v3
with:
node-version: 20.x
- name: Install dependencies
run: npm i
- name: Update meta (hashes, renames, etc.)
run: |
npm run meta:ci
git config user.name github-actions
git config user.email [email protected]
git add -A
git diff --quiet && git diff --staged --quiet || git commit --cleanup=verbatim -am "[Bot] I have added all of the meta information about the content to it.
>
>
request-checks: true"
git push
env:
CI: true
FORCE_COLOR: 2
CompileLaTeX:
needs: [ ChangedCodePathsFilter, Build ]
runs-on: ubuntu-latest
if: needs.ChangedCodePathsFilter.outputs.texOutput == 'true'
steps:
- name: Clone repository
uses: actions/checkout@v3
with:
ref: ${{ github.event.pull_request.head.ref }}
- name: Compile BES Conduct LaTeX doc
uses: xu-cheng/latex-action@v3
with:
root_file: BES_Conduct_Afisaj.tex
working_directory: LaTeX/conduct/
latexmk_shell_escape: true