ci: fix and document CI
This commit is contained in:
@@ -1,26 +1,26 @@
|
||||
name: Docker CI
|
||||
on: [push]
|
||||
|
||||
concurrency:
|
||||
group: docker-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
on: [push, workflow_dispatch]
|
||||
|
||||
env:
|
||||
BUILDKIT_VERSION: 'v0.29.0'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
docker-build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: docker/setup-buildx-action@v1
|
||||
- uses: actions/cache@v4
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
- name: Set up buildkit cache
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: /tmp/.buildx-cache
|
||||
key: ${{ runner.os }}-buildx-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-buildx-
|
||||
- uses: docker/build-push-action@v2
|
||||
path: /var/lib/buildkit
|
||||
key: ${{ runner.os }}-buildkit-${{ env.BUILDKIT_VERSION }}
|
||||
- name: Test docker build
|
||||
uses: klemek/dockerfile-test-build@v1
|
||||
with:
|
||||
context: ./
|
||||
file: ./Dockerfile
|
||||
builder: ${{ steps.buildx.outputs.name }}
|
||||
push: false
|
||||
cache-from: type=local,src=/tmp/.buildx-cache
|
||||
cache-to: type=local,dest=/tmp/.buildx-cache-new
|
||||
- run: |
|
||||
rm -rf /tmp/.buildx-cache
|
||||
mv /tmp/.buildx-cache-new /tmp/.buildx-cache
|
||||
- run: echo ${{ steps.docker_build.outputs.digest }}
|
||||
buildkit_version: ${{ env.BUILDKIT_VERSION }}
|
||||
|
||||
@@ -1,38 +1,58 @@
|
||||
name: Python CI
|
||||
on: [ push ]
|
||||
|
||||
concurrency:
|
||||
group: python-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
on: [push, workflow_dispatch]
|
||||
|
||||
jobs:
|
||||
ruff:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: astral-sh/ruff-action@v3
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
- name: Run Ruff check
|
||||
uses: https://github.com/astral-sh/ruff-action@v3
|
||||
with:
|
||||
args: "check"
|
||||
|
||||
ruff-format-check:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v5
|
||||
- uses: astral-sh/ruff-action@v3
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
- name: Run Ruff format check
|
||||
uses: https://github.com/astral-sh/ruff-action@v3
|
||||
with:
|
||||
args: "format --check --diff"
|
||||
|
||||
ty:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- run: python3 -m pip install uv --break-system-packages
|
||||
- uses: actions/checkout@v5
|
||||
- run: python3 -m uv sync
|
||||
- run: python3 -m uv run ty check --output-format github
|
||||
- name: Install UV
|
||||
run: python3 -m pip install uv --break-system-packages
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
- name: Sync Python dependencies
|
||||
run: python3 -m uv sync
|
||||
- name: Run ty check
|
||||
run: python3 -m uv run ty check --output-format github
|
||||
|
||||
coverage:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- run: python3 -m pip install uv --break-system-packages
|
||||
- uses: actions/checkout@v5
|
||||
- run: python3 -m uv sync
|
||||
- run: python3 -m uv run coverage run -m unittest -v
|
||||
- run: python3 -m uv run coverage xml
|
||||
- uses: irongut/CodeCoverageSummary@v1.3.0
|
||||
- name: Install UV
|
||||
run: python3 -m pip install uv --break-system-packages
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v5
|
||||
- name: Sync Python dependencies
|
||||
run: python3 -m uv sync
|
||||
- name: Run tests with coverage
|
||||
run: python3 -m uv run coverage run -m unittest -v
|
||||
- name: Generate coverage XML report
|
||||
run: python3 -m uv run coverage xml
|
||||
- name: Create coverage summary
|
||||
uses: https://github.com/irongut/CodeCoverageSummary@v1.3.0
|
||||
with:
|
||||
filename: coverage.xml
|
||||
|
||||
Reference in New Issue
Block a user