-
Notifications
You must be signed in to change notification settings - Fork 2k
feat: GitHub Actions docker files CI #1194
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
Conversation
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.
This is super exciting! 😀 We need to move the deploy as well (or keep the current test runs as well until we're ready to drop travis) - now deploy
will run even if a test fails. It only runs on master, and I think we're unable to merge if any steps fail, but I'd like to be safe
Right now, the targets are only setup to run on |
With this, we loose the ability to build branches and there's no longer a build on merges? |
I like the approach but I think it still should merge on branches and merges. |
They rules could be changed to run on master, but I think making the branch "strict" https://help.github.com/en/github/administering-a-repository/types-of-required-status-checks would give the same result. It's less of an issue with hitting the "Update" button with this, since only affected images would rebuilt, rather than all the jobs |
05509fc
to
e858f6b
Compare
I've popped off the testing commit so this can land if there is agreement |
fbe62a9
to
d2f4811
Compare
11da232
to
8594152
Compare
@LaurentGoderre I added back the build on |
What mechanism are you guys using to actually push images to docker hub? I've seen you mention travis, but when I look at the script in the travis action for the deploy stage, all it does is build as far as I can tell. I recently took over as the primary maintainer of the octoprint/octoprint official image, and I'm really enjoying the way you guys are doing things, but I'm just looking to connect the dots for that final step. Are you doing the final publishing of images via auto builds on docker cloud? Love your work, and appreciate any insight you can give me about the image publish step of your overall workflow! |
The bot opens a PR to the official images, which ends up pushing to docker hub. E.g. the latest: docker-library/official-images#7697 |
Of course! Can't believe I missed that since you guys are an official image it would have to be in docker-library/official-images repo. Thanks for filling in the blank for me! |
6bf7a4e
to
157958c
Compare
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.
have you tried leaving stdin open without attaching it to psuedo-tty? docker run --rm -i node:"$full_tag"
?
a07e95c
to
46589ed
Compare
@nodejs/docker do you want to land this before v14? |
I see no reason to wait to land this if we think it works - it shouldn't be observable to consumers anyways. The way it's set up now it'll trigger an upstream PR even if a build fails - is the idea that it'll fail from the PR first anyways, so no broken versions can land on master? |
Yes, but i'll also look at that after this lands. I just didn't want to mix too much together |
46589ed
to
8105d38
Compare
Needs to be updated for v14. Should we keep the travis builds for a while to try GH Actions out, and then remove travis if we're happy? I fully expect we'll be happy with it, but who knows 🙂 |
37b0918
to
a7e5306
Compare
Added v14, and dropped v13 |
7d5c032
to
70a7f7f
Compare
@nodejs/docker thoughts on this one? I like it, FWIW 🙂 |
70a7f7f
to
c5397b9
Compare
Interactive shell doesn't seem to work on Actions
c5397b9
to
a84ff50
Compare
I think I'll go ahead an land this sometime after the security releases are out and are successfully published next week |
I'll land this tomorrow unless anyone from @nodejs/docker has any objections |
I'm still hugely in favour 👍 |
The job name was duplicated with the top level name.
Took @LaurentGoderre approach to the update.sh script generating out the Travis-CI file and converted it to create separate GitHub Actions.
path
approach limits the matrix to only queue jobs when a particular Dockerfile is touched.I added the DO NOT MERGE to this because I included a junk commit at the end to show the matrix getting triggered when the files are touched.-it
flag from the BATS testing since that doesn't seem to work on Actions