diff --git "a/.github\\workflows\\ci.yml" "b/.github\\workflows\\ci.yml" new file mode 100644 index 0000000..642b985 --- /dev/null +++ "b/.github\\workflows\\ci.yml" @@ -0,0 +1,29 @@ +name: Python CI + +on: + push: + branches: [ master, dev ] + pull_request: + branches: [ master, dev ] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + + - name: Run tests + run: | + pytest diff --git "a/.github\\workflows\\lint.yml" "b/.github\\workflows\\lint.yml" new file mode 100644 index 0000000..0a95830 --- /dev/null +++ "b/.github\\workflows\\lint.yml" @@ -0,0 +1,31 @@ +name: Lint + +on: + push: + branches: [ master, dev ] + pull_request: + branches: [ master, dev ] + +jobs: + lint: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + + - name: Install linting tools + run: | + python -m pip install --upgrade pip + pip install flake8 black + + - name: Run flake8 + run: flake8 src tests + + - name: Run black (check only) + run: black --check src tests