cloudster 2.19.7 → 2.20.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.travis.yml +0 -2
- data/Gemfile +3 -8
- data/Gemfile.lock +15 -14
- data/VERSION +1 -1
- data/cloudster.gemspec +10 -13
- data/lib/cloudster.rb +1 -1
- data/lib/cloudster/cloud.rb +1 -1
- data/lib/cloudster/cloud_front.rb +20 -5
- data/lib/cloudster/{inner_merge.rb → hash_additions.rb} +3 -0
- data/lib/cloudster/s3.rb +3 -3
- data/spec/cloud_front_spec.rb +20 -5
- data/spec/{inner_merge_spec.rb → hash_additions.rb} +22 -0
- data/spec/s3_spec.rb +2 -2
- metadata +8 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 65213c19f49cad89f8f96711b46476ba6d216f5b
|
4
|
+
data.tar.gz: 02f3da6e9866c8198a68df710b3180c4fd0705d3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 04f46afbccb3fdd8e061f39094cf0c0fe65918a83632e0962252f5bb850c57b9c55f53684f0fbbfe5a167c296ab1f06c7686958253ecbdbe2ea8742312cecf80
|
7
|
+
data.tar.gz: 0d97b0b5128705db2d4a947fd479d075fc1cfe75ee895a2aae96a4adbe0cf2e29112c9da20575e845b03647f28f22090b91cdcfea545e40e91b4bf5b6ec29f6a
|
data/.travis.yml
CHANGED
data/Gemfile
CHANGED
@@ -1,16 +1,11 @@
|
|
1
1
|
source "http://rubygems.org"
|
2
|
-
# Add dependencies required to use your gem here.
|
3
|
-
# Example:
|
4
|
-
# gem "activesupport", ">= 2.3.5"
|
5
2
|
|
6
|
-
|
7
|
-
|
8
|
-
gem "fog", "1.10.0"
|
9
|
-
gem "json", "~>1.7.7"
|
3
|
+
gem "fog", "1.15.0"
|
4
|
+
|
10
5
|
group :development do
|
11
6
|
gem "rdoc"
|
12
7
|
gem "bundler"
|
13
|
-
gem "jeweler", "~> 1.8.
|
8
|
+
gem "jeweler", "~> 1.8.8"
|
14
9
|
end
|
15
10
|
|
16
11
|
group :test do
|
data/Gemfile.lock
CHANGED
@@ -3,26 +3,25 @@ GEM
|
|
3
3
|
specs:
|
4
4
|
addressable (2.3.5)
|
5
5
|
builder (3.2.2)
|
6
|
-
|
7
|
-
coveralls (0.6.7)
|
8
|
-
colorize
|
6
|
+
coveralls (0.7.0)
|
9
7
|
multi_json (~> 1.3)
|
10
8
|
rest-client
|
11
9
|
simplecov (>= 0.7)
|
10
|
+
term-ansicolor
|
12
11
|
thor
|
13
12
|
diff-lcs (1.2.4)
|
14
13
|
excon (0.25.3)
|
15
14
|
faraday (0.8.8)
|
16
15
|
multipart-post (~> 1.2.0)
|
17
|
-
fog (1.
|
16
|
+
fog (1.15.0)
|
18
17
|
builder
|
19
|
-
excon (~> 0.
|
18
|
+
excon (~> 0.25.0)
|
20
19
|
formatador (~> 0.2.0)
|
21
20
|
mime-types
|
22
21
|
multi_json (~> 1.0)
|
23
22
|
net-scp (~> 1.1)
|
24
23
|
net-ssh (>= 2.1.3)
|
25
|
-
nokogiri (~> 1.5
|
24
|
+
nokogiri (~> 1.5)
|
26
25
|
ruby-hmac
|
27
26
|
formatador (0.2.4)
|
28
27
|
git (1.2.6)
|
@@ -36,7 +35,7 @@ GEM
|
|
36
35
|
hashie (2.0.5)
|
37
36
|
highline (1.6.19)
|
38
37
|
httpauth (0.2.0)
|
39
|
-
jeweler (1.8.
|
38
|
+
jeweler (1.8.8)
|
40
39
|
builder
|
41
40
|
bundler (~> 1.0)
|
42
41
|
git (>= 1.2.5)
|
@@ -45,16 +44,16 @@ GEM
|
|
45
44
|
nokogiri (= 1.5.10)
|
46
45
|
rake
|
47
46
|
rdoc
|
48
|
-
json (1.
|
47
|
+
json (1.8.0)
|
49
48
|
jwt (0.1.8)
|
50
49
|
multi_json (>= 1.5)
|
51
50
|
mime-types (1.25)
|
52
|
-
multi_json (1.
|
51
|
+
multi_json (1.8.2)
|
53
52
|
multi_xml (0.5.5)
|
54
53
|
multipart-post (1.2.0)
|
55
54
|
net-scp (1.1.2)
|
56
55
|
net-ssh (>= 2.6.5)
|
57
|
-
net-ssh (2.
|
56
|
+
net-ssh (2.7.0)
|
58
57
|
nokogiri (1.5.10)
|
59
58
|
oauth2 (0.9.2)
|
60
59
|
faraday (~> 0.8)
|
@@ -74,7 +73,7 @@ GEM
|
|
74
73
|
rspec-expectations (~> 2.14.0)
|
75
74
|
rspec-mocks (~> 2.14.0)
|
76
75
|
rspec-core (2.14.5)
|
77
|
-
rspec-expectations (2.14.
|
76
|
+
rspec-expectations (2.14.3)
|
78
77
|
diff-lcs (>= 1.1.3, < 2.0)
|
79
78
|
rspec-mocks (2.14.3)
|
80
79
|
ruby-hmac (0.4.0)
|
@@ -82,7 +81,10 @@ GEM
|
|
82
81
|
multi_json (~> 1.0)
|
83
82
|
simplecov-html (~> 0.7.1)
|
84
83
|
simplecov-html (0.7.1)
|
84
|
+
term-ansicolor (1.2.2)
|
85
|
+
tins (~> 0.8)
|
85
86
|
thor (0.18.1)
|
87
|
+
tins (0.12.0)
|
86
88
|
|
87
89
|
PLATFORMS
|
88
90
|
ruby
|
@@ -90,8 +92,7 @@ PLATFORMS
|
|
90
92
|
DEPENDENCIES
|
91
93
|
bundler
|
92
94
|
coveralls (>= 0.5.7)
|
93
|
-
fog (= 1.
|
94
|
-
jeweler (~> 1.8.
|
95
|
-
json (~> 1.7.7)
|
95
|
+
fog (= 1.15.0)
|
96
|
+
jeweler (~> 1.8.8)
|
96
97
|
rdoc
|
97
98
|
rspec
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.
|
1
|
+
2.20.0
|
data/cloudster.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "cloudster"
|
8
|
-
s.version = "2.
|
8
|
+
s.version = "2.20.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Emil Soman"]
|
12
|
-
s.date = "2013-
|
12
|
+
s.date = "2013-10-17"
|
13
13
|
s.description = "Cloudster is a Ruby gem that was born to cut the learning curve involved \n in writing your own CloudFormation templates. If you don't know what a CloudFormation template is, \n but know about the AWS Cloud offerings, you can still use cloudster to provision your stack. \n Still in infancy , cloudster can create a very basic stack like a breeze. All kinds of contribution welcome !"
|
14
14
|
s.email = "emil.soman@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -36,7 +36,7 @@ Gem::Specification.new do |s|
|
|
36
36
|
"lib/cloudster/elastic_ip.rb",
|
37
37
|
"lib/cloudster/elasticache.rb",
|
38
38
|
"lib/cloudster/elb.rb",
|
39
|
-
"lib/cloudster/
|
39
|
+
"lib/cloudster/hash_additions.rb",
|
40
40
|
"lib/cloudster/options_manager.rb",
|
41
41
|
"lib/cloudster/output.rb",
|
42
42
|
"lib/cloudster/rds.rb",
|
@@ -48,7 +48,7 @@ Gem::Specification.new do |s|
|
|
48
48
|
"spec/elastic_ip_spec.rb",
|
49
49
|
"spec/elasticache_spec.rb",
|
50
50
|
"spec/elb_spec.rb",
|
51
|
-
"spec/
|
51
|
+
"spec/hash_additions.rb",
|
52
52
|
"spec/output_spec.rb",
|
53
53
|
"spec/rds_spec.rb",
|
54
54
|
"spec/s3_spec.rb",
|
@@ -64,24 +64,21 @@ Gem::Specification.new do |s|
|
|
64
64
|
s.specification_version = 4
|
65
65
|
|
66
66
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
67
|
-
s.add_runtime_dependency(%q<fog>, ["= 1.
|
68
|
-
s.add_runtime_dependency(%q<json>, ["~> 1.7.7"])
|
67
|
+
s.add_runtime_dependency(%q<fog>, ["= 1.15.0"])
|
69
68
|
s.add_development_dependency(%q<rdoc>, [">= 0"])
|
70
69
|
s.add_development_dependency(%q<bundler>, [">= 0"])
|
71
|
-
s.add_development_dependency(%q<jeweler>, ["~> 1.8.
|
70
|
+
s.add_development_dependency(%q<jeweler>, ["~> 1.8.8"])
|
72
71
|
else
|
73
|
-
s.add_dependency(%q<fog>, ["= 1.
|
74
|
-
s.add_dependency(%q<json>, ["~> 1.7.7"])
|
72
|
+
s.add_dependency(%q<fog>, ["= 1.15.0"])
|
75
73
|
s.add_dependency(%q<rdoc>, [">= 0"])
|
76
74
|
s.add_dependency(%q<bundler>, [">= 0"])
|
77
|
-
s.add_dependency(%q<jeweler>, ["~> 1.8.
|
75
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.8"])
|
78
76
|
end
|
79
77
|
else
|
80
|
-
s.add_dependency(%q<fog>, ["= 1.
|
81
|
-
s.add_dependency(%q<json>, ["~> 1.7.7"])
|
78
|
+
s.add_dependency(%q<fog>, ["= 1.15.0"])
|
82
79
|
s.add_dependency(%q<rdoc>, [">= 0"])
|
83
80
|
s.add_dependency(%q<bundler>, [">= 0"])
|
84
|
-
s.add_dependency(%q<jeweler>, ["~> 1.8.
|
81
|
+
s.add_dependency(%q<jeweler>, ["~> 1.8.8"])
|
85
82
|
end
|
86
83
|
end
|
87
84
|
|
data/lib/cloudster.rb
CHANGED
data/lib/cloudster/cloud.rb
CHANGED
@@ -71,7 +71,7 @@ module Cloudster
|
|
71
71
|
}
|
72
72
|
cloud_template['Resources'] = resource_template if !resource_template.empty?
|
73
73
|
cloud_template['Outputs'] = output_template if !output_template.empty?
|
74
|
-
return cloud_template.to_json
|
74
|
+
return cloud_template.delete_nil.to_json
|
75
75
|
end
|
76
76
|
|
77
77
|
# Triggers the stack creation
|
@@ -18,6 +18,9 @@ module Cloudster
|
|
18
18
|
def initialize(options = {})
|
19
19
|
require_options(options, [:name])
|
20
20
|
@name = options[:name]
|
21
|
+
@enabled = options[:enabled] || true
|
22
|
+
@default_root_object = options[:default_root_object] || 'index.html'
|
23
|
+
@aliases = options[:aliases] || []
|
21
24
|
end
|
22
25
|
|
23
26
|
# Merges the required CloudFormation template for adding an CloudFront to an s3 instance
|
@@ -47,11 +50,22 @@ module Cloudster
|
|
47
50
|
@name => {
|
48
51
|
"Type" => "AWS::CloudFront::Distribution",
|
49
52
|
"Properties" => {
|
50
|
-
"DistributionConfig"
|
51
|
-
"
|
52
|
-
"
|
53
|
+
"DistributionConfig"=> {
|
54
|
+
"Origins"=>[{
|
55
|
+
"DomainName"=> {"Fn::GetAtt" => [@instance_name, "DomainName"]},
|
56
|
+
"Id"=>@instance_name,
|
57
|
+
"S3OriginConfig"=> {}
|
58
|
+
}],
|
59
|
+
"DefaultRootObject" => @default_root_object,
|
60
|
+
"DefaultCacheBehavior" => {
|
61
|
+
"TargetOriginId" => @instance_name,
|
62
|
+
"ForwardedValues" => {
|
63
|
+
"QueryString" => "false"
|
64
|
+
},
|
65
|
+
"ViewerProtocolPolicy" => "allow-all"
|
53
66
|
},
|
54
|
-
"
|
67
|
+
"Aliases"=> @aliases,
|
68
|
+
"Enabled"=> @enabled.to_s
|
55
69
|
}
|
56
70
|
}
|
57
71
|
}
|
@@ -59,7 +73,8 @@ module Cloudster
|
|
59
73
|
}
|
60
74
|
outputs = {
|
61
75
|
@name => {
|
62
|
-
'domain_name' => {'Fn::GetAtt' => [@name, 'DomainName']}
|
76
|
+
'domain_name' => {'Fn::GetAtt' => [@name, 'DomainName']},
|
77
|
+
'distribution_id' => { "Ref" => @name }
|
63
78
|
}
|
64
79
|
}
|
65
80
|
template['Outputs'] = output_template(outputs)
|
data/lib/cloudster/s3.rb
CHANGED
@@ -14,7 +14,7 @@ module Cloudster
|
|
14
14
|
# * options<~Hash>
|
15
15
|
# * :name : String representing the resource name (Required)
|
16
16
|
# * :access_control : String consisting of one of the predefined permission values: Private | PublicRead | PublicReadWrite | AuthenticatedRead | BucketOwnerRead | BucketOwnerFullControl
|
17
|
-
# * :website_configuration : A hash containing the name of the index document and name of the error document. ( Example: {
|
17
|
+
# * :website_configuration : A hash containing the name of the index document and name of the error document. ( Example: {:index_document => "index.html", :error_document => "error.html"} )
|
18
18
|
#
|
19
19
|
# ==== Examples
|
20
20
|
# bucket = Cloudster::S3.new(
|
@@ -58,7 +58,7 @@ module Cloudster
|
|
58
58
|
# * options<~Hash>
|
59
59
|
# * :name : String representing the resource name (Required)
|
60
60
|
# * :access_control : String consisting of one of the predefined permission value. ( Example: PublicRead )
|
61
|
-
# * :website_configuration : A hash containing the name of the index document and name of the error document. ( Example: {
|
61
|
+
# * :website_configuration : A hash containing the name of the index document and name of the error document. ( Example: {:index_document => "index.html", :error_document => "error.html"} )
|
62
62
|
#
|
63
63
|
# ==== Returns
|
64
64
|
# * Ruby hash version of the Cloud Formation template for S3
|
@@ -67,7 +67,7 @@ module Cloudster
|
|
67
67
|
properties = {}
|
68
68
|
properties.merge!({"AccessControl" => options[:access_control]}) unless options[:access_control].nil?
|
69
69
|
unless options[:website_configuration].nil?
|
70
|
-
properties.merge!({"WebsiteConfiguration" => {"IndexDocument" => options[:website_configuration][
|
70
|
+
properties.merge!({"WebsiteConfiguration" => {"IndexDocument" => options[:website_configuration][:index_document], "ErrorDocument" => options[:website_configuration][:error_document]}})
|
71
71
|
end
|
72
72
|
template = {
|
73
73
|
'Resources' => {
|
data/spec/cloud_front_spec.rb
CHANGED
@@ -11,8 +11,11 @@ describe Cloudster::ChefClient do
|
|
11
11
|
end
|
12
12
|
describe '#add_to' do
|
13
13
|
it "should add elastic ip configuration to ec2 template" do
|
14
|
-
bucket =
|
15
|
-
cloud_front = Cloudster::CloudFront.new(:name => 'CloudFront'
|
14
|
+
bucket = Cloudster::S3.new(:name => 'S3ResourceName',:access_control => 'PublicRead')
|
15
|
+
cloud_front = Cloudster::CloudFront.new(:name => 'CloudFront',
|
16
|
+
:default_root_object => 'index.html',
|
17
|
+
:aliases => ['mysite.example.com', 'yoursite.example.com'],
|
18
|
+
:enabled => true)
|
16
19
|
cloud_front.add_to bucket
|
17
20
|
bucket.template.should ==
|
18
21
|
{
|
@@ -27,9 +30,20 @@ describe Cloudster::ChefClient do
|
|
27
30
|
"Type"=>"AWS::CloudFront::Distribution",
|
28
31
|
"Properties"=>{
|
29
32
|
"DistributionConfig"=> {
|
30
|
-
"
|
31
|
-
"
|
33
|
+
"Origins"=>[{
|
34
|
+
"DomainName"=> {"Fn::GetAtt" => ["S3ResourceName", "DomainName"]},
|
35
|
+
"Id"=>"S3ResourceName",
|
36
|
+
"S3OriginConfig"=> {}
|
37
|
+
}],
|
38
|
+
"DefaultRootObject"=>"index.html",
|
39
|
+
"DefaultCacheBehavior" => {
|
40
|
+
"TargetOriginId" => "S3ResourceName",
|
41
|
+
"ForwardedValues" => {
|
42
|
+
"QueryString" => "false"
|
43
|
+
},
|
44
|
+
"ViewerProtocolPolicy" => "allow-all"
|
32
45
|
},
|
46
|
+
"Aliases"=>["mysite.example.com", "yoursite.example.com"],
|
33
47
|
"Enabled"=>"true"
|
34
48
|
}
|
35
49
|
}
|
@@ -51,7 +65,8 @@ describe Cloudster::ChefClient do
|
|
51
65
|
"Value"=>{
|
52
66
|
"Fn::Join"=>[",",
|
53
67
|
[
|
54
|
-
{"Fn::Join"=>["|", ["domain_name", {"Fn::GetAtt"=>["CloudFront", "DomainName"]}]]}
|
68
|
+
{"Fn::Join"=>["|", ["domain_name", {"Fn::GetAtt"=>["CloudFront", "DomainName"]}]]},
|
69
|
+
{"Fn::Join"=>["|", ["distribution_id", {"Ref"=>"CloudFront"}]]}
|
55
70
|
]
|
56
71
|
]
|
57
72
|
}
|
@@ -28,4 +28,26 @@ describe "Hash" do
|
|
28
28
|
}
|
29
29
|
end
|
30
30
|
end
|
31
|
+
describe "#delete_nil" do
|
32
|
+
it "should delete keys which have nil values recursively" do
|
33
|
+
hash = {
|
34
|
+
'key1' => 'value1',
|
35
|
+
'key2' => {
|
36
|
+
'inner_key1' =>'inner_value1',
|
37
|
+
'inner_key2' =>nil
|
38
|
+
},
|
39
|
+
'key3' => nil,
|
40
|
+
'key4' => {
|
41
|
+
'key5' => nil
|
42
|
+
}
|
43
|
+
}
|
44
|
+
hash.delete_nil.should == {
|
45
|
+
'key1' => 'value1',
|
46
|
+
'key2' => {
|
47
|
+
'inner_key1' =>'inner_value1'
|
48
|
+
},
|
49
|
+
'key4' => {}
|
50
|
+
}
|
51
|
+
end
|
52
|
+
end
|
31
53
|
end
|
data/spec/s3_spec.rb
CHANGED
@@ -19,7 +19,7 @@ describe Cloudster::S3 do
|
|
19
19
|
}
|
20
20
|
end
|
21
21
|
it "should return a ruby hash for the resource cloudformation template" do
|
22
|
-
s3 = Cloudster::S3.new(:name => 'bucket_name', :access_control => "PublicRead", :website_configuration => {
|
22
|
+
s3 = Cloudster::S3.new(:name => 'bucket_name', :access_control => "PublicRead", :website_configuration => {:index_document => "index.html", :error_document => "error.html"} )
|
23
23
|
s3.template.should == {
|
24
24
|
'Resources' => {'bucket_name' => {'Type' => 'AWS::S3::Bucket', 'Properties' => {"AccessControl" => "PublicRead", "WebsiteConfiguration" => { "IndexDocument" => "index.html", "ErrorDocument" => "error.html" } }}},
|
25
25
|
"Outputs" => {"bucket_name"=>{"Value"=>{"Fn::Join"=>[",", [{"Fn::Join"=>["|", ["bucket_name", {"Ref"=>"bucket_name"}]]}, {"Fn::Join"=>["|", ["dns_name", {"Fn::GetAtt"=>["bucket_name", "DomainName"]}]]}, {"Fn::Join"=>["|", ["website_url", {"Fn::GetAtt"=>["bucket_name", "WebsiteURL"]}]]}]]}}}
|
@@ -32,7 +32,7 @@ describe Cloudster::S3 do
|
|
32
32
|
expect { Cloudster::S3.template() }.to raise_error(ArgumentError, 'Missing required argument: name')
|
33
33
|
end
|
34
34
|
it "should return a ruby hash for the resource cloudformation template" do
|
35
|
-
hash = Cloudster::S3.template(:name => 'bucket_name', :access_control => "PublicRead", :website_configuration => {
|
35
|
+
hash = Cloudster::S3.template(:name => 'bucket_name', :access_control => "PublicRead", :website_configuration => {:index_document => "index.html", :error_document => "error.html"} )
|
36
36
|
hash.should == {
|
37
37
|
'Resources' => {'bucket_name' => {'Type' => 'AWS::S3::Bucket', 'Properties' => {"AccessControl" => "PublicRead", "WebsiteConfiguration" => { "IndexDocument" => "index.html", "ErrorDocument" => "error.html" } }}},
|
38
38
|
"Outputs" => {"bucket_name"=>{"Value"=>{"Fn::Join"=>[",", [{"Fn::Join"=>["|", ["bucket_name", {"Ref"=>"bucket_name"}]]}, {"Fn::Join"=>["|", ["dns_name", {"Fn::GetAtt"=>["bucket_name", "DomainName"]}]]}, {"Fn::Join"=>["|", ["website_url", {"Fn::GetAtt"=>["bucket_name", "WebsiteURL"]}]]}]]}}}
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cloudster
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.20.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Emil Soman
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-10-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: fog
|
@@ -16,28 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 1.
|
19
|
+
version: 1.15.0
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 1.
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: json
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - ~>
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 1.7.7
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - ~>
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: 1.7.7
|
26
|
+
version: 1.15.0
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
28
|
name: rdoc
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,14 +58,14 @@ dependencies:
|
|
72
58
|
requirements:
|
73
59
|
- - ~>
|
74
60
|
- !ruby/object:Gem::Version
|
75
|
-
version: 1.8.
|
61
|
+
version: 1.8.8
|
76
62
|
type: :development
|
77
63
|
prerelease: false
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
79
65
|
requirements:
|
80
66
|
- - ~>
|
81
67
|
- !ruby/object:Gem::Version
|
82
|
-
version: 1.8.
|
68
|
+
version: 1.8.8
|
83
69
|
description: "Cloudster is a Ruby gem that was born to cut the learning curve involved
|
84
70
|
\n in writing your own CloudFormation templates. If you don't know what a CloudFormation
|
85
71
|
template is, \n but know about the AWS Cloud offerings, you can still use cloudster
|
@@ -111,7 +97,7 @@ files:
|
|
111
97
|
- lib/cloudster/elastic_ip.rb
|
112
98
|
- lib/cloudster/elasticache.rb
|
113
99
|
- lib/cloudster/elb.rb
|
114
|
-
- lib/cloudster/
|
100
|
+
- lib/cloudster/hash_additions.rb
|
115
101
|
- lib/cloudster/options_manager.rb
|
116
102
|
- lib/cloudster/output.rb
|
117
103
|
- lib/cloudster/rds.rb
|
@@ -123,7 +109,7 @@ files:
|
|
123
109
|
- spec/elastic_ip_spec.rb
|
124
110
|
- spec/elasticache_spec.rb
|
125
111
|
- spec/elb_spec.rb
|
126
|
-
- spec/
|
112
|
+
- spec/hash_additions.rb
|
127
113
|
- spec/output_spec.rb
|
128
114
|
- spec/rds_spec.rb
|
129
115
|
- spec/s3_spec.rb
|