Skip to content

Commit 514587b

Browse files
committed
Initial commit
Change-Id: I8d2ecc607975f949ff543ab447198a46ee9dbf94
0 parents  commit 514587b

16 files changed

+542
-0
lines changed

.github/dependabot.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5+
6+
version: 2
7+
updates:
8+
- package-ecosystem: "pip" # See documentation for possible values
9+
directory: "/" # Location of package manifests
10+
schedule:
11+
interval: "weekly"

.github/workflows/ci.yaml

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
push:
6+
branches: [main]
7+
8+
jobs:
9+
changes:
10+
runs-on: ubuntu-latest
11+
outputs:
12+
js: ${{ steps.changes.outputs.js }}
13+
python: ${{ steps.changes.outputs.python }}
14+
steps:
15+
- uses: actions/checkout@v4
16+
- uses: dorny/paths-filter@v3
17+
id: changes
18+
with:
19+
filters: |
20+
js:
21+
- 'js/**'
22+
python:
23+
- 'python/**'
24+
25+
javascript:
26+
needs: changes
27+
if: ${{ needs.changes.outputs.js == 'true' }}
28+
uses: ./.github/workflows/javascript.yaml
29+
30+
python:
31+
needs: changes
32+
if: ${{ needs.changes.outputs.python == 'true' }}
33+
uses: ./.github/workflows/python.yaml
34+
35+
all-green:
36+
if: always()
37+
needs: [changes, javascript, python]
38+
runs-on: ubuntu-latest
39+
steps:
40+
- name: Decide whether the needed jobs succeeded or failed
41+
uses: re-actors/alls-green@release/v1
42+
with:
43+
jobs: ${{ toJSON(needs) }}
44+
allowed-skips: ${{ toJSON(needs) }}

.github/workflows/javascript.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: JavaScript CI
2+
3+
on:
4+
workflow_call:
5+
6+
jobs:
7+
test:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
12+
- name: Set up Node.js
13+
uses: actions/setup-node@v4
14+
with:
15+
node-version: "20"
16+
17+
- name: Install dependencies
18+
working-directory: js
19+
run: npm install
20+
21+
- name: Run tests
22+
working-directory: js
23+
run: npm test
24+
25+
- name: Mergify CI Upload
26+
if: success() || failure()
27+
uses: mergifyio/gha-mergify-ci@v6
28+
with:
29+
token: ${{ secrets.MERGIFY_TOKEN }}
30+
report_path: js/junit.xml

.github/workflows/python.yaml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Python CI
2+
3+
on:
4+
workflow_call:
5+
6+
jobs:
7+
test:
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
12+
- name: Set up Python
13+
uses: actions/setup-python@v5
14+
with:
15+
python-version: "3.11"
16+
17+
- name: Install dependencies
18+
working-directory: python
19+
run: |
20+
pip install -r requirements.txt
21+
22+
- name: Run tests
23+
working-directory: python
24+
env:
25+
MERGIFY_TOKEN: ${{ secrets.MERGIFY_TOKEN }}
26+
run: pytest

.mergify.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
queue_rules:
2+
- name: standard
3+
queue_conditions:
4+
- base=main
5+
6+
priority_rules:
7+
- name: high priority
8+
conditions:
9+
- label = urgent
10+
priority: high
11+
12+
defaults:
13+
queue_rule:
14+
batch_max_wait_time: 5 seconds
15+
batch_size: 3
16+
checks_timeout: 5 minutes
17+
18+
merge_queue:
19+
max_parallel_checks: 5
20+

0 commit comments

Comments
 (0)