name: CI on: push: branches: ["main", "master"] tags: ["v*"] pull_request: jobs: lint-test-build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.12" - name: Install project + dev deps run: | python -m pip install --upgrade pip pip install -e .[dev] - name: Ruff run: ruff check . - name: Black run: black --check . - name: MyPy run: mypy src - name: Tests run: pytest -q - name: Login to Gitea registry if: github.event_name != 'pull_request' uses: docker/login-action@v3 with: registry: git.allucanget.biz username: ${{ secrets.GITEA_REGISTRY_USERNAME }} password: ${{ secrets.GITEA_REGISTRY_TOKEN }} - name: Build and push image if: github.event_name != 'pull_request' uses: docker/build-push-action@v6 with: context: . push: true tags: git.allucanget.biz/${{ secrets.GITEA_REGISTRY_NAMESPACE }}/arbitrade:${{ github.sha }}