-
Notifications
You must be signed in to change notification settings - Fork 33
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
Build bottles on Travis-CI and deploy to Bintray #114
Conversation
There appears to be a conflict because
|
This seems like a good idea, thanks @davidchall. The main thing you may want to additionally check is to only upload on PRs from non-forks. This unfortunately is also the possible blocker for this functionality being widely useful but it still seems like something useful to have in |
@MikeMcQuaid Could you please elaborate on why we should only upload on PRs from non-forks? Since taps often do get PRs from forks, I was thinking that we should do the upload after a PR has been accepted. That is, upload from non-PR builds on the master branch. |
Unfortunately Travis CI only exposes "secret" environment variables to PRs from non-forks i.e. the Bintray key needed for upload. |
Right, of course. That's why I thought uploading from master branch builds (after PR merge) might be better. Do you see any problem with this approach? |
@davidchall The main problem is you'll need to push a commit somehow with the updated bottle checksums. Broadly that does seem like a good approach, though. It's also something that could work pretty well for single-maintainer taps where you're the main person creating the PRs. |
Fix brew-audit for yoda formula.
@MikeMcQuaid These changes, in combination with my changes to I'm struggling to edit Once this barrier is overcome, |
- ulimit -n 1024 | ||
|
||
script: | ||
- brew test-bot | ||
- brew tap davidchall/test-bot |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would love you to submit a PR for some of these changes upstream 😁
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll make sure to open a PR sometime soon.
.travis.yml
Outdated
fi | ||
|
||
after_success: | ||
- if [ "$TRAVIS_BRANCH" = "master" ]; then |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could maybe just do/detect this on any non-fork-PR branch?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When to upload the bottle is a matter of workflow. I think we should discuss this when I open a PR on the test-bot repo. For now, I just want a proof of concept.
Hi @davidchall, First of all, thank you for all the (invaluable) information in this PR. I was looking for a way of using That would be great if we could summarize the whole thing (things like:
Too bad the test-bot project isn't that documented 😞 I was also wondering about the commit made by
Shouldn't it be pushed to master? Or it should be done by hand? Thanks for your work!! |
If I understand correctly the workflow:
bottle do
sha256 "62cbd8989162d53d648751b232e73a5fa3cf6cae1c73095b47c26b7c915d444b" => :high_sierra
sha256 "83f450adc044bd5faf8e820b2d4148ffdeffdb014643410a756547371fd692c5" => :sierra
sha256 "b5c57196809ed3a7ab04bc9e725587679d7e8d77b4cc03156536ce247ed7da81" => :el_capitan
end But at that time, no upload yet.
Did I understand correctly? |
Yep.
We'd welcome PRs to improve that!
|
Thank you so much!
I forked There still is a problem with the rebuilds needed in case of updated dependencies as @scpeters mentionned in Homebrew/brew#2572 (comment) and also mentionned in Homebrew/brew#3346. I only rely on |
Nice work |
@maelvalais Could you submit a pull request for your changes? |
Similarly a PR to Homebrew/brew's |
Here is the PR for |
Hi @maelvalais, thanks for all your hard work on this. I'm in the middle of a coast-to-coast move, so things have slowed down a bit. But I'm more than willing to open a PR against I was keeping notes on the steps I took to set this up, with the idea to update How-to-Create-and-Maintain-a-Tap once I had the entire workflow ready. But it seems that you reverse-engineered a lot of this already. I originally just focussed on creating and uploading the bottles to Bintray, and was then planning to figure out how to use staged Travis builds to push the commit that adds the bottle DSL to the formula. Looks like you've got this figured out, and in a smart way. Thank you!! |
@davidchall @maelvalais Sorry, I was meaning could the two of you submit your changes back up to the main homebrew-test-bot and Homebrew/brew repos. No rush, though. |
Thanks @davidchall :) I began to write some notes for How-to-Create-and-Maintain-a-Tap in a gist; I wrote it in case I forget something. |
* Build and upload bottles from master branch builds * Fix brew-audit for yoda formula
@davidchall Any updates here? No worries if not. Thanks! |
Hi! Update: I meant Homebrew/homebrew-test-bot (not Linuxbrew/homebrew-test-bot), sorry for that! I fixed this and changed the name of the PR also. |
Hi @MikeMcQuaid @maelvalais, I plan to get back into this project over the next couple of weeks and review the latest PR. Sounds like we're getting very close to merging back into the Homebrew repo. |
The aim is to use Travis-CI to build bottles for this tap's formulae, and then upload them to my Bintray.
@MikeMcQuaid seems keen for this functionality in Homebrew/brew#2572 and cartr/qt4-autobottler#1. This would be helpful for other tap maintainers, and might be incorporated into
brew tap-new
.I believe I can do this using
brew test-bot
andbrew test-bot --ci-upload
if the right environment variables are set and arguments are passed. Some changes tobrew test-bot
might be required.Notes:
HOMEBREW_BINTRAY_KEY
using encrypted Travis-CI variables