-
Notifications
You must be signed in to change notification settings - Fork 1
chore: add CI workflow #46
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
614250c
03ec478
0fd6a7c
789f98c
4187385
808de45
260949a
ecb66c5
a35226c
89014a0
b57c5e8
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,79 @@ | ||
|
|
||
| name: Full CI | ||
| on: | ||
| push: | ||
| branches: | ||
| - main | ||
| - dev | ||
| pull_request: | ||
|
|
||
| concurrency: | ||
| group: ${{ github.workflow }}-${{ github.ref }} | ||
| cancel-in-progress: true | ||
|
|
||
| jobs: | ||
| pre_checks: | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 30 | ||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | ||
| with: | ||
| fetch-depth: 0 | ||
|
|
||
| - name: Set up python | ||
| id: setup-python | ||
| uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5 | ||
| with: | ||
| python-version: "3.10" | ||
|
|
||
| - name: Install Poetry | ||
| uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1 | ||
| with: | ||
| virtualenvs-create: true | ||
| virtualenvs-in-project: true | ||
| installer-parallel: true | ||
|
|
||
| - name: Install deps & build base images | ||
| run: make setup | ||
|
|
||
| - name: Check format | ||
| run: make check_format | ||
|
|
||
| - name: Check linting | ||
| run: make check_linting | ||
|
|
||
| - name: Make sure doc is building | ||
| run: make doc | ||
|
|
||
| test: | ||
| runs-on: ubuntu-latest | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. should also run in other platforms such as macos and windows, no?
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It should not matter, we don't use complex lib or math lib |
||
| timeout-minutes: 30 | ||
| strategy: | ||
| fail-fast: false # Do not stop when any job fails | ||
| matrix: | ||
| python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. add a TODO to remove 3.9 support after October 2025
Member
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We'll remove it when we drop the support, added in a linear card |
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | ||
| with: | ||
| fetch-depth: 0 | ||
|
|
||
| - name: Set up python | ||
| id: setup-python | ||
| uses: actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5 | ||
| with: | ||
| python-version: "${{ matrix.python-version }}" | ||
|
|
||
| - name: Install Poetry | ||
| uses: snok/install-poetry@76e04a911780d5b312d89783f7b1cd627778900a # v1 | ||
| with: | ||
| virtualenvs-create: true | ||
| virtualenvs-in-project: true | ||
| installer-parallel: true | ||
|
|
||
| - name: Install deps & build base images | ||
| run: make setup | ||
|
|
||
| - name: Run the tests | ||
| run: make test | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we could add timeout limit in both jobs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think it's useful in this case.
What do you have in mind ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
to avoid any job hanging for 6 hours,
we could add
timeout-minutes: 30https://stackoverflow.com/questions/59073731/set-default-timeout-on-github-action-pipeline