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.
- data/.gitignore +3 -0
- data/.rspec +2 -0
- data/CHANGELOG.md +42 -4
- data/Gemfile +7 -1
- data/Rakefile +137 -1
- data/lib/{mystro/ext/fog → fog/ext}/balancer.rb +0 -0
- data/lib/fog/ext/dynect/dns.rb +140 -0
- data/lib/fog/ext/dynect/models/dns/record.rb +66 -0
- data/lib/fog/ext/dynect/models/dns/records.rb +87 -0
- data/lib/fog/ext/dynect/models/dns/zone.rb +60 -0
- data/lib/fog/ext/dynect/models/dns/zones.rb +29 -0
- data/lib/fog/ext/dynect/requests/dns/delete_record.rb +56 -0
- data/lib/fog/ext/dynect/requests/dns/delete_zone.rb +42 -0
- data/lib/fog/ext/dynect/requests/dns/get_all_records.rb +56 -0
- data/lib/fog/ext/dynect/requests/dns/get_node_list.rb +56 -0
- data/lib/fog/ext/dynect/requests/dns/get_record.rb +85 -0
- data/lib/fog/ext/dynect/requests/dns/get_zone.rb +58 -0
- data/lib/fog/ext/dynect/requests/dns/post_record.rb +72 -0
- data/lib/fog/ext/dynect/requests/dns/post_session.rb +44 -0
- data/lib/fog/ext/dynect/requests/dns/post_zone.rb +71 -0
- data/lib/fog/ext/dynect/requests/dns/put_zone.rb +76 -0
- data/lib/fog/ext/dynect.rb +26 -0
- data/lib/mystro/cloud/action.rb +22 -0
- data/lib/mystro/cloud/connect/aws/balancer.rb +55 -0
- data/lib/mystro/cloud/connect/aws/compute.rb +151 -0
- data/lib/mystro/cloud/connect/aws/listener.rb +36 -0
- data/lib/mystro/cloud/connect/aws/record.rb +58 -0
- data/lib/mystro/cloud/connect/aws/zone.rb +35 -0
- data/lib/mystro/cloud/connect/aws.rb +14 -0
- data/lib/mystro/cloud/connect/dynect/record.rb +72 -0
- data/lib/mystro/cloud/connect/dynect/zone.rb +35 -0
- data/lib/mystro/cloud/connect/dynect.rb +17 -0
- data/lib/mystro/cloud/connect/fog.rb +66 -0
- data/lib/mystro/cloud/connect.rb +64 -0
- data/lib/mystro/cloud/model/balancer.rb +15 -0
- data/lib/mystro/cloud/model/compute.rb +27 -0
- data/lib/mystro/cloud/model/listener.rb +30 -0
- data/lib/mystro/cloud/model/record.rb +20 -0
- data/lib/mystro/cloud/model/volume.rb +12 -0
- data/lib/mystro/cloud/model/zone.rb +9 -0
- data/lib/mystro/cloud/model.rb +183 -0
- data/lib/mystro/cloud.rb +32 -0
- data/lib/mystro/common/version.rb +4 -3
- data/lib/mystro/dsl/balancer.rb +18 -0
- data/lib/mystro/dsl/compute.rb +57 -0
- data/lib/mystro/dsl/health.rb +7 -0
- data/lib/mystro/dsl/listener.rb +5 -0
- data/lib/mystro/dsl/oldtemplate.rb +281 -0
- data/lib/mystro/dsl/template.rb +12 -278
- data/lib/mystro/dsl/template_file.rb +18 -0
- data/lib/mystro/dsl/volume.rb +8 -0
- data/lib/mystro/dsl.rb +40 -0
- data/lib/mystro/organization.rb +83 -0
- data/lib/mystro/plugin.rb +4 -3
- data/lib/mystro/provider.rb +40 -0
- data/lib/mystro/userdata.rb +1 -1
- data/lib/mystro-common.rb +32 -31
- data/mystro-common.gemspec +2 -1
- data/spec/cloud/aws/balancer_spec.rb +10 -0
- data/spec/cloud/aws/compute_spec.rb +10 -0
- data/spec/cloud/aws/record_spec.rb +10 -0
- data/spec/cloud/dynect/record_spec.rb +10 -0
- data/spec/model/compute_spec.rb +36 -0
- data/spec/model/model_spec.rb +89 -0
- data/spec/model/record_spec.rb +27 -0
- data/spec/spec_helper.rb +36 -0
- data/spec/support/balancer.rb +49 -0
- data/spec/support/compute.rb +65 -0
- data/spec/support/record.rb +45 -0
- data/test/config.yml +71 -0
- metadata +99 -14
- data/lib/mystro/account.rb +0 -105
- data/lib/mystro/connect/balancer.rb +0 -91
- data/lib/mystro/connect/compute.rb +0 -100
- data/lib/mystro/connect/dns.rb +0 -51
- data/lib/mystro/connect/environment.rb +0 -31
- data/lib/mystro/connect.rb +0 -124
- data/lib/mystro/job.rb +0 -0
- 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
|
data/spec/spec_helper.rb
ADDED
@@ -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.
|
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-
|
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.
|
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.
|
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/
|
130
|
-
- lib/mystro/
|
131
|
-
- lib/mystro/
|
132
|
-
- lib/mystro/
|
133
|
-
- lib/mystro/
|
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/
|
136
|
-
- lib/mystro/
|
189
|
+
- lib/mystro/dsl/template_file.rb
|
190
|
+
- lib/mystro/dsl/volume.rb
|
137
191
|
- lib/mystro/log.rb
|
138
|
-
- lib/mystro/
|
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
|