diff --git a/.github/workflows/ci-tests.yml b/.github/workflows/ci-tests.yml index bbbdff13b..dd4eddf90 100644 --- a/.github/workflows/ci-tests.yml +++ b/.github/workflows/ci-tests.yml @@ -23,9 +23,9 @@ jobs: python-version: ["3.10", "3.13"] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/.github/workflows/pypi-publish.yml b/.github/workflows/pypi-publish.yml index b442a0be4..2b41533e3 100644 --- a/.github/workflows/pypi-publish.yml +++ b/.github/workflows/pypi-publish.yml @@ -9,16 +9,19 @@ on: jobs: release-pypi: - environment: release-pypi - # Upload to PyPI on every published release if: github.event.action == 'published' + environment: + name: release-pypi + url: https://pypi.org/p/OpenOA + permissions: + id-token: write runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v7 - name: Set up Python - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: - python-version: '3.11' + python-version: '3.13' - name: Build package run: | python -m pip install --upgrade pip @@ -29,4 +32,3 @@ jobs: uses: pypa/gh-action-pypi-publish@release/v1 with: verbose: True - password: ${{ secrets.PYPI_PASSWORD }} diff --git a/.github/workflows/test-pypi-publish.yml b/.github/workflows/test-pypi-publish.yml new file mode 100644 index 000000000..93a47c58a --- /dev/null +++ b/.github/workflows/test-pypi-publish.yml @@ -0,0 +1,32 @@ +name: Deploy to Test PyPI + +on: + push: + tags: [v*] + +jobs: + release-pypi: + runs-on: ubuntu-latest + if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') + environment: + name: release-pypi + url: https://test.pypi.org/p/OpenOA + permissions: + id-token: write + steps: + - uses: actions/checkout@v7 + - name: Set up Python + uses: actions/setup-python@v7 + with: + python-version: '3.13' + - name: Build package + run: | + python -m pip install --upgrade pip + pip install setuptools build wheel twine + python -m build + twine check --strict dist/* + - name: Publish package to Test PyPI + uses: pypa/gh-action-pypi-publish@release/v1 + with: + verbose: True + repository-url: https://test.pypi.org/legacy/