-
Notifications
You must be signed in to change notification settings - Fork 308
Investigate infrastructure management solutions (Deploy! Deploy! Deploy!) #1424
Comments
I quite like Puppet myself. Not familiar with Salt Stack, but Chef seems more geared towards developers doing quick test setups and Puppet more towards system admins doing production setups. Mostly small differences though. |
I'd prefer to have something that will work with Vagrant, and I know of that list at least Chef can do that |
@daxter There's room for more suggestions :P |
My point is that Vagrant makes it easy to get Gittip up and running locally, inside of a virtual machine so you don't have to install all the libraries in your host OS. And while I haven't tried using it yet, we already have a Vagrantfile |
Ansible would be another option (Python based, configs are done in YAML), there is a Vagrant provisioner as well: http://docs.vagrantup.com/v2/provisioning/ansible.html |
@rgieseke I've updated the issue text |
@rummik Once you get back up to speed w/ the new 'top, let's discuss this ticket and narrow it down and possibly reticket from it. |
@whit537 I'm going to have to look them over a bit more, but so far I'm liking the look of Chef's tiny configs |
More discussion: https://botbot.me/freenode/gittip/msg/7585870/ |
I would humbly suggest we consider managing our pipeline with the open source continuous delivery tool StriderCD: |
I don't think that this is a solution for our deployment problem. Strider is basically our existing travis app + deployment to one place (heroku), what we're looking for is something to manage our server infrastructure once we move away from Heroku. |
@clone1018 it's actually not tied to heroku at all. It's pluggable, and heroku just happens to be the common deployment strategy. I haven't had a chance to use it myself, but planning to use it to decouple my deployment processes from any one solution or setup :) https://github.com/search?q=%40Strider-CD+strider- |
Does Strider also do configuration management and software updates/installs? |
Oh and 👍 for Chef/Vagrant as well! |
Nope, that's outside it's scope. So, for instance, you could have a custom deployment strategy that just runs capistrano, and all the smarts are in the capfile, which deploys to some server spun up with chef/puppet/ansible/whatever I believe strider's main strength is building a transparent, user-friendly and decomposable build pipeline that can start with a single stage but be expanded as needed. |
What's the advantage over Travis? I'm guessing the "deploy on green"? |
The main thing is that travis can't really do pipelines, or if it does, it's because you did something like gave it your EC2 credentials and it's spinning up all this magic elsewhere. But by definition, that won't be visual and integrated -- it'll just be a line in the logs where travis will be doing stuff elsewhere. Travis instances are transient and it's not intended to pass things between runs. continuous delivery aims for pipelines where single steps can fail and you can promote the "build" through stages, and data gets passed between. So you could have smoke tests in one stage, capacity tests in another, sign-off by chad or team X in the final step, and you can promote a commit through those stages -- each representing more and more human or computational investment -- up until the given commit makes it to prod, having passed all the manual and automatic gates. EDIT: Sorry, if I just rehashed continuous delivery principles there, but not sure where everyone stands on them :) EDIT2: Keep in mind that I haven't had a chance to use strider yet, but I more have a sense of what a tool that touts itself as CD (continuous delivery) will be striving for. |
Per IRC here are the business goals for this ticket:
|
Recently discovered that there's a heroku labs feature for pipelines: Currently experimenting on our hubot with it: |
Interesting hubot deploy workflow at http://pipelinedeals.com: |
We decide to continue using Heroku in short term. |
IRC: https://botbot.me/freenode/gittip/msg/5899206/
Right now we're just using some manual configuration on gttp.co, but it would be nice to have this automated so we just have to push couple buttons to deploy to a second VM in the future.
We'll also be using this for www.gittip.com when we've outgrown Heroku, so whatever it is needs to be pretty much language agnostic.
Some suggested solutions (see IRC):
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: