-
Notifications
You must be signed in to change notification settings - Fork 3
59 lines (52 loc) · 2.06 KB
/
generate_other_formats.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
name: generating other formats
on:
push:
pull_request:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout this repository
uses: actions/checkout@v3
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install the required python packages
run: python -m pip install .[test]
- name: Other installations
run: |
sudo apt-get update
sudo apt-get install -y build-essential git wget curl
- name: Generate other model representations
run: |
cd linkml-schema
for file in *.yaml;
do name=`basename ${file} .yaml`;
echo "Processing $name file..";
gen-json-schema ${file} > ../json-schema-autogen/${name}.json;
# generating jsonld context and removing generation_date field to avoid constant updates
gen-jsonld-context ${file} > ../jsonld-context-autogen/${name}.context.jsonld;
sed -i "/generation_date/d" ../jsonld-context-autogen/${name}.context.jsonld;
gen-pydantic ${file} --pydantic_version 2 > ../models_py-autogen/${name}.py;
if [ ${name} = "kbmodel" ]; then
echo "Creating and Fixing kbmodel diagram..";
python ../utils/create_fix_kbmodel_diagram.py
else
gen-erdiagram ${file} > ../erdiagram-autogen/${name}.md;
fi
done
cd ..
- name: Adding other model representations to git
# this might fail when running in PR mode because of the git push
# but the files should be added since it's also run on push
continue-on-error: true
run: |
git config --local user.email "[email protected]"
git config --local user.name "GitHub Action"
git add json-schema-autogen/*.json
git add jsonld-context-autogen/*.context.jsonld
git add models_py-autogen/*.py
git add erdiagram-autogen/*.md
git commit -m "generate another formats"
git push