| FROM python:3.13 |
| |
| WORKDIR /isort |
| COPY pyproject.toml uv.lock /isort/ |
| |
| # Install uv |
| COPY --from=ghcr.io/astral-sh/uv:0.6.0 /uv /uvx /bin/ |
| |
| # Setup as minimal a stub project as possible, simply to allow caching base dependencies |
| # between builds. |
| # |
| # If error is encountered in these steps, can safely be removed locally. |
| RUN mkdir -p /isort/isort |
| RUN mkdir -p /isort/tests |
| RUN touch /isort/isort/__init__.py |
| RUN touch /isort/tests/__init__.py |
| RUN touch /isort/README.md |
| 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 |
| |
| # Run full test suite |
| CMD /isort/scripts/test.sh |