Compare commits
2 Commits
cc606e366a
...
4a8372f0d1
| Author | SHA1 | Date | |
|---|---|---|---|
| 4a8372f0d1 | |||
| 4d2bf99d12 |
@@ -10,7 +10,7 @@ on:
|
|||||||
branches: [ main ]
|
branches: [ main ]
|
||||||
|
|
||||||
env:
|
env:
|
||||||
POETRY_VERSION: 1.8.0
|
POETRY_VERSION: 2.2.1
|
||||||
PYTHON_VERSION: "3.12"
|
PYTHON_VERSION: "3.12"
|
||||||
REGISTRY: ${{ vars.PACKAGES_REGISTRY }}
|
REGISTRY: ${{ vars.PACKAGES_REGISTRY }}
|
||||||
IMAGE_NAME: ${{ gitea.repository }}
|
IMAGE_NAME: ${{ gitea.repository }}
|
||||||
@@ -28,13 +28,28 @@ jobs:
|
|||||||
uses: actions/setup-python@v5
|
uses: actions/setup-python@v5
|
||||||
with:
|
with:
|
||||||
python-version: ${{ env.PYTHON_VERSION }}
|
python-version: ${{ env.PYTHON_VERSION }}
|
||||||
cache: 'pip'
|
|
||||||
|
- name: Cache Poetry installation
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: ~/.local
|
||||||
|
key: poetry-${{ runner.os }}-${{ env.POETRY_VERSION }}
|
||||||
|
|
||||||
- name: Install Poetry
|
- name: Install Poetry
|
||||||
run: |
|
run: |
|
||||||
curl -sSL https://install.python-poetry.org | python3 -
|
curl -sSL https://install.python-poetry.org | python3 -
|
||||||
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
echo "$HOME/.local/bin" >> $GITHUB_PATH
|
||||||
|
|
||||||
|
- name: Cache Poetry dependencies
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
.venv
|
||||||
|
~/.cache/pypoetry
|
||||||
|
key: poetry-deps-${{ runner.os }}-${{ env.PYTHON_VERSION }}-${{ hashFiles('**/poetry.lock') }}
|
||||||
|
restore-keys: |
|
||||||
|
poetry-deps-${{ runner.os }}-${{ env.PYTHON_VERSION }}-
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
poetry config virtualenvs.in-project true
|
poetry config virtualenvs.in-project true
|
||||||
@@ -64,6 +79,17 @@ jobs:
|
|||||||
|
|
||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
with:
|
||||||
|
buildkitd-flags: --debug
|
||||||
|
|
||||||
|
- name: Cache Docker layers
|
||||||
|
uses: actions/cache@v4
|
||||||
|
with:
|
||||||
|
path: /tmp/.buildx-cache
|
||||||
|
key: buildx-${{ matrix.component }}-${{ github.sha }}
|
||||||
|
restore-keys: |
|
||||||
|
buildx-${{ matrix.component }}-
|
||||||
|
buildx-
|
||||||
|
|
||||||
- name: Log in to Container Registry
|
- name: Log in to Container Registry
|
||||||
uses: docker/login-action@v3
|
uses: docker/login-action@v3
|
||||||
@@ -90,5 +116,14 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
cache-from: type=registry,ref=${{ vars.PACKAGES_REGISTRY }}/${{ env.IMAGE_NAME }}/${{ matrix.component }}:buildcache
|
cache-from: |
|
||||||
cache-to: type=registry,ref=${{ vars.PACKAGES_REGISTRY }}/${{ env.IMAGE_NAME }}/${{ matrix.component }}:buildcache,mode=max
|
type=local,src=/tmp/.buildx-cache
|
||||||
|
type=registry,ref=${{ vars.PACKAGES_REGISTRY }}/${{ env.IMAGE_NAME }}/${{ matrix.component }}:buildcache
|
||||||
|
cache-to: |
|
||||||
|
type=local,dest=/tmp/.buildx-cache-new,mode=max
|
||||||
|
type=registry,ref=${{ vars.PACKAGES_REGISTRY }}/${{ env.IMAGE_NAME }}/${{ matrix.component }}:buildcache,mode=max
|
||||||
|
|
||||||
|
- name: Rotate Docker cache
|
||||||
|
run: |
|
||||||
|
rm -rf /tmp/.buildx-cache
|
||||||
|
mv /tmp/.buildx-cache-new /tmp/.buildx-cache || true
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ FROM python:3.12-slim AS builder
|
|||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
# Install Poetry and export plugin
|
# Install Poetry and export plugin
|
||||||
RUN pip install --no-cache-dir poetry==1.8.0 poetry-plugin-export
|
RUN pip install --no-cache-dir poetry==2.2.1 poetry-plugin-export
|
||||||
|
|
||||||
# Copy dependency files
|
# Copy dependency files
|
||||||
COPY pyproject.toml poetry.lock ./
|
COPY pyproject.toml poetry.lock ./
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ FROM python:3.12-slim AS builder
|
|||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
# Install Poetry and export plugin
|
# Install Poetry and export plugin
|
||||||
RUN pip install --no-cache-dir poetry==1.8.0 poetry-plugin-export
|
RUN pip install --no-cache-dir poetry==2.2.1 poetry-plugin-export
|
||||||
|
|
||||||
# Copy dependency files
|
# Copy dependency files
|
||||||
COPY pyproject.toml poetry.lock ./
|
COPY pyproject.toml poetry.lock ./
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ FROM python:3.12-slim AS builder
|
|||||||
WORKDIR /build
|
WORKDIR /build
|
||||||
|
|
||||||
# Install Poetry and export plugin
|
# Install Poetry and export plugin
|
||||||
RUN pip install --no-cache-dir poetry==1.8.0 poetry-plugin-export
|
RUN pip install --no-cache-dir poetry==2.2.1 poetry-plugin-export
|
||||||
|
|
||||||
# Copy dependency files
|
# Copy dependency files
|
||||||
COPY pyproject.toml poetry.lock ./
|
COPY pyproject.toml poetry.lock ./
|
||||||
|
|||||||
Reference in New Issue
Block a user