stackup 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6dc62580195d06b89d9eb18003751b1271e061fb
4
- data.tar.gz: 51755d4592858e5a8926e52b9ac16abc424db145
3
+ metadata.gz: 9a8f175c8ddd752ec57026404a9ee4271de9c4ea
4
+ data.tar.gz: 99a0690443e5889f6f620785b70755065b888264
5
5
  SHA512:
6
- metadata.gz: 9654b97ed0a4b01d84cc334d65c575e95714a12affe82d98a0316fab5d206362b16ec0ebf625ff97bcf4aa71b85d475f4ee0625f44ecda2f61213a66a86e9528
7
- data.tar.gz: 26072daf588afb7d27b9d31e3842c40e94a090a5d429c375d56e2667c5c92116add3b6af4e7e7b1d92a3f1fcbc5d390a2fc989600faf3818c428a11cc5b6bbcb
6
+ metadata.gz: 0dd816cc04d41494f3430db14fea66de09b5cfa49c6cc136a36f697deb82999b0686dfa6e48d8318634518f1c46dc9a93ff0067581b751009df83569ae67da1a
7
+ data.tar.gz: 555f18c97900cdf1460080c0e5bdc004b29abfb4893020ef1decc4039d3c9d9709f4984cbd6d57fcccf45216787096f0c7c40ea0c7f787fc1aa3c24d65a91018
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- stackup (0.0.1)
4
+ stackup (0.0.2)
5
5
  aws-sdk (~> 2.0)
6
6
  clamp (~> 1.0)
7
7
 
@@ -3,20 +3,19 @@ require "set"
3
3
  module Stackup
4
4
  class Stack
5
5
 
6
- attr_reader :stack, :name, :cf, :template, :monitor
6
+ attr_reader :stack, :name, :cf, :monitor
7
7
  SUCESS_STATES = ["CREATE_COMPLETE", "UPDATE_COMPLETE"]
8
8
  FAILURE_STATES = ["CREATE_FAILED", "DELETE_COMPLETE", "DELETE_FAILED", "UPDATE_ROLLBACK_FAILED", "ROLLBACK_FAILED", "ROLLBACK_COMPLETE", "ROLLBACK_FAILED", "UPDATE_ROLLBACK_COMPLETE", "UPDATE_ROLLBACK_FAILED"]
9
9
  END_STATES = SUCESS_STATES + FAILURE_STATES
10
10
 
11
- def initialize(name, template)
11
+ def initialize(name)
12
12
  @cf = Aws::CloudFormation::Client.new
13
13
  @stack = Aws::CloudFormation::Stack.new(:name => name, :client => cf)
14
14
  @monitor = Stackup::Monitor.new(@stack)
15
- @template = template
16
15
  @name = name
17
16
  end
18
17
 
19
- def create
18
+ def create(template)
20
19
  response = cf.create_stack(:stack_name => name,
21
20
  :template_body => template,
22
21
  :disable_rollback => true)
@@ -45,7 +44,7 @@ module Stackup
45
44
  false
46
45
  end
47
46
 
48
- def valid?
47
+ def valid?(template)
49
48
  response = cf.validate_template(template)
50
49
  response[:code].nil?
51
50
  end
Binary file
@@ -1,7 +1,7 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe Stackup::Monitor do
4
- let(:stack) { Stackup::Stack.new("name", "template") }
4
+ let(:stack) { Stackup::Stack.new("name") }
5
5
  let(:monitor) { Stackup::Monitor.new(stack) }
6
6
  let(:event) { double(Aws::CloudFormation::Event.new(:id => "1")) }
7
7
  let(:events) { [event] }
@@ -1,7 +1,8 @@
1
1
  require "spec_helper"
2
2
 
3
3
  describe Stackup::Stack do
4
- let(:stack) { Stackup::Stack.new("stack_name", double(String)) }
4
+ let(:stack) { Stackup::Stack.new("stack_name") }
5
+ let(:template) { double(String) }
5
6
  let(:cf_stack) { double(Aws::CloudFormation::Stack) }
6
7
  let(:cf) { double(Aws::CloudFormation::Client) }
7
8
 
@@ -25,26 +26,26 @@ describe Stackup::Stack do
25
26
  allow(response).to receive(:[]).with(:stack_id).and_return("1")
26
27
  allow(cf).to receive(:create_stack).and_return(response)
27
28
  allow(cf_stack).to receive(:wait_until).and_return(true)
28
- expect(stack.create).to be true
29
+ expect(stack.create(template)).to be true
29
30
  end
30
31
 
31
32
  it "should return nil if stack was not created" do
32
33
  allow(response).to receive(:[]).with(:stack_id).and_return(nil)
33
34
  allow(cf).to receive(:create_stack).and_return(response)
34
35
  allow(cf_stack).to receive(:wait_until).and_return(false)
35
- expect(stack.create).to be false
36
+ expect(stack.create(template)).to be false
36
37
  end
37
38
  end
38
39
 
39
40
  context "validate" do
40
41
  it "should be valid if cf validate say so" do
41
42
  allow(cf).to receive(:validate_template).and_return({})
42
- expect(stack.valid?).to be true
43
+ expect(stack.valid?(template)).to be true
43
44
  end
44
45
 
45
46
  it "should be invalid if cf validate say so" do
46
47
  allow(cf).to receive(:validate_template).and_return(:code => "404")
47
- expect(stack.valid?).to be false
48
+ expect(stack.valid?(template)).to be false
48
49
  end
49
50
 
50
51
  end
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  Gem::Specification.new do |spec|
5
5
 
6
6
  spec.name = "stackup"
7
- spec.version = "0.0.2"
7
+ spec.version = "0.0.3"
8
8
  spec.authors = ["Arvind Kunday", "Mike Williams"]
9
9
  spec.email = ["arvind.kunday@rea-group.com", "mike.williams@rea-group.com"]
10
10
  spec.summary = "Tools for deployment to AWS"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stackup
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Arvind Kunday