From 9dcb3a9d089ec488cf44f26895410af6420bd97a Mon Sep 17 00:00:00 2001 From: Egor Deev Date: Fri, 2 Oct 2026 12:11:17 +0000 Subject: [PATCH] =?UTF-8?q?CI:=20ruff,=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5?= =?UTF-8?q?=D1=80=D0=BA=D0=B0=20=D0=BC=D0=B8=D0=B3=D1=80=D0=B0=D1=86=D0=B8?= =?UTF-8?q?=D0=B9=20=D0=B8=20=D1=82=D0=B5=D1=81=D1=82=D1=8B=20=D0=BD=D0=B0?= =?UTF-8?q?=20=D0=BA=D0=B0=D0=B6=D0=B4=D1=8B=D0=B9=20push;=20=D1=81=D0=B1?= =?UTF-8?q?=D0=BE=D1=80=D0=BA=D0=B0=20Docker-=D0=BE=D0=B1=D1=80=D0=B0?= =?UTF-8?q?=D0=B7=D0=B0=20=D0=BF=D0=BE=20=D1=82=D0=B5=D0=B3=D1=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Образ публикуется в GitHub Packages (ghcr.io/edeev/deev.space) и в реестр dcr.deev.su/edeev/deev.space (учётные данные — секреты ZOT_USERNAME/ZOT_PASSWORD). --- .github/workflows/ci.yml | 24 +++++++++++++++++++++ .github/workflows/docker.yml | 42 ++++++++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 .github/workflows/ci.yml create mode 100644 .github/workflows/docker.yml diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..b950ed5 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,24 @@ +name: CI + +on: + push: + branches: [main] + pull_request: + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.12" + cache: pip + cache-dependency-path: requirements-dev.txt + - run: pip install -r requirements-dev.txt + - name: Ruff + run: ruff check . + - name: Миграции соответствуют моделям + run: python manage.py makemigrations --check --dry-run --settings=dspace.settings_test + - name: Тесты + run: pytest -q diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml new file mode 100644 index 0000000..324dd1e --- /dev/null +++ b/.github/workflows/docker.yml @@ -0,0 +1,42 @@ +name: Docker + +on: + push: + tags: ["v*"] + workflow_dispatch: + +jobs: + image: + runs-on: ubuntu-latest + permissions: + contents: read + packages: write + steps: + - uses: actions/checkout@v4 + - uses: docker/setup-buildx-action@v3 + - uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - uses: docker/login-action@v3 + with: + registry: dcr.deev.su + username: ${{ secrets.ZOT_USERNAME }} + password: ${{ secrets.ZOT_PASSWORD }} + - id: meta + uses: docker/metadata-action@v5 + with: + images: | + ghcr.io/edeev/deev.space + dcr.deev.su/edeev/deev.space + tags: | + type=semver,pattern={{version}} + type=semver,pattern={{major}}.{{minor}} + type=raw,value=latest + - uses: docker/build-push-action@v6 + with: + context: . + push: true + tags: ${{ steps.meta.outputs.tags }} + labels: ${{ steps.meta.outputs.labels }}