diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index fd6eb4c0..a8d790b1 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -26,6 +26,8 @@ jobs: - name: Install UV uses: astral-sh/setup-uv@v5 + with: + version: ">=0.5.24" - name: Install dependencies run: uv sync --all-extras --frozen diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index df1d9415..190d6560 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -26,6 +26,8 @@ jobs: - name: Install UV uses: astral-sh/setup-uv@v5 + with: + version: ">=0.5.24" - name: Install dependencies run: uv sync --all-extras --frozen diff --git a/.github/workflows/release-dev.yml b/.github/workflows/release-dev.yml index 12cdf247..25c9e990 100644 --- a/.github/workflows/release-dev.yml +++ b/.github/workflows/release-dev.yml @@ -24,6 +24,8 @@ jobs: - name: Install UV uses: astral-sh/setup-uv@v5 + with: + version: ">=0.5.24" - name: Build package run: | diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 162b4f5c..59611459 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -31,6 +31,8 @@ jobs: - name: Install UV uses: astral-sh/setup-uv@v5 + with: + version: ">=0.5.24" - name: Check if there is a parent commit id: check-parent-commit diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 36b12c3e..586bc5a8 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -31,6 +31,8 @@ jobs: - name: Install UV uses: astral-sh/setup-uv@v5 + with: + version: ">=0.5.24" - name: Install dependencies run: uv sync --all-extras --frozen diff --git a/Dockerfile b/Dockerfile index d764dc6c..178eda1b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,8 +1,10 @@ -ARG VERSION=3 -FROM python:$VERSION +FROM python:3.13 -# Install pip and uv -RUN python -m pip install --upgrade pip && python -m pip install uv +WORKDIR /isort +COPY pyproject.toml uv.lock /isort/ + +# Install uv +COPY --from=ghcr.io/astral-sh/uv:0.5.24 /uv /uvx /bin/ # Setup as minimal a stub project as possible, simply to allow caching base dependencies # between builds. @@ -13,14 +15,11 @@ RUN mkdir -p /isort/tests RUN touch /isort/isort/__init__.py RUN touch /isort/tests/__init__.py RUN touch /isort/README.md -WORKDIR /isort -COPY pyproject.toml uv.lock /isort/ -RUN uv sync +COPY . /isort +RUN SETUPTOOLS_SCM_PRETEND_VERSION=0.0.0 uv sync --all-extras --frozen # Install latest code for actual project RUN rm -rf /isort -COPY . /isort -RUN uv sync # Run full test suite CMD /isort/scripts/test.sh