mystro-common 0.1.11 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. data/.gitignore +3 -0
  2. data/.rspec +2 -0
  3. data/CHANGELOG.md +42 -4
  4. data/Gemfile +7 -1
  5. data/Rakefile +137 -1
  6. data/lib/{mystro/ext/fog → fog/ext}/balancer.rb +0 -0
  7. data/lib/fog/ext/dynect/dns.rb +140 -0
  8. data/lib/fog/ext/dynect/models/dns/record.rb +66 -0
  9. data/lib/fog/ext/dynect/models/dns/records.rb +87 -0
  10. data/lib/fog/ext/dynect/models/dns/zone.rb +60 -0
  11. data/lib/fog/ext/dynect/models/dns/zones.rb +29 -0
  12. data/lib/fog/ext/dynect/requests/dns/delete_record.rb +56 -0
  13. data/lib/fog/ext/dynect/requests/dns/delete_zone.rb +42 -0
  14. data/lib/fog/ext/dynect/requests/dns/get_all_records.rb +56 -0
  15. data/lib/fog/ext/dynect/requests/dns/get_node_list.rb +56 -0
  16. data/lib/fog/ext/dynect/requests/dns/get_record.rb +85 -0
  17. data/lib/fog/ext/dynect/requests/dns/get_zone.rb +58 -0
  18. data/lib/fog/ext/dynect/requests/dns/post_record.rb +72 -0
  19. data/lib/fog/ext/dynect/requests/dns/post_session.rb +44 -0
  20. data/lib/fog/ext/dynect/requests/dns/post_zone.rb +71 -0
  21. data/lib/fog/ext/dynect/requests/dns/put_zone.rb +76 -0
  22. data/lib/fog/ext/dynect.rb +26 -0
  23. data/lib/mystro/cloud/action.rb +22 -0
  24. data/lib/mystro/cloud/connect/aws/balancer.rb +55 -0
  25. data/lib/mystro/cloud/connect/aws/compute.rb +151 -0
  26. data/lib/mystro/cloud/connect/aws/listener.rb +36 -0
  27. data/lib/mystro/cloud/connect/aws/record.rb +58 -0
  28. data/lib/mystro/cloud/connect/aws/zone.rb +35 -0
  29. data/lib/mystro/cloud/connect/aws.rb +14 -0
  30. data/lib/mystro/cloud/connect/dynect/record.rb +72 -0
  31. data/lib/mystro/cloud/connect/dynect/zone.rb +35 -0
  32. data/lib/mystro/cloud/connect/dynect.rb +17 -0
  33. data/lib/mystro/cloud/connect/fog.rb +66 -0
  34. data/lib/mystro/cloud/connect.rb +64 -0
  35. data/lib/mystro/cloud/model/balancer.rb +15 -0
  36. data/lib/mystro/cloud/model/compute.rb +27 -0
  37. data/lib/mystro/cloud/model/listener.rb +30 -0
  38. data/lib/mystro/cloud/model/record.rb +20 -0
  39. data/lib/mystro/cloud/model/volume.rb +12 -0
  40. data/lib/mystro/cloud/model/zone.rb +9 -0
  41. data/lib/mystro/cloud/model.rb +183 -0
  42. data/lib/mystro/cloud.rb +32 -0
  43. data/lib/mystro/common/version.rb +4 -3
  44. data/lib/mystro/dsl/balancer.rb +18 -0
  45. data/lib/mystro/dsl/compute.rb +57 -0
  46. data/lib/mystro/dsl/health.rb +7 -0
  47. data/lib/mystro/dsl/listener.rb +5 -0
  48. data/lib/mystro/dsl/oldtemplate.rb +281 -0
  49. data/lib/mystro/dsl/template.rb +12 -278
  50. data/lib/mystro/dsl/template_file.rb +18 -0
  51. data/lib/mystro/dsl/volume.rb +8 -0
  52. data/lib/mystro/dsl.rb +40 -0
  53. data/lib/mystro/organization.rb +83 -0
  54. data/lib/mystro/plugin.rb +4 -3
  55. data/lib/mystro/provider.rb +40 -0
  56. data/lib/mystro/userdata.rb +1 -1
  57. data/lib/mystro-common.rb +32 -31
  58. data/mystro-common.gemspec +2 -1
  59. data/spec/cloud/aws/balancer_spec.rb +10 -0
  60. data/spec/cloud/aws/compute_spec.rb +10 -0
  61. data/spec/cloud/aws/record_spec.rb +10 -0
  62. data/spec/cloud/dynect/record_spec.rb +10 -0
  63. data/spec/model/compute_spec.rb +36 -0
  64. data/spec/model/model_spec.rb +89 -0
  65. data/spec/model/record_spec.rb +27 -0
  66. data/spec/spec_helper.rb +36 -0
  67. data/spec/support/balancer.rb +49 -0
  68. data/spec/support/compute.rb +65 -0
  69. data/spec/support/record.rb +45 -0
  70. data/test/config.yml +71 -0
  71. metadata +99 -14
  72. data/lib/mystro/account.rb +0 -105
  73. data/lib/mystro/connect/balancer.rb +0 -91
  74. data/lib/mystro/connect/compute.rb +0 -100
  75. data/lib/mystro/connect/dns.rb +0 -51
  76. data/lib/mystro/connect/environment.rb +0 -31
  77. data/lib/mystro/connect.rb +0 -124
  78. data/lib/mystro/job.rb +0 -0
  79. data/lib/mystro/model.rb +0 -71
@@ -0,0 +1,36 @@
1
+ require 'spec_helper'
2
+ describe Mystro::Cloud::Compute do
3
+ let(:id) { 'i-00000000'}
4
+ let(:image) { 'ami-0145d268' }
5
+ let(:flavor) { 'm1.small' }
6
+ let(:keypair) { 'mystro' }
7
+ let(:groups) { ['default'] }
8
+ let(:tags) { {'Name' => "compute_spec_testing", 'Environment' => 'rspec', 'Organization' => 'test'} }
9
+ let(:model) {
10
+ Mystro::Cloud::Compute.new(
11
+ id: id,
12
+ image: image,
13
+ flavor: flavor,
14
+ keypair: keypair,
15
+ groups: groups,
16
+ tags: tags,
17
+ region: 'us-east-1',
18
+ state: :running,
19
+ zone: 'us-east-1d'
20
+ )
21
+ }
22
+
23
+ subject { model }
24
+ it { should be_instance_of(Mystro::Cloud::Compute) }
25
+ its(:identity) { should == id }
26
+ its(:id) { should == id }
27
+ its(:image) { should == image }
28
+ its(:flavor) { should == flavor }
29
+ its(:groups) { should == groups }
30
+ its(:keypair) { should == keypair }
31
+ its(:key) { should == keypair }
32
+ its(:name) { should == "compute_spec_testing"}
33
+ it "should be valid" do
34
+ expect { model.validate! }.not_to raise_error
35
+ end
36
+ end
@@ -0,0 +1,89 @@
1
+ require 'spec_helper'
2
+
3
+ class Mystro::Cloud::TestModel < Mystro::Cloud::Model
4
+ identity :id
5
+ attribute :name, aliases: [:alias]
6
+ attribute :string, type: String
7
+ attribute :int, type: Integer
8
+ attribute :notrequired, required: false
9
+ attribute :items, type: Array
10
+ attribute :numbers, type: Array
11
+ #has_many :records, type: 'Record'
12
+ end
13
+
14
+ describe Mystro::Cloud::TestModel do
15
+ let(:id) { "id" }
16
+ let(:model) {
17
+ Mystro::Cloud::TestModel.new(
18
+ id: id,
19
+ name: 'name',
20
+ string: "string",
21
+ int: 5,
22
+ items: ["one", "two", "three"],
23
+ numbers: [0, 1, 2],
24
+ #records: [Mystro::Cloud::Record.new(name:"blarg.blarg.com")]
25
+ )
26
+ }
27
+ context "identity" do
28
+ subject { model }
29
+ its(:identity) { should == id }
30
+ its(:id) { should == id }
31
+ end
32
+ context "validity" do
33
+ context "string" do
34
+ subject { model }
35
+ it "should be valid with string" do
36
+ expect { model.validate! }.not_to raise_error
37
+ end
38
+ it "should not be valid without string" do
39
+ model.string = nil
40
+ expect { model.validate! }.to raise_error
41
+ end
42
+ end
43
+ context "integer" do
44
+ subject { model }
45
+ it "should be valid with int" do
46
+ expect { model.validate! }.not_to raise_error
47
+ end
48
+ it "should not be valid without int" do
49
+ model.int = nil
50
+ expect { model.validate! }.to raise_error
51
+ end
52
+ end
53
+ context "not required" do
54
+ subject { model }
55
+ it "should be valid with or without notrequired" do
56
+ expect { model.validate! }.not_to raise_error
57
+ model.notrequired = 'blarg'
58
+ expect { model.validate! }.not_to raise_error
59
+ end
60
+ end
61
+ context "array" do
62
+ context "string" do
63
+ subject {model}
64
+ it "should not be valid without items" do
65
+ model.items = nil
66
+ expect { model.validate! }.to raise_error
67
+ end
68
+ it "should not be valid without numbers" do
69
+ model.numbers = nil
70
+ expect { model.validate! }.to raise_error
71
+ end
72
+ end
73
+ end
74
+ #context "has_many" do
75
+ # subject {model}
76
+ # it "should be valid with records" do
77
+ # expect { model.validate! }.not_to raise_error
78
+ # end
79
+ # it "should not be valid without records" do
80
+ # model.records = nil
81
+ # expect { model.validate! }.to raise_error
82
+ # end
83
+ # it "should not be valid without records being records" do
84
+ # model.records = [0]
85
+ # expect { model.validate! }.to raise_error
86
+ # end
87
+ #end
88
+ end
89
+ end
@@ -0,0 +1,27 @@
1
+ require 'spec_helper'
2
+ describe Mystro::Cloud::Record do
3
+ let(:name) { "blarg.dev.ops.rgops.com" }
4
+ let(:values) { ["127.7.8.9"] }
5
+ let(:ttl) { 60 }
6
+ let(:type) { 'A' }
7
+ let(:model) {
8
+ Mystro::Cloud::Record.new(
9
+ id: name,
10
+ name: name,
11
+ values: values,
12
+ ttl: ttl,
13
+ type: type
14
+ )
15
+ }
16
+
17
+ subject { model }
18
+ it { should be_instance_of(Mystro::Cloud::Record) }
19
+ its(:identity) { should == name }
20
+ its(:name) { should == name }
21
+ its(:values) { should == values }
22
+ its(:type) { should == type }
23
+ its(:ttl) { should == ttl }
24
+ it "should be valid" do
25
+ expect { model.validate! }.not_to raise_error
26
+ end
27
+ end
@@ -0,0 +1,36 @@
1
+ require 'mystro-common'
2
+
3
+ # This file was generated by the `rspec --init` command. Conventionally, all
4
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
5
+ # Require this file using `require "spec_helper"` to ensure that it is only
6
+ # loaded once.
7
+ #
8
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
9
+ RSpec.configure do |config|
10
+ config.treat_symbols_as_metadata_keys_with_true_values = true
11
+ config.run_all_when_everything_filtered = true
12
+ config.filter_run :focus
13
+
14
+ # Run specs in random order to surface order dependencies. If you find an
15
+ # order dependency and want to debug it, you can fix the order by providing
16
+ # the seed, which is printed after each run.
17
+ # --seed 1234
18
+ config.order = 'random'
19
+ end
20
+ Dir["./spec/support/**/*.rb"].sort.each {|f| require f}
21
+
22
+ #Mystro::Log.console_debug
23
+
24
+ def load_config(provider, type)
25
+ c = YAML.load_file('test/config.yml')
26
+ raise "missing configuration: #{provider.inspect} #{type.inspect}" unless c[provider] && c[provider][type]
27
+ c[provider][type]
28
+ end
29
+
30
+ def connect(provider, type)
31
+ cfg = load_config(provider, type)
32
+ pn = provider
33
+ opt = cfg['provider']||{}
34
+ data = cfg['config']||{}
35
+ Mystro::Cloud.new(pn, type, {options: opt, config: data})
36
+ end
@@ -0,0 +1,49 @@
1
+ require 'spec_helper'
2
+ shared_examples "cloud balancer" do
3
+ def cloud
4
+ @cloud ||= Mystro.balancer
5
+ end
6
+
7
+ def model
8
+ @model ||= begin
9
+ l = Mystro::Cloud::Listener.new(config[:listener])
10
+ Mystro::Cloud::Balancer.new(config[:model].merge(listeners: [l]))
11
+ end
12
+ end
13
+
14
+ before(:all) do
15
+ cloud
16
+ model
17
+ end
18
+
19
+ context "find" do
20
+ let(:id) { config[:id] }
21
+ let(:exists) { cloud.find(id) }
22
+
23
+ subject { exists }
24
+ it { should be_instance_of(Mystro::Cloud::Balancer) }
25
+ its(:id) { should == id }
26
+ end
27
+
28
+ context "all" do
29
+ let(:all) { cloud.all }
30
+ it "should return models" do
31
+ all.each do |i|
32
+ expect(i).to be_instance_of(Mystro::Cloud::Balancer)
33
+ end
34
+ end
35
+ end
36
+
37
+ if Mystro.config.test!.spend
38
+ context "create and destroy" do
39
+ subject { cloud.create(model) }
40
+
41
+ it { should be_instance_of(Mystro::Cloud::Balancer) }
42
+ its(:id) { should_not == nil }
43
+ it "should destroy" do
44
+ sleep 5
45
+ expect { cloud.destroy(instance) }.not_to raise_error
46
+ end
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,65 @@
1
+ require 'spec_helper'
2
+ shared_examples 'cloud compute' do
3
+ def model
4
+ @model ||= Mystro::Cloud::Compute.new(config[:model])
5
+ end
6
+
7
+ before(:all) do
8
+ cloud
9
+ model
10
+ end
11
+
12
+ context 'find' do
13
+ let(:id) { config[:id] }
14
+ let(:exists) { cloud.find(id) }
15
+
16
+ subject { exists }
17
+ it { should be_instance_of(Mystro::Cloud::Compute) }
18
+ its(:id) { should == id }
19
+ end
20
+
21
+ context 'missing' do
22
+ it 'should throw an error' do
23
+ expect { cloud.find('i-00000000') }.to raise_error(Mystro::Cloud::NotFound)
24
+ end
25
+ end
26
+
27
+ context 'all' do
28
+ let(:all) { cloud.all }
29
+ it 'should return models' do
30
+ all.each do |i|
31
+ expect(i).to be_instance_of(Mystro::Cloud::Compute)
32
+ end
33
+ end
34
+ end
35
+
36
+ context 'running' do
37
+ let(:running) { cloud.running }
38
+ it 'should return models' do
39
+ running.each do |i|
40
+ expect(i).to be_instance_of(Mystro::Cloud::Compute)
41
+ end
42
+ end
43
+ it 'should be running' do
44
+ running.each do |i|
45
+ expect(i.state).to eq('running')
46
+ end
47
+ end
48
+ end
49
+
50
+ context 'volumes' do
51
+ def vmodel
52
+ @vmodel ||= Mystro::Cloud::Compute.new(config[:vmodel])
53
+ end
54
+
55
+ it 'should create and destroy' do
56
+ vinstance = nil
57
+ expect { vinstance = cloud.create(vmodel) }.not_to raise_error
58
+ expect(vinstance).to be_instance_of(Mystro::Cloud::Compute)
59
+ expect(vinstance.id).not_to be(nil)
60
+ expect(vinstance.image).to eq(vmodel[:image])
61
+ expect(vinstance.flavor).to eq(vmodel[:flavor])
62
+ expect { cloud.destroy(vinstance) }.not_to raise_error
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,45 @@
1
+ require 'spec_helper'
2
+ shared_examples "cloud record" do
3
+ def model
4
+ @model ||= Mystro::Cloud::Record.new(config[:model])
5
+ end
6
+
7
+ before(:all) do
8
+ cloud
9
+ model
10
+ end
11
+
12
+ context "find", :find do
13
+ let(:id) { config[:id] }
14
+ let(:name) { config[:name] }
15
+ let(:model) { cloud.find(id) }
16
+
17
+ subject { model }
18
+ it { should be_instance_of(Mystro::Cloud::Record) }
19
+ its(:id) { should == id }
20
+ its(:name) { should == name }
21
+ end
22
+
23
+ context "all" do
24
+ let(:all) { cloud.all }
25
+ it "should return models" do
26
+ all.each do |i|
27
+ expect(i).to be_instance_of(Mystro::Cloud::Record)
28
+ end
29
+ end
30
+ end
31
+
32
+ context "create and destroy" do
33
+
34
+ it "should create and destroy" do
35
+ n = cloud.create(model)
36
+ expect(n).to be_instance_of(Mystro::Cloud::Record)
37
+ expect(n.name).not_to be(nil)
38
+
39
+ o = cloud.find_by_name(config[:model][:name])
40
+ expect { cloud.destroy(o) }.not_to raise_error
41
+
42
+ expect { cloud.find_by_name(config[:model][:name]) }.to raise_error
43
+ end
44
+ end
45
+ end
data/test/config.yml ADDED
@@ -0,0 +1,71 @@
1
+ aws:
2
+ record:
3
+ config:
4
+ :zone: ops.rgops.com
5
+ :id: mystro.dev.ops.rgops.com
6
+ :name: mystro.dev.ops.rgops.com
7
+ :model:
8
+ :name: blarg.dev.ops.rgops.com
9
+ :values:
10
+ - 127.7.8.9
11
+ :ttl: 60
12
+ :type: A
13
+ compute:
14
+ provider:
15
+ region: us-east-1
16
+ config:
17
+ flavor: m1.large
18
+ region: us-east-1
19
+ groups:
20
+ - default
21
+ keypair: mystro
22
+ image: ami-0145d268 # make sure this is an image in the region specified to fog.
23
+ # userdata package to use
24
+ userdata: rg
25
+ :id: i-3e99485f
26
+ :model:
27
+ :image: ami-0145d268
28
+ :flavor: m1.small
29
+ :keypair: mystro
30
+ :groups:
31
+ - default
32
+ :tags:
33
+ Name: compute_spec_testing
34
+ Environment: rspec
35
+ Organization: test
36
+ :vmodel:
37
+ :image: ami-0145d268
38
+ :flavor: m1.small
39
+ :keypair: mystro
40
+ :groups:
41
+ - default
42
+ :volumes:
43
+ - name: :root
44
+ size: 25
45
+ :tags:
46
+ Name: compute_spec_testing_volume
47
+ Environment: rspec
48
+ Organization: test
49
+ balancer:
50
+ provider:
51
+ region: us-east-1
52
+ :id: 'RG-EVENTS-1'
53
+ :model:
54
+ :id: 'BALANCER-SPEC'
55
+ :listener:
56
+ :protocol: HTTP
57
+ :port: 80
58
+ :to_protocol: HTTP
59
+ :to_port: 80
60
+ dynect:
61
+ record:
62
+ config:
63
+ :zone: rgops.com
64
+ :id: 75069554
65
+ :name: labs1.rgops.com
66
+ :model:
67
+ :name: blarg.rgops.com
68
+ :values:
69
+ - 127.7.8.9
70
+ :ttl: 60
71
+ :type: A
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mystro-common
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.11
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-09-10 00:00:00.000000000 Z
12
+ date: 2013-10-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: fog
@@ -18,7 +18,7 @@ dependencies:
18
18
  requirements:
19
19
  - - ~>
20
20
  - !ruby/object:Gem::Version
21
- version: 1.12.1
21
+ version: 1.15.0
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
- version: 1.12.1
29
+ version: 1.15.0
30
30
  - !ruby/object:Gem::Dependency
31
31
  name: yell
32
32
  requirement: !ruby/object:Gem::Requirement
@@ -107,6 +107,22 @@ dependencies:
107
107
  - - ! '>='
108
108
  - !ruby/object:Gem::Version
109
109
  version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: damsel
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 0.1.0
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 0.1.0
110
126
  description: common functionality for Mystro
111
127
  email:
112
128
  - me@shawncatz.com
@@ -115,30 +131,81 @@ extensions: []
115
131
  extra_rdoc_files: []
116
132
  files:
117
133
  - .gitignore
134
+ - .rspec
118
135
  - .ruby-version
119
136
  - CHANGELOG.md
120
137
  - Gemfile
121
138
  - LICENSE.txt
122
139
  - README.md
123
140
  - Rakefile
141
+ - lib/fog/ext/balancer.rb
142
+ - lib/fog/ext/dynect.rb
143
+ - lib/fog/ext/dynect/dns.rb
144
+ - lib/fog/ext/dynect/models/dns/record.rb
145
+ - lib/fog/ext/dynect/models/dns/records.rb
146
+ - lib/fog/ext/dynect/models/dns/zone.rb
147
+ - lib/fog/ext/dynect/models/dns/zones.rb
148
+ - lib/fog/ext/dynect/requests/dns/delete_record.rb
149
+ - lib/fog/ext/dynect/requests/dns/delete_zone.rb
150
+ - lib/fog/ext/dynect/requests/dns/get_all_records.rb
151
+ - lib/fog/ext/dynect/requests/dns/get_node_list.rb
152
+ - lib/fog/ext/dynect/requests/dns/get_record.rb
153
+ - lib/fog/ext/dynect/requests/dns/get_zone.rb
154
+ - lib/fog/ext/dynect/requests/dns/post_record.rb
155
+ - lib/fog/ext/dynect/requests/dns/post_session.rb
156
+ - lib/fog/ext/dynect/requests/dns/post_zone.rb
157
+ - lib/fog/ext/dynect/requests/dns/put_zone.rb
124
158
  - lib/mystro-common.rb
125
- - lib/mystro/account.rb
126
159
  - lib/mystro/capistrano.rb
160
+ - lib/mystro/cloud.rb
161
+ - lib/mystro/cloud/action.rb
162
+ - lib/mystro/cloud/connect.rb
163
+ - lib/mystro/cloud/connect/aws.rb
164
+ - lib/mystro/cloud/connect/aws/balancer.rb
165
+ - lib/mystro/cloud/connect/aws/compute.rb
166
+ - lib/mystro/cloud/connect/aws/listener.rb
167
+ - lib/mystro/cloud/connect/aws/record.rb
168
+ - lib/mystro/cloud/connect/aws/zone.rb
169
+ - lib/mystro/cloud/connect/dynect.rb
170
+ - lib/mystro/cloud/connect/dynect/record.rb
171
+ - lib/mystro/cloud/connect/dynect/zone.rb
172
+ - lib/mystro/cloud/connect/fog.rb
173
+ - lib/mystro/cloud/model.rb
174
+ - lib/mystro/cloud/model/balancer.rb
175
+ - lib/mystro/cloud/model/compute.rb
176
+ - lib/mystro/cloud/model/listener.rb
177
+ - lib/mystro/cloud/model/record.rb
178
+ - lib/mystro/cloud/model/volume.rb
179
+ - lib/mystro/cloud/model/zone.rb
127
180
  - lib/mystro/common/version.rb
128
181
  - lib/mystro/config.rb
129
- - lib/mystro/connect.rb
130
- - lib/mystro/connect/balancer.rb
131
- - lib/mystro/connect/compute.rb
132
- - lib/mystro/connect/dns.rb
133
- - lib/mystro/connect/environment.rb
182
+ - lib/mystro/dsl.rb
183
+ - lib/mystro/dsl/balancer.rb
184
+ - lib/mystro/dsl/compute.rb
185
+ - lib/mystro/dsl/health.rb
186
+ - lib/mystro/dsl/listener.rb
187
+ - lib/mystro/dsl/oldtemplate.rb
134
188
  - lib/mystro/dsl/template.rb
135
- - lib/mystro/ext/fog/balancer.rb
136
- - lib/mystro/job.rb
189
+ - lib/mystro/dsl/template_file.rb
190
+ - lib/mystro/dsl/volume.rb
137
191
  - lib/mystro/log.rb
138
- - lib/mystro/model.rb
192
+ - lib/mystro/organization.rb
139
193
  - lib/mystro/plugin.rb
194
+ - lib/mystro/provider.rb
140
195
  - lib/mystro/userdata.rb
141
196
  - mystro-common.gemspec
197
+ - spec/cloud/aws/balancer_spec.rb
198
+ - spec/cloud/aws/compute_spec.rb
199
+ - spec/cloud/aws/record_spec.rb
200
+ - spec/cloud/dynect/record_spec.rb
201
+ - spec/model/compute_spec.rb
202
+ - spec/model/model_spec.rb
203
+ - spec/model/record_spec.rb
204
+ - spec/spec_helper.rb
205
+ - spec/support/balancer.rb
206
+ - spec/support/compute.rb
207
+ - spec/support/record.rb
208
+ - test/config.yml
142
209
  homepage: http://github.com/mystro
143
210
  licenses: []
144
211
  post_install_message:
@@ -151,16 +218,34 @@ required_ruby_version: !ruby/object:Gem::Requirement
151
218
  - - ! '>='
152
219
  - !ruby/object:Gem::Version
153
220
  version: '0'
221
+ segments:
222
+ - 0
223
+ hash: -9476969156844360
154
224
  required_rubygems_version: !ruby/object:Gem::Requirement
155
225
  none: false
156
226
  requirements:
157
227
  - - ! '>='
158
228
  - !ruby/object:Gem::Version
159
229
  version: '0'
230
+ segments:
231
+ - 0
232
+ hash: -9476969156844360
160
233
  requirements: []
161
234
  rubyforge_project:
162
235
  rubygems_version: 1.8.25
163
236
  signing_key:
164
237
  specification_version: 3
165
238
  summary: common functionality for Mystro
166
- test_files: []
239
+ test_files:
240
+ - spec/cloud/aws/balancer_spec.rb
241
+ - spec/cloud/aws/compute_spec.rb
242
+ - spec/cloud/aws/record_spec.rb
243
+ - spec/cloud/dynect/record_spec.rb
244
+ - spec/model/compute_spec.rb
245
+ - spec/model/model_spec.rb
246
+ - spec/model/record_spec.rb
247
+ - spec/spec_helper.rb
248
+ - spec/support/balancer.rb
249
+ - spec/support/compute.rb
250
+ - spec/support/record.rb
251
+ - test/config.yml