{"action":"created","issue":{"url":"https://api.github.com/repos/nchammas/flintrock/issues/94","repository_url":"https://api.github.com/repos/nchammas/flintrock","labels_url":"https://api.github.com/repos/nchammas/flintrock/issues/94/labels{/name}","comments_url":"https://api.github.com/repos/nchammas/flintrock/issues/94/comments","events_url":"https://api.github.com/repos/nchammas/flintrock/issues/94/events","html_url":"https://github.com/nchammas/flintrock/pull/94","id":140442419,"number":94,"title":"Add support for non-default VPCs","user":{"login":"nchammas","id":1039369,"avatar_url":"https://avatars.githubusercontent.com/u/1039369?v=3","gravatar_id":"","url":"https://api.github.com/users/nchammas","html_url":"https://github.com/nchammas","followers_url":"https://api.github.com/users/nchammas/followers","following_url":"https://api.github.com/users/nchammas/following{/other_user}","gists_url":"https://api.github.com/users/nchammas/gists{/gist_id}","starred_url":"https://api.github.com/users/nchammas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nchammas/subscriptions","organizations_url":"https://api.github.com/users/nchammas/orgs","repos_url":"https://api.github.com/users/nchammas/repos","events_url":"https://api.github.com/users/nchammas/events{/privacy}","received_events_url":"https://api.github.com/users/nchammas/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":18,"created_at":"2016-03-13T03:35:47Z","updated_at":"2016-03-17T15:35:25Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/nchammas/flintrock/pulls/94","html_url":"https://github.com/nchammas/flintrock/pull/94","diff_url":"https://github.com/nchammas/flintrock/pull/94.diff","patch_url":"https://github.com/nchammas/flintrock/pull/94.patch"},"body":"The discussion in #85 and #92 revealed that Flintrock has thus far assumed that everyone works with a default VPC, and this is not true. If you created your AWS account in or before 2013, you very likely don't have a default VPC.\r\n\r\nThis PR adds support for non-default VPCs. The relevant reading is here:\r\n\r\n* http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/default-vpc.html\r\n* https://forums.aws.amazon.com/thread.jspa?messageID=707417\r\n* https://github.com/mitchellh/packer/issues/1935#issuecomment-111235752\r\n\r\nTo summarize the key points from the above links, as well as the key changes in this PR:\r\n\r\n1. Security groups are scoped to a VPC, and Flintrock clusters are identified by security group. This means that all Flintrock commands that need to identify a cluster now accept a VPC parameter.\r\n2. If you do not specify the VPC you want, Flintrock will query EC2 for the default VPC in your region. This is how Flintrock worked before this PR, but now that logic has been formalized and Flintrock will give a clean error message if you have no default VPC set in your selected region.\r\n3. When you specify the VPC explicitly, Flintrock assumes it's a non-default VPC and requires that you specify a subnet explicitly since users currently are unable to set default subnets on non-default VPCs. Flintrock will additionally check that your non-default VPC and subnet are configured correctly.\r\n\r\n@dhulse @marcuscollins - I've tested this PR thoroughly, but it would be a big help if you tested this in your environments and confirmed that it works for you as expected. The key things to test are the 3 points I just laid out above.\r\n\r\nTo install Flintrock at this PR, use this command:\r\n\r\n```\r\npip3 install -U git+https://github.com/nchammas/flintrock@non-default-vpc\r\n```\r\n\r\nThis will override any installation of Flintrock you have in your currently-active environment.\r\n\r\nFixes #85.\r\nFixes #92.\r\n"},"comment":{"url":"https://api.github.com/repos/nchammas/flintrock/issues/comments/197935193","html_url":"https://github.com/nchammas/flintrock/pull/94#issuecomment-197935193","issue_url":"https://api.github.com/repos/nchammas/flintrock/issues/94","id":197935193,"user":{"login":"nchammas","id":1039369,"avatar_url":"https://avatars.githubusercontent.com/u/1039369?v=3","gravatar_id":"","url":"https://api.github.com/users/nchammas","html_url":"https://github.com/nchammas","followers_url":"https://api.github.com/users/nchammas/followers","following_url":"https://api.github.com/users/nchammas/following{/other_user}","gists_url":"https://api.github.com/users/nchammas/gists{/gist_id}","starred_url":"https://api.github.com/users/nchammas/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nchammas/subscriptions","organizations_url":"https://api.github.com/users/nchammas/orgs","repos_url":"https://api.github.com/users/nchammas/repos","events_url":"https://api.github.com/users/nchammas/events{/privacy}","received_events_url":"https://api.github.com/users/nchammas/received_events","type":"User","site_admin":false},"created_at":"2016-03-17T15:35:25Z","updated_at":"2016-03-17T15:35:25Z","body":"Just checking in briefly here: @dhulse - Any progress on getting Flintrock working on this branch? Any leads I can help you investigate?"}}