X Tutup
The Wayback Machine - https://web.archive.org/web/20201204230203/https://github.com/PythonTurtle/PythonTurtle/pull/136
Skip to content
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

Use GITHUB_TOKEN for automatic deployments #136

Merged
merged 1 commit into from Aug 21, 2019

Conversation

@bittner
Copy link
Member

@bittner bittner commented Aug 20, 2019

This change will probably fix a small issue mentioned in #107 (comment).

@cool-RR, after merging this PR can you add a Git tag to master and push it to see the pipeline in action? e.g.

git checkout master
git tag 0.2.0
git push --tags
@bittner bittner added the automation label Aug 20, 2019
@bittner
Copy link
Member Author

@bittner bittner commented Aug 20, 2019

If there are any issues on Travis CI for the automatic releasing there is the Travis CI doumentation with hopefully sufficient detail. So, should really be able to get this working.

@cool-RR cool-RR merged commit 4690b07 into PythonTurtle:master Aug 21, 2019
2 checks passed
2 checks passed
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 21, 2019

Done, pushed the tag.

@bittner bittner deleted the bittner:feature/release-github-token branch Aug 21, 2019
@bittner
Copy link
Member Author

@bittner bittner commented Aug 21, 2019

Releasing to PyPI and GitHub releases failed. For macOS building the software bundle even failed. It's a pain!

@bittner
Copy link
Member Author

@bittner bittner commented Aug 21, 2019

For PyPI the credentials seem to be wrong:

HTTPError: 403 Client Error: Invalid or non-existent authentication information.

Can you try to update / encrypt your PyPI credentials on Travis again using the travis CLI? (related Travis CI docs)

@bittner
Copy link
Member Author

@bittner bittner commented Aug 21, 2019

And for GitHub releases it seems like the $GITHUB_TOKEN variable is not set up automatically. Can you follow the Joseph Luccisano tutorial and set this up? Then it's probably going to work. 🤞

@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 21, 2019

I added the Travis-encrypted password on 8430f85 can you please tell me if it's correct? There are special characters in my password and I know that could cause problems.

@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 21, 2019

And now I added a GitHub token on 131c5ed though their script automatically added it in a different place than it is today, so I moved it. If that's a problem, let me know.

Sorry that I'm clueless about these things!

@bittner
Copy link
Member Author

@bittner bittner commented Aug 21, 2019

  1. The first encrypted password is fine assuming you have encrypted your personal PyPI password.
  2. The $GITHUB_TOKEN you should add in the Travis project settings as an environment variable, instead. Note that $GITHUB_TOKEN is used in two other places in the same file. (Please, revert that commit and add a GITHUB_TOKEN environment variable to the settings.)
@bittner
Copy link
Member Author

@bittner bittner commented Aug 21, 2019

... afterwards simply push another tag, and your values will be tested.

@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 23, 2019

Okay, did that, did it work?

@bittner
Copy link
Member Author

@bittner bittner commented Aug 24, 2019

It worked! Partly. See the build history on Travis CI.

Well, at least the PyPI package page is now at its full glory. Nice! 🤓

@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 24, 2019

Cool :)

I tried the exe and it works.

@bittner
Copy link
Member Author

@bittner bittner commented Aug 24, 2019

Nice! The MSI installer doesn't, though. I think, we have this in one of the issues. I recall, we'd need to do a proper Visual Studio configuration for that. I guess, if AppVeyor finds a VS project file (one with a working MSI setup) it will automatically build a working MSI. If you want to take a look at that ... that would be helpful.

Releases to GitHub, I've just found out, are configured in the AppVeyor project in the Deployment tab. You'll need to provide a GitHub token (that is also described in the documentation). Can you try to set that up with your values?

Afterwards, how to make releases automatic is described in the "Configuring in appveyor.yml" section below. Give that a stake too, and open a PR if you want, so I can take a look at it before you merge. Does that sound doable?

@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 24, 2019

I can't justify to myself spending a lot of time on this, sorry. I've got a bunch of side projects I want to do and I'm struggling to find time to do them.

Here are things I'm willing to do:

  1. Anything that doesn't require figuring out how things work, like the two last commits I did.
  2. If there's any way to solve this problem with money, like paying a one-off service or a freelancer (as long as I don't have to manage them,) I'd be okay with spending a few hundred dollars of my money. If that's an option let me know.
  3. I can just give you my credentials to everything, temporarily, and you could do anything that requires my credentials. If that works for you, let me know which credentials you need and how to send them to you.
@bittner
Copy link
Member Author

@bittner bittner commented Aug 25, 2019

  • No-one should ever share any personal credentials, not even temporarily, with anyone. Hence, option 3 is ruled out hard.
  • Which problem would you solve with money? The problem is only that certain, even minor actions require access to your personal credentials, hence your cooperation is needed. That can be easily solved, but not with money.
  • With regards to money as a motivator, we can make #134 come true (e.g. a donation account that everyone could pay in, even you or me), but that's a totally different story.

There's obviously only one solution:

  1. You shall create a dedicated GitHub organization (e.g. github.com/PythonTurtle) and move the PythonTurlte repository there. Note that moving makes most sense, so that all issues and PRs are moved, too.
  2. Provide full, maintainer access ("Owner") to everyone you trust and want to be a maintainer.

This way you don't need to invest neither time nor money, and every maintainer will have it easy to solve technical issues without having to wait for help or permission.

Also, fork the repository yourself afterwards, so you have your own copy again. Every maintainer should do so, anyway.

@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 26, 2019

Sounds good. I didn't make a fork for myself for now, this way the old repo URL redirects to the new. Did you get the invitation with the owner-level access? Anything left to fix?

@bittner
Copy link
Member Author

@bittner bittner commented Aug 27, 2019

Wow, cool! That's a great move!

  • I updated the GitHub organization profile (URL, email, description, logo, etc.)
  • You may consider making your organization membership public at https://github.com/orgs/PythonTurtle/people (it's "private" by default).
  • Do you have an email (forwarding) setup on the pythonturtle.org domain? I've added a turtle@pythonturtle.org email address, just for fun. You may want to configure a forwarding, so it arrives at your inbox.
  • How about putting the source code of the pythonturtle.org website online, too? We can publish it with GitHub pages (for free) and have HTTPS automatically (for free), IIRC.
    • Code should go into a repository called pythonturtle.github.io
    • To use the pythonturtle.org domain you need to add an A record to your DNS configuration, and a CNAME record for the www subdomain. That's it!
@cool-RR
Copy link
Member

@cool-RR cool-RR commented Aug 27, 2019

I made my membership public.

I've edited the organization some more, I disagreed with some of your edits. I removed the email, looks like a solution looking for a problem.

Regarding moving the site source code: I'd like to keep an "if it's not broken don't fix it" attitude about this project, and change as little as possible.

@bittner
Copy link
Member Author

@bittner bittner commented Aug 27, 2019

As you wish. Sounds like another decision that needs to mature inside of you.

There will be a time that the project needs to update its website. But no worries. I'll ask you again when the day is due.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

2 participants
You can’t perform that action at this time.
X Tutup