-
Notifications
You must be signed in to change notification settings - Fork 105
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
Automate release to PyPi using a tagged commit and a deploy hook #146
Comments
Let's plan to start doing it for every milestone starting with milestone 0.2.0 ? |
Any idea if there are ways to automate this? Ideally this should not be manual work. It should be the task of an automated release script. I guess. (I would hope :-D) |
I updated the main text, striking out many formats which now seem irrelevant, given we now only have hard dependencies on python packages. Thus I think all we should do here is follow https://docs.travis-ci.com/user/deployment/pypi/ build pypi packages for tagged commits |
great! :-) |
Ok. I'm going to do this. At a first glance, I see (here: https://pypi.python.org/pypi/fontbakery/0.0.13) that the fontbakery "package index owners" are hash3g and davelab6. I guess it means only these users can trigger a deploy with their username/password credentials. I think I'll have to be added as a package owner. Can you add me, @davelab6 ? |
Also, I noticed that the author field on setup.py is a bit too generic "Font Bakery Authors". I'd like to have my name (as well as yours and Vitaly) in there. There's an interesting discussion about multiple authors in the author field here: http://bugs.python.org/issue6992 A good point is that the author_email field should ideally point to a project mailing-list to make it easier for the community to collaborate (avoiding user emails to a single developer). Would it be too annoying to have googlefonts-discuss@googlegroups.com listed in there or would you rather keep your personal email address in the PyPI author_email field, @davelab6 ? |
Yes - what is your username? |
fsanches |
Done
|
The generic name is used to prevent the complications mentioned in the thread :) If you want to spend time dealing with those, that's fine, but I don't care to :) I think it would only be annoying to have googlefonts-discuss@googlegroups.com listed in there if it got a lot of email; I doubt that's the case, so go ahead. |
I also doubt that fontbakery would get a large amount of email from users. So we'll stick to using the googlefonts-discuss mailing list for this v0.2.0 release. If we start getting annoyed by this, it may justify setting up a project mailing list in the future (again, I doubt it will produce any significant amount of messages). |
We're almost there! I was able to automate the build and pypi upload on travis, but I'm having serious trouble to get a successful auth:
https://travis-ci.org/googlefonts/fontbakery/builds/235070739 |
Both here (https://docs.travis-ci.com/user/encryption-keys/) and here (pypa/twine#233 (comment)) I got hints that I should escape special characteres on the pypi login password when encrypting it to store in the .travis.yaml file. I tried that, but it still fails. |
Also, a previous issue that I debugged earlier was that the build/upload jobs was not even triggering because of the safelisting we already had on our Travis rules: https://docs.travis-ci.com/user/customizing-the-build#Safelisting-or-blocklisting-branches After adding a white-list regex for version tags, I got it at least to run the build. But now I have to figure out what's still wrong on the authentication side of things... |
I tried adding a "server" key with value "https://upload.pypi.org/legacy/" but that also fails, but differently:
|
Hmm. Do you know any local (etc) package maintainers who could have
experience with this? :)
…On May 22, 2017 11:42 PM, "Felipe Corrêa da Silva Sanches" < ***@***.***> wrote:
I tried adding a "server" key with value "https://upload.pypi.org/legacy/"
but that also fails, but differently:
Uploading distributions to https://upload.pypi.org/legacy/
Uploading fontbakery-0.2.0.tar.gz
HTTPError: 403 Client Error: Invalid or non-existent authentication information. for url: https://upload.pypi.org/legacy/
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#146 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAP9y_kAxeLel9YcaWeQbnymMm_EK4uCks5r8lWYgaJpZM4A5lgc>
.
|
Maybe Luciano Ramalho (@ramgarlic)... |
I've just released fontbakery 0.2.0 on pypi by running locally:
|
I'll get back to this issue on the next release to make it work automatically on a Travis deploy hook. I've seen a website stating that "The first upload of your package has to be done manually." (https://web.archive.org/web/20170523183448/https://openedx.atlassian.net/wiki/display/OpenOPS/Publishing+a+Package+to+PyPI+using+Travis) |
Haha would be funny if that's why authentication didn't work
Since we make releases infrequently then a well documented manual process
is ok for me for a while
…On May 23, 2017 2:35 PM, "Felipe Corrêa da Silva Sanches" < ***@***.***> wrote:
I'll get back to this issue on the next release to make it work
automatically on a Travis deploy hook.
I've seen a website stating that "The first upload of your package has to
be done manually." (https://web.archive.org/web/20170523183448/https://
openedx.atlassian.net/wiki/display/OpenOPS/Publishing+a+
Package+to+PyPI+using+Travis)
I'm not sure that statement is accurate, but if that's the case, we'll
figure out when we apply the v0.3.0 tag :-)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#146 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAP9y4DsuZEyKd_ElOGGlya5J5tEmGJMks5r8ybigaJpZM4A5lgc>
.
|
I tried uploading a new release (Fontbakery v0.2.1 today in order to address issues related to #1406 (comment)) This command did not work today because the legacy pypi API was just deprecated (exactly today, July 3rd, what a coincidence!). So I ended up uploading the new release using twine this way: python setup.py bdist_wheel
twine upload dist/* |
@felipesanches is that enough automation for the 0.3.0 release? |
That's good enough for now, yes. But keep the issue open, please. |
I guess for now you could add info about how to make a release to README? |
In preparation for the 0.3.0 release. (issue #146)
Release guidelines and instructions have just been added to the README :-) |
We never really got that to work properly. (issue fonttools#146)
As part of the build process, create packages for downstream users, anddeploy them to gh-pages the Github Release pagePackages:Create SRPMs for FedoraCreate SRPMs for OpenSUSECreate a src deb file for DebianCreate a src deb file for Ubuntugenerate bower installation files, similar to https://github.com/davelab6/open-sans (This may need to use https://github.com/bramstein/sfnt2woff-zopfli to make WOFF v1 files, and an EOT tool to make EOT files.)Updated 2016-10-12: Striking out many formats which now seem irrelevant, given we now only have hard dependencies on python packages. Thus:
The text was updated successfully, but these errors were encountered: