Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 0 additions & 2 deletions .eslintignore

This file was deleted.

46 changes: 0 additions & 46 deletions .eslintrc.js

This file was deleted.

6 changes: 4 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,7 @@ Thank you for your pull request. Please provide a description below.

**Validation**
- [ ] Does `npm test` pass?
- [ ] Does `npm lint` pass?
- [ ] Have you tested this change locally?
- [ ] Does `npm run lint` pass?
- [ ] Does `npm run typecheck` pass?
- [ ] Does `npm run build` pass?
- [ ] Have you tested this change locally?
33 changes: 22 additions & 11 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,31 @@
name: CI

on:
pull_request:
push:
branches: [main]

permissions:
contents: read

jobs:
CI:
continue-on-error: true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v2.1.5
- name: Checkout
uses: actions/checkout@v6
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: 14
- name: Install SDK
run: |
npm install
- name: Run Linter
run: |
npm run lint
node-version-file: .nvmrc
cache: npm
- name: Install dependencies
run: npm ci
- name: Lint
run: npm run lint
- name: Type-check
run: npm run typecheck
- name: Run unit tests
run: npm test
- name: Build
run: npm run build
38 changes: 22 additions & 16 deletions .github/workflows/coverage.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,35 @@
name: CodeCov

on:
push:
branches:
- main
branches: [main]
pull_request:
schedule:
- cron: 0 0 * * *
- cron: "17 0 * * 1"

permissions:
contents: read
id-token: write

jobs:
Unit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Node.js environment
uses: actions/setup-node@v2.1.5
- name: Checkout
uses: actions/checkout@v6
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version: '14'
- name: Install SDK
run: |
npm install
- name: Generate Unit Test Coverage
run: |
npm run coverage:unit
- name: Publish Coverage
uses: codecov/codecov-action@v1.3.2
node-version-file: .nvmrc
cache: npm
- name: Install dependencies
run: npm ci
- name: Generate unit test coverage
run: npm run coverage:unit
- name: Publish coverage
uses: codecov/codecov-action@v7
with:
files: ./coverage/lcov.info
flags: unit
fail_ci_if_error: true
fail_ci_if_error: true
use_oidc: true
58 changes: 35 additions & 23 deletions .github/workflows/deploy-gh-pages.yml
Original file line number Diff line number Diff line change
@@ -1,32 +1,44 @@
name: Deploy To Github Pages
name: Deploy to GitHub Pages

on:
push:
branches: [ main ]
branches: [main]

permissions:
contents: write

concurrency:
group: github-pages
cancel-in-progress: true

jobs:
build:
deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout 🛎️
uses: actions/checkout@v2
- name: Checkout
uses: actions/checkout@v6
with:
persist-credentials: false
submodules: 'recursive'
- name: Setup Python
uses: actions/setup-python@v2.2.2
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: 3.7
- name: Install Packages
python-version: "3.13"
cache: pip
- name: Set up Node.js
uses: actions/setup-node@v6
with:
node-version-file: .nvmrc
cache: npm
- name: Install dependencies
run: |
cd codegen/stone
python setup.py install
cd ..
npm install
./run_codegen.sh
cd ..
npm run build
- name: Deploy 🚀
uses: JamesIves/github-pages-deploy-action@releases/v3
python -m pip install ./codegen/stone
npm ci
- name: Generate routes
run: ./codegen/run_codegen.sh
- name: Build site
run: npm run build
- name: Deploy
uses: JamesIves/github-pages-deploy-action@v4
with:
ACCESS_TOKEN: ${{ secrets.GH_PAGES_PUBLISH_TOKEN }}
BRANCH: gh-pages # The branch the action should deploy to.
FOLDER: build # The folder the action should deploy.
branch: gh-pages
folder: build
121 changes: 61 additions & 60 deletions .github/workflows/spec_update.yml
Original file line number Diff line number Diff line change
@@ -1,80 +1,81 @@
name: Spec Update
on:

on:
workflow_dispatch:
repository_dispatch:
types: [spec_update]

permissions:
contents: read

jobs:
Update:
update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Python environment
uses: actions/setup-python@v2.2.2
- name: Checkout
uses: actions/checkout@v6
with:
python-version: 3.7
- name: Setup Node.JS environment
uses: actions/setup-node@v2.1.5
fetch-depth: 0
submodules: recursive
- name: Set up Python
uses: actions/setup-python@v6
with:
node-version: 14
- name: Get current time
uses: 1466587594/get-current-time@v2
id: current-time
python-version: "3.13"
cache: pip
- name: Set up Node.js
uses: actions/setup-node@v6
with:
format: YYYY_MM_DD
utcOffset: "-08:00"
- name: Install SDK
run: |
npm install
- name: Update Modules
run: |
git submodule init
git submodule update --remote --recursive
- name: Generate Branch Name
id: git-branch
node-version-file: .nvmrc
cache: npm
- name: Update API specification
id: update-spec
shell: bash
run: |
echo "::set-output name=branch::spec_update_${{ steps.current-time.outputs.formattedTime }}"
- name: Generate Num Diffs
id: git-diff-num
run: |
cd codegen/
diffs=$(git diff --submodule spec | grep ">" | wc -l)
echo "Number of Spec diffs: $diffs"
echo "::set-output name=num-diff::$diffs"
cd ..
- name: Generate Diff
id: git-diff
old_commit="$(git rev-parse HEAD:codegen/spec)"
git submodule update --remote codegen/spec
new_commit="$(git -C codegen/spec rev-parse HEAD)"

if [[ "$old_commit" == "$new_commit" ]]; then
echo "has-changes=false" >> "$GITHUB_OUTPUT"
exit 0
fi

{
echo "has-changes=true"
echo "branch=spec_update_$(date -u +%Y_%m_%d)"
echo "commit-message<<SPEC_COMMIT_MESSAGE"
echo "Automated Spec Update"
echo
git -C codegen/spec log --format='- %s (%H)' "$old_commit..$new_commit"
echo "SPEC_COMMIT_MESSAGE"
} >> "$GITHUB_OUTPUT"
- name: Install dependencies
if: steps.update-spec.outputs.has-changes == 'true'
run: |
cd codegen/spec
gitdiff=$(git log -n ${{ steps.git-diff-num.outputs.num-diff }} --pretty="format:%n %H %n%n %b")
commit="Automated Spec Update $gitdiff"
commit="${commit//'%'/'%25'}"
commit="${commit//$'\n'/'%0A'}"
commit="${commit//$'\r'/'%0D'}"
echo "Commit Message: $commit"
echo "::set-output name=commit::$commit"
cd ../..
- name: Generate New Routes
python -m pip install ./codegen/stone
npm ci
- name: Generate routes
if: steps.update-spec.outputs.has-changes == 'true'
run: ./codegen/run_codegen.sh
- name: Verify generated site
if: steps.update-spec.outputs.has-changes == 'true'
run: |
cd codegen/stone
python setup.py install
cd ..
sh ./run_codegen.sh
cd ..
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3.8.2
if: steps.git-diff-num.outputs.num-diff != 0
npm run lint
npm run typecheck
npm test
npm run build
- name: Create pull request
if: steps.update-spec.outputs.has-changes == 'true'
uses: peter-evans/create-pull-request@v8
with:
token: ${{ secrets.SPEC_UPDATE_TOKEN }}
commit-message: |
${{ steps.git-diff.outputs.commit}}
branch: ${{ steps.git-branch.outputs.branch }}
commit-message: ${{ steps.update-spec.outputs.commit-message }}
branch: ${{ steps.update-spec.outputs.branch }}
delete-branch: true
title: 'Automated Spec Update'
body: |
${{ steps.git-diff.outputs.commit}}
base: 'main'
title: Automated Spec Update
body: ${{ steps.update-spec.outputs.commit-message }}
base: main
team-reviewers: |
owners
maintainers
draft: false
draft: false
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
24.18.0
Loading