-
Notifications
You must be signed in to change notification settings - Fork 96
43 lines (41 loc) · 1.21 KB
/
merge-sample-json.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
name: Merge sample metadata
on:
push:
branches:
# When someone push to `main` branch
- main
paths:
- 'samples/**/assets/sample.json'
- 'scenarios/**/assets/sample.json'
workflow_dispatch:
jobs:
build:
name: 'Merge all sample.json files to samples.json'
runs-on: ubuntu-latest
steps:
- name: Checkout main branch
uses: actions/checkout@v2
with:
ref: main
path: main
- name: Checkout gh-pages branch
uses: actions/checkout@v2
with:
ref: gh-pages
path: gh-pages
- name: Join samples
run: |
jq -s '[.[][]]' ./main/samples/**/assets/sample.json ./main/scenarios/**/assets/sample.json > ./gh-pages/samples.json
- name: Validate JSON
uses: docker://orrosenblatt/validate-json-action:latest
env:
INPUT_SCHEMA: ./main/templates/metadata-schema.json
INPUT_JSONS: ./gh-pages/samples.json
- name: Commit samples.json to gh-pages
uses: EndBug/add-and-commit@v6
with:
cwd: ./gh-pages
branch: gh-pages
add: 'samples.json --force'
push: true
token: ${{ secrets.GITHUB_TOKEN }}