-
Notifications
You must be signed in to change notification settings - Fork 332
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Make CI publish on release creation. #1039
Make CI publish on release creation. #1039
Conversation
This PR adds the workflow, however a few steps with admin rights in this repo / at pypi are still necessary. @cjermain , @bilderbuchi |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #1039 +/- ##
=======================================
Coverage 58.48% 58.48%
=======================================
Files 262 262
Lines 18198 18198
=======================================
Hits 10643 10643
Misses 7555 7555
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Bump setup-python version to most recent version. |
One thing I am not sure about is the change to the release workflow -- what happens if there is a problem/issue with creating the Python package? Or is this really an edge-case concern? I don't remember encountering a problem in the local package-building step before, so maybe it's not worth taking this into account, and the benefit of packaging automation by far outweighs that. BTW, this PR should also update RELEASE.md with the updated workflow. |
That is, what I meant with the gist, as I thought, the realease workflow is in a gist.
The created release is only a github release. You can delete it (and the tag), as it is unlikely, that someone pulled the tag in exactly the moment between creating a github release and the push to pypi. I encountered it in pyleco, when I made a wrong tag name (dot between v and version), such that the creation failed. I deleted the github release and made a new one with the same commit. |
Yeah, although this violates the general git best practice that public history should be immutable (which we mainly practice with main/develop branches anyway as we allow force-pushing PR branches). So, having this as the formal/defined way is something I would avoid. Personally, I've always shied away from recreating an already pushed tag. I'm wondering how other projects using that action see that concern, or if there's a FAQ or best practice defined? |
Out of curiosity, did you see that you could also trigger the publish workflow on new tags? https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/#defining-a-workflow-job-environment |
For pyleco, I did
which worked well for me.
I see it as a special form of tags: You have that prominent window, showing you, the current version and the last versions (you can have more tags than just versions).
I did not look for that. |
You have to create a tag for setuptools to succeed. We could do as a workflow either:
Anyways, as you said, github releases are (for python packages on PyPI) not very important. |
@bilderbuchi do you want to think about this, as a preparation for the 0.14 release? |
dd39443
to
256ebc3
Compare
I rebased on master |
not sure what you are referring to here, but AFAIK only Colin has the admin bit on this repo (but I could not confirm that, my settings view is quite limited). We should probably take this up with him by email, if we can extend that circle. Otherwise we'd have to again put him into the critical path for getting releases out. |
I referred to the tasks in the first post: creating the
No, once he has set it up, we don't need the admin rights anymore. |
OK then, fine with me , also to try this out with the upcoming release. :-) |
As Colin did the requirements, we can merge, I think. |
LGTM! |
Requires also the following steps:
release