CI #179
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
schedule: | |
- cron: "00 19 * * *" # run ci periodically at 3 am | |
pull_request: | |
branches: [main] | |
jobs: | |
lint: | |
name: Check Lint & Format | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Install Pip | |
run: sudo apt install pip | |
- name: Install Hatch | |
run: pip install hatch | |
- name: Generate API | |
uses: ./.github/workflows/protobuf | |
- name: Run lint & fmt | |
run: hatch run lint:all ./client | |
test: | |
name: Test Validation | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.10' | |
- name: Install Pip | |
run: sudo apt install pip | |
- name: Generate API | |
uses: ./.github/workflows/protobuf | |
- name: Install Hatch | |
run: pip install hatch==1.7.0 | |
- name: Start the cluster | |
run: ./scripts/quick_start.sh | |
- name: Run test | |
run: hatch run cov | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
files: ./coverage.xml | |
fail_ci_if_error: true | |
verbose: true | |
commit: | |
name: Commit Message Validation | |
runs-on: ubuntu-latest | |
if: ${{ github.event_name != 'schedule' }} | |
steps: | |
- uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- run: git show-ref | |
- uses: Swatinem/rust-cache@v2 | |
- uses: actions-rs/[email protected] | |
with: | |
crate: git-cz | |
version: latest | |
- name: Validate commit messages | |
run: git-cz check ${{ github.event.pull_request.base.sha }}..${{ github.event.pull_request.head.sha }} | |
spell-check: | |
name: Spell Check | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Actions Repository | |
uses: actions/checkout@v2 | |
- name: Check Spelling | |
uses: crate-ci/typos@master |