-
Notifications
You must be signed in to change notification settings - Fork 36
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
Continuous Integration in the workflow #53
Comments
From @bacongobbler on August 24, 2016 15:32 Hey @pdoreau, are you interested in introducing this as a new feature, or just looking for advice on how to roll out CI with Workflow on your own? If the latter, how most users have been accomplishing a CI workflow with Workflow (heh) is by using their CI/CD pipeline of choice to build, test and publish their docker image to a registry, then once it has passed through QA they use Does that give you a general idea how to accomplish this? Always happy to help! |
From @pdoreau on August 24, 2016 19:52 Well, I'm discovering Workflow so I can't say if this would be an interesting feature or not. |
From @bacongobbler on October 12, 2016 15:57 Sorry for not getting back to this question sooner. There's no explicit documentation on getting this set up, however you can take a look at our current infrastructure and see how we set up our jenkins jobs for deployments! https://ci.deis.io/ Let me know if you have any more questions. |
From @olalonde on October 20, 2016 3:45 @bacongobbler a blog post or official documentation on this would be really great. Here's some things I'd like to see addressed:
The more I think about it, the more I feel like moving to a CI/CD workflow would eat into much of what Deis has to offer (except perhaps for routing + scaling) and I'm left wondering if I shouldn't just use CI/CD tool + Kubernetes directly. |
From @seanknox on October 20, 2016 4:39
@olalonde A common practice is use an
Short answer: yes. Slightly longer answer: Deis's internal registry manages the images generated from the builder component (e.g. from a |
From @bacongobbler on October 20, 2016 14:51 To add onto this, when we're usually talking about implementing a CI/CD pipeline for apps on Workflow, we're usually talking about
There is no tooling around how to build the image similar to the builder. You could try to write tooling around https://github.com/deis/slugbuilder, but it's usually easier to write tooling around a docker image to test/QA before pushing via
We're planning on publishing a blog post on how our current CI infrastructure is set up. It's on the roadmap! |
From @olalonde on October 24, 2016 20:32 FWIW, I ended up setting up CI/CD for all my apps (with CircleCI) 👍 thanks to @jchauncey for the help. To answer some of my own questions:
The easiest is to forget about deis-builder and just write Dockerfiles for each app.
It's much easier to avoid requiring configuration variables at build time but for my webpack build, I just added a few
I realized that AWS ECR registry was really cheap (you pay for S3 storage and bandwidth only I think) so it turns out to be actually the same cost (or less) as running deis-registry. I'm still using deis-registry for the platform but eventually, I'd like to use the external AWS ECR registry instead.
Setting up CI/CD definitely makes it easier to move away from Deis because the build phase is independent and you get a registry with all your app images. You could deploy those images somewhere else if needed (e.g. could be useful for running a full development environment locally). Still using Deis though because it's awesome :) |
From @bacongobbler on March 27, 2017 22:5 Adding onto the pile: TravisCI's dpl has support for deploying apps to Workflow. This has been available since v1; I've just completely forgotten to mention it. |
From @pdoreau on August 24, 2016 10:36
Hi. How to include an automated test phase (CI-like) in the workflow ?
Would that be possible, recommended or not ?
Copied from original issue: deis/workflow#470
The text was updated successfully, but these errors were encountered: