bflad / chef-stash

Chef Cookbook for Atlassian Stash
Other
37 stars 42 forks source link

Run test-kitchen suites in cloud hosting via Travis #108

Open patcon opened 9 years ago

patcon commented 9 years ago

https://github.com/mission-impossible-android/chef-cm-update-server/blob/master/.travis.yml

I would basically set it up like I've done here, and then we could get tests running on master all the time for all platforms, and not worry about ever running locally just to know if things broke

And my client, @mrjcleaver of Blended Perspectives, has agreed to sponsor the AWS time (within reason) that we'll need to keep this going. Woo! Thanks @mrjcleaver!

patcon commented 9 years ago

Hm. Maybe kitchen-digitalocean would be better. From our end, seems cheaper, and then we don't need to manage 2 AWS accounts in order to keep things clean and separate from our other running instances... https://www.digitalocean.com/pricing/

Thoughts @mrjcleaver?

mrjcleaver commented 9 years ago

How much would the code need to change to use kitchen-digitalocean instead of aws (is it just 1 line in a config file?) Digital Ocean does charge to keep a switched-off image, can you confirm we'd be destroying?

patcon commented 9 years ago

This seems to indicate positively on the hourly billing: https://www.digitalocean.com/help/pricing-and-billing/

And this is all the AWS-specific stuff needed: https://github.com/mission-impossible-android/chef-cm-update-server/blob/master/.kitchen.travis.yml

Would be less for DigitalOcean, as there's no complexity in availability zones or ami ids

patcon commented 9 years ago

Anyhow, added chef-sugar. Lemme know if that's not OK :)

patcon commented 9 years ago

Hm. I'll still test on my repo, but we'll probbaly want to add convert the travis scripts into files in test/support so that we can wrap everything in checks for $TRAVIS_SECURE_ENV_VARS, since lots of stuff shouldn't run if those aren't available (ie. on pull requests from forks -- they can still run on pull requests in the main repo, which is another reason it would be helpful to get push access, as then I could create my PR's from the main repo and have them tested fully)