Skip to content

Commit 3444e05

Browse files
committed
Add cookiecutter.json
Update github ci Update gitlab-ci Update pyproject.toml Update Makefile Update Dockerfile Update core project Update ignore files Remove CI for main repo Update README.md
1 parent 02d6da4 commit 3444e05

File tree

19 files changed

+1946
-949
lines changed

19 files changed

+1946
-949
lines changed

.github/workflows/build.yml

Lines changed: 0 additions & 38 deletions
This file was deleted.

.github/workflows/lint-test.yml

Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
name: Test and lint
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
- master
8+
pull_request:
9+
10+
jobs:
11+
lint:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Check out repository
15+
uses: actions/checkout@v4
16+
17+
- name: Set up Python
18+
id: setup-python
19+
uses: actions/setup-python@v5
20+
with:
21+
python-version: "3.13"
22+
23+
- name: Install uv
24+
uses: astral-sh/setup-uv@v6
25+
26+
- name: Load cache
27+
id: cached-poetry-dependencies
28+
uses: actions/cache@v4
29+
with:
30+
path: .venv
31+
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/uv.lock') }}
32+
33+
- name: Install dependencies if cache does not exist
34+
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
35+
run: uv sync --locked --all-extras --dev
36+
37+
- name: Check dependencies
38+
run: make check-dependencies
39+
40+
- name: Check codestyle
41+
run: make check-codestyle
42+
43+
- name: ruff
44+
run: make check-ruff-github
45+
46+
- name: mypy
47+
run: make check-mypy
48+
49+
test:
50+
runs-on: ubuntu-latest
51+
permissions: write-all
52+
steps:
53+
54+
- name: Check out repository
55+
uses: actions/checkout@v4
56+
57+
- name: Set up Python
58+
id: setup-python
59+
uses: actions/setup-python@v5
60+
with:
61+
python-version: "3.13"
62+
63+
- name: Install uv
64+
uses: astral-sh/setup-uv@v6
65+
66+
- name: Load cache
67+
id: cached-poetry-dependencies
68+
uses: actions/cache@v4
69+
with:
70+
path: .venv
71+
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/uv.lock') }}
72+
73+
- name: Install dependencies if cache does not exist
74+
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
75+
run: uv sync --locked --all-extras --dev
76+
77+
- name: Run tests
78+
run: make test
79+
80+
- name: Code Coverage Summary Report
81+
uses: irongut/[email protected]
82+
with:
83+
filename: reports/coverage.xml
84+
badge: true
85+
format: 'markdown'
86+
output: 'both'
87+
88+
- name: Add Coverage PR Comment
89+
uses: marocchino/sticky-pull-request-comment@v2
90+
if: github.event_name == 'pull_request'
91+
with:
92+
recreate: true
93+
path: code-coverage-results.md
94+
95+
- name: Add Coverage Report to Job Summary
96+
run: cat code-coverage-results.md >> $GITHUB_STEP_SUMMARY

0 commit comments

Comments
 (0)