pangeo-data/climpred

New release of Climpred ?

Zeitsperre opened this issue ยท 9 comments

I'm excited to see how much more stable the latest main branch of climpred is in my downstream projects. Are we ready to put out a new release?

All ready from my point of view

Awesome! I don't have the privileges to make releases on GitHub, but if that's extended to me, I can take over.

If we want, I could even adapt a workflow from another project to make semi-automatic deployments to PyPI/TestPyPI. I'll open a PR for that!

There is even a GHA workflow for this but I doubt it actually works

Maintainer rights given

There is even a GHA workflow for this but I doubt it actually works

I see it. Yeah, I've recently been adopting Trusted Publishing so that we don't need to supply usernames and passwords. Much better for collaborative projects.

@aaronspring I'm nearly done my update. It's just missing one final step:

Would you be able to add the following configurations to the repo?

  • Settings โ†’ Environments โ†’ "New environment" โ†’ "staging"
  • Settings โ†’ Environments โ†’ "New environment" โ†’ "production"

For both:

  • Enable "Required reviewers" and add everyone who is allowed to make releases
  • Enable "Prevent self-review"
  • Enable "Allow administrators to bypass configured protection rules" (so that you don't have to wait on me if you're preparing a release)

This will give us a few security checks before anything is sent out to TestPyPI and PyPI. You'll be free to remove the PYPI_USERNAME and PYPI_PASSWORD secrets afterwards.

Both envs added. Thanks for leading this

Ah, two final things:

  1. For Trusted Publishing, you need to configure the Climpred PyPI with the following:
  • Your Account โ†’ climpred โ†’ "Publishing" โ†’ Below "Add a new publisher":
    • Owner: "pangeo-data"
    • Repository name: "climpred"
    • Workflow name: "publish-production-pypi.yml"
    • Environment name: "production"
  1. I've made an account for climpred on TestPyPI (https://test.pypi.org/project/climpred/). If you make an account there, I'll pass maintainer status onto you.

That should be the end of the configurations required!

  1. done
  2. no need