1616 # chrome_v: ['-1']
1717 name : Build and Test
1818 runs-on : ${{ matrix.os }}
19+ env :
20+ UV_PYTHON : ${{ matrix.python_v }}
1921 steps :
2022 - uses : actions/checkout@v4
2123 with :
@@ -28,16 +30,18 @@ jobs:
2830 # must actually checkout for version determination
2931 - run : git checkout ${{ github.ref_name }}
3032 - run : uv python install ${{ matrix.python_v }}
31- - run : uv python pin ${{ matrix.python_v }}
32- if : ${{ matrix.python_v != '' }}
3333 # don't modify sync file! messes up version!
3434 - run : uv sync --all-extras --locked --no-sources
35+ - run : git status
36+ - run : git diff --quiet HEAD || { echo "Working tree dirty"; exit 1; }
3537 - run : uv build
3638 - name : Reinstall from wheel
3739 run : >
3840 uv pip install dist/choreographer-$(uv
3941 run --no-sync --with setuptools-git-versioning
4042 setuptools-git-versioning)-py3-none-any.whl
43+ - run : uv run --no-sync python --version
44+ - run : uv pip freeze
4145 - run : uv run --no-sync choreo_get_chrome -v # --i ${{ matrix.chrome_v }}
4246 - name : Diagnose
4347 run : uv run --no-sync choreo_diagnose --no-run
@@ -53,18 +57,25 @@ jobs:
5357
5458 - name : Test (Debug)
5559 if : ${{ runner.debug && matrix.os != 'ubuntu-latest' }}
60+ env :
61+ CHOREO_ENABLE_DEBUG : 1
5662 run : uv run --no-sync poe debug-test
5763 timeout-minutes : 20
5864
5965 - name : Test (Debug, Linux)
6066 if : ${{ runner.debug && matrix.os == 'ubuntu-latest' }}
67+ env :
68+ CHOREO_ENABLE_DEBUG : 1
6169 run : xvfb-run uv run --no-sync poe debug-test
6270 timeout-minutes : 8
6371
6472 testpypi-publish :
6573 name : Upload release to TestPyPI
6674 needs : super-test
67- if : ${{ !cancelled() && !failure() && github.event_name == 'push' }}
75+ if : ${{ !cancelled() &&
76+ !failure() &&
77+ github.event_name == 'push' &&
78+ github.run_attempt == 1 }}
6879 runs-on : ubuntu-latest
6980 environment :
7081 name : testpypi
8091 with :
8192 python-version-file : " pyproject.toml"
8293 - run : git checkout ${{ github.ref_name }}
83- - run : uv sync --frozen --all-extras
94+ - run : uv sync --locked --all-extras --no-sources
8495 - run : uv build
8596 - name : Publish package distributions to PyPI
8697 uses : pypa/gh-action-pypi-publish@release/v1
0 commit comments