Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 3 additions & 37 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ on:

defaults:
run:
shell: bash -l {0} # required for conda env
shell: bash

jobs:
check_release:
Expand All @@ -23,24 +23,6 @@ jobs:
- run: tox -e check-release
if: github.event_name == 'release' && github.event.action == 'published'

build_conda:
name: Conda
needs: check_release
strategy:
matrix:
variant:
- {os: ubuntu-24.04, target: linux_64}
- {os: macos-13, target: osx_64}
- {os: macos-14, target: osx_arm64}
- {os: windows-2022, target: win_64}
- {os: ubuntu-24.04-arm, target: linux_arm64}
python-version: ["3.11", "3.12", "3.13"]
uses: ./.github/workflows/conda.yml
with:
os: ${{ matrix.variant.os }}
target: ${{ matrix.variant.target }}
python-version: ${{ matrix.python-version }}

build_sdist:
name: Build SDist
needs: check_release
Expand Down Expand Up @@ -77,7 +59,7 @@ jobs:

upload_pypi:
name: Deploy PyPI
needs: [build_wheels, build_sdist, build_conda]
needs: [build_wheels, build_sdist]
runs-on: ubuntu-24.04
environment: release
permissions:
Expand All @@ -92,22 +74,6 @@ jobs:
pattern: 'dist*'
- uses: pypa/[email protected]

upload_conda:
name: Deploy Conda Forge
needs: [build_wheels, build_sdist, build_conda]
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also remove build_conda?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I thought maybe we wanted to keep it to prevent pypi from deploying if the conda build fails?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Which actual problems would that catch, and how many false-positive build fails would we get for every problem caught?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It would catch any problem that causes the conda build to fail while the pypi build does not fail. Doesn't seem like a too exotic failure mode.
But if you think that is an unlikely scenario then we can remove it.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my experience many fails are due to CI problems, not actually anything that is broken in the package. I think it was discussed elsewhere that we anyway need (periodic?) jobs that verify that conda-packaging still works. I don't think this is that purpose of a release build?

runs-on: ubuntu-24.04
if: github.event_name == 'release' && github.event.action == 'published'

steps:
- uses: actions/download-artifact@v4
with:
pattern: 'conda*'
- uses: conda-incubator/setup-miniconda@v3
with:
python-version: '3.12'
- run: conda install -c conda-forge --yes anaconda-client
- run: anaconda --token ${{ secrets.ANACONDATOKEN }} upload --user scipp --label main $(find . -type f -name "*.conda")

manage-versions:
name: Manage Versions
needs: check_release
Expand All @@ -131,7 +97,7 @@ jobs:
echo "replaced=$(python docs/version.py --version=${GITHUB_REF_NAME} --action=get-replaced)" >> $GITHUB_OUTPUT

docs:
needs: [upload_conda, upload_pypi, manage-versions]
needs: [upload_pypi, manage-versions]
uses: ./.github/workflows/docs.yml
with:
publish: ${{ github.event_name == 'release' && github.event.action == 'published' }}
Expand Down