heirloom 0.11.2 → 0.12.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +2 -0
- data/CHANGELOG.md +8 -0
- data/README.md +5 -0
- data/lib/heirloom.rb +1 -1
- data/lib/heirloom/config.rb +19 -7
- data/lib/heirloom/directory/directory.rb +3 -6
- data/lib/heirloom/env.rb +9 -0
- data/lib/heirloom/version.rb +1 -1
- data/spec/cli/rotate_spec.rb +2 -3
- data/spec/config_spec.rb +90 -65
- data/spec/directory/directory_spec.rb +6 -14
- data/spec/env_spec.rb +16 -0
- data/spec/spec_helper.rb +4 -0
- metadata +81 -34
data/.gitignore
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## HEAD:
|
2
|
+
|
3
|
+
## 0.12.0 (08/14/2013):
|
4
|
+
|
5
|
+
* Fixed bug 130 which did not exclude subdirectories
|
6
|
+
* Fixes bug 145 when no config file, it no longer errors out
|
7
|
+
* Added HEIRLOOM_CONFIG_FILE as alternate config file
|
8
|
+
|
1
9
|
## 0.11.2 (06/19/2013):
|
2
10
|
|
3
11
|
* Adding hashie to runtime.
|
data/README.md
CHANGED
data/lib/heirloom.rb
CHANGED
data/lib/heirloom/config.rb
CHANGED
@@ -25,19 +25,31 @@ module Heirloom
|
|
25
25
|
private
|
26
26
|
|
27
27
|
def load_config_file
|
28
|
-
config_file = "#{ENV['HOME']}/.heirloom.yml"
|
29
|
-
|
30
28
|
if File.exists? config_file
|
31
29
|
data = YAML::load File.open(config_file)
|
32
30
|
if data.has_key? @environment
|
33
|
-
data[@environment]
|
31
|
+
return data[@environment]
|
34
32
|
else
|
35
|
-
@logger.
|
36
|
-
exit 1
|
33
|
+
@logger.warn "Environment '#{@environment}' not found in config file."
|
37
34
|
end
|
38
|
-
else
|
39
|
-
{ }
|
40
35
|
end
|
36
|
+
{}
|
37
|
+
end
|
38
|
+
|
39
|
+
def config_file
|
40
|
+
@config_file ||= env_config_file || default_config_file
|
41
|
+
end
|
42
|
+
|
43
|
+
def env_config_file
|
44
|
+
env.load 'HEIRLOOM_CONFIG_FILE'
|
45
|
+
end
|
46
|
+
|
47
|
+
def default_config_file
|
48
|
+
"#{env.load 'HOME'}/.heirloom.yml"
|
49
|
+
end
|
50
|
+
|
51
|
+
def env
|
52
|
+
@env ||= Env.new
|
41
53
|
end
|
42
54
|
|
43
55
|
end
|
@@ -17,7 +17,6 @@ module Heirloom
|
|
17
17
|
|
18
18
|
@logger.debug "Building Heirloom '#{@file}' from '#{@path}'."
|
19
19
|
@logger.debug "Excluding #{@exclude.to_s}."
|
20
|
-
@logger.debug "Adding #{files_to_pack}."
|
21
20
|
|
22
21
|
return build_archive unless @secret
|
23
22
|
|
@@ -28,7 +27,7 @@ module Heirloom
|
|
28
27
|
|
29
28
|
def build_archive
|
30
29
|
return false unless tar_in_path?
|
31
|
-
command = "cd #{@path} && tar czf #{@file} #{
|
30
|
+
command = "cd #{@path} && tar czf #{@file} #{build_exclude_files} ."
|
32
31
|
@logger.info "Archiving with: `#{command}`"
|
33
32
|
output = `#{command}`
|
34
33
|
@logger.debug "Exited with status: '#{$?.exitstatus}' ouput: '#{output}'"
|
@@ -50,10 +49,8 @@ module Heirloom
|
|
50
49
|
true
|
51
50
|
end
|
52
51
|
|
53
|
-
def
|
54
|
-
@
|
55
|
-
"'#{file}'"
|
56
|
-
end.join(' ')
|
52
|
+
def build_exclude_files
|
53
|
+
@exclude.map { |x| "--exclude #{x}" }.join ' '
|
57
54
|
end
|
58
55
|
|
59
56
|
def cipher_file
|
data/lib/heirloom/env.rb
ADDED
data/lib/heirloom/version.rb
CHANGED
data/spec/cli/rotate_spec.rb
CHANGED
@@ -18,6 +18,8 @@ describe Heirloom do
|
|
18
18
|
Heirloom::Catalog.stub(:new).and_return catalog_stub
|
19
19
|
|
20
20
|
@archive_mock = mock 'archive'
|
21
|
+
@logger_mock = mock_log
|
22
|
+
Heirloom::HeirloomLogger.stub :new => @logger_mock
|
21
23
|
Heirloom::Archive.stub(:new).and_return @archive_mock
|
22
24
|
|
23
25
|
end
|
@@ -34,9 +36,6 @@ describe Heirloom do
|
|
34
36
|
|
35
37
|
@archive_mock.stub(:rotate).and_raise Heirloom::Exceptions::RotateFailed.new("failed")
|
36
38
|
|
37
|
-
@logger_mock = mock 'logger'
|
38
|
-
Heirloom::HeirloomLogger.stub :new => @logger_mock
|
39
|
-
|
40
39
|
@logger_mock.should_receive(:error).with "failed"
|
41
40
|
expect {
|
42
41
|
Heirloom::CLI::Rotate.new.rotate
|
data/spec/config_spec.rb
CHANGED
@@ -20,79 +20,104 @@ describe Heirloom do
|
|
20
20
|
|
21
21
|
end
|
22
22
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
23
|
+
context "#test the config file" do
|
24
|
+
it "should open the HEIRLOOM_CONFIG_FILE if set" do
|
25
|
+
File.stub :exists? => true
|
26
|
+
File.should_receive(:open).with('~/.special_config.yml').and_return(@config_file.to_yaml)
|
27
|
+
env_mock = mock 'env'
|
28
|
+
env_mock.should_receive(:load).with('HEIRLOOM_CONFIG_FILE').and_return('~/.special_config.yml')
|
29
|
+
Heirloom::Env.stub(:new).and_return(env_mock)
|
30
|
+
config = Heirloom::Config.new :opts => @opts,
|
31
|
+
:logger => 'da-logger'
|
32
|
+
end
|
33
33
|
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
it "should override config settings in file from opts" do
|
45
|
-
File.stub :exists? => true
|
46
|
-
File.should_receive(:open).with("#{ENV['HOME']}/.heirloom.yml").
|
47
|
-
and_return(@config_file.to_yaml)
|
48
|
-
config = Heirloom::Config.new :opts => @opts
|
49
|
-
config.access_key.should == @opts[:aws_access_key]
|
50
|
-
config.secret_key.should == @opts[:aws_secret_key]
|
51
|
-
config.metadata_region.should == @opts[:metadata_region]
|
34
|
+
it "should open the default config file if HEIRLOOM_CONFIG_FILE is not set" do
|
35
|
+
File.stub :exists? => true
|
36
|
+
File.should_receive(:open).with('~/.heirloom.yml').and_return(@config_file.to_yaml)
|
37
|
+
env_mock = mock 'env'
|
38
|
+
env_mock.should_receive(:load).with('HEIRLOOM_CONFIG_FILE').and_return(nil)
|
39
|
+
env_mock.should_receive(:load).with('HOME').and_return('~')
|
40
|
+
Heirloom::Env.stub(:new).and_return(env_mock)
|
41
|
+
config = Heirloom::Config.new :opts => @opts,
|
42
|
+
:logger => 'da-logger'
|
43
|
+
end
|
52
44
|
end
|
53
45
|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
46
|
+
context "#with config file set" do
|
47
|
+
before do
|
48
|
+
env_mock = mock 'env'
|
49
|
+
env_mock.should_receive(:load).with('HEIRLOOM_CONFIG_FILE').and_return(nil)
|
50
|
+
env_mock.should_receive(:load).with('HOME').and_return('~')
|
51
|
+
Heirloom::Env.stub(:new).and_return(env_mock)
|
52
|
+
end
|
61
53
|
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
54
|
+
it "should create a new config object from the hash passed as config" do
|
55
|
+
File.stub :exists? => false
|
56
|
+
File.should_receive(:open).never
|
57
|
+
config = Heirloom::Config.new :opts => @opts,
|
58
|
+
:logger => 'da-logger'
|
59
|
+
config.access_key.should == @opts[:aws_access_key]
|
60
|
+
config.secret_key.should == @opts[:aws_secret_key]
|
61
|
+
config.metadata_region.should == @opts[:metadata_region]
|
62
|
+
config.logger.should == 'da-logger'
|
63
|
+
end
|
71
64
|
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
65
|
+
it "should create a new config object and read from ~/.heirloom.yml" do
|
66
|
+
File.stub :exists? => true
|
67
|
+
File.should_receive(:open).with("~/.heirloom.yml").and_return(@config_file.to_yaml)
|
68
|
+
config = Heirloom::Config.new
|
69
|
+
config.access_key.should == @config_file['default']['access_key']
|
70
|
+
config.secret_key.should == @config_file['default']['secret_key']
|
71
|
+
config.metadata_region.should == @config_file['default']['metadata_region']
|
72
|
+
end
|
73
|
+
|
74
|
+
it "should override config settings in file from opts" do
|
75
|
+
File.stub :exists? => true
|
76
|
+
File.should_receive(:open).with("~/.heirloom.yml").and_return(@config_file.to_yaml)
|
77
|
+
config = Heirloom::Config.new :opts => @opts
|
78
|
+
config.access_key.should == @opts[:aws_access_key]
|
79
|
+
config.secret_key.should == @opts[:aws_secret_key]
|
80
|
+
config.metadata_region.should == @opts[:metadata_region]
|
81
|
+
end
|
79
82
|
|
80
|
-
config
|
81
|
-
|
82
|
-
|
83
|
-
|
83
|
+
it "should load a blank config if the file does not exist and no config passed" do
|
84
|
+
File.stub :exists? => false
|
85
|
+
config = Heirloom::Config.new
|
86
|
+
config.access_key.should be_nil
|
87
|
+
config.secret_key.should be_nil
|
88
|
+
config.metadata_region.should be_nil
|
89
|
+
end
|
84
90
|
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
91
|
+
it "should load a different environment if requested" do
|
92
|
+
File.stub :exists? => true
|
93
|
+
File.should_receive(:open).with("~/.heirloom.yml").and_return(@config_file.to_yaml)
|
94
|
+
config = Heirloom::Config.new :environment => 'dev'
|
95
|
+
config.access_key.should == @config_file['dev']['access_key']
|
96
|
+
config.secret_key.should == @config_file['dev']['secret_key']
|
97
|
+
config.metadata_region.should == @config_file['dev']['metadata_region']
|
98
|
+
end
|
89
99
|
|
90
|
-
|
91
|
-
|
100
|
+
it "should still allow overrides with different environments" do
|
101
|
+
File.stub :exists? => true
|
102
|
+
File.should_receive(:open).with("~/.heirloom.yml").and_return(@config_file.to_yaml)
|
103
|
+
opts = {
|
104
|
+
:aws_access_key => 'specialdevkey'
|
105
|
+
}
|
92
106
|
|
93
|
-
|
94
|
-
config
|
95
|
-
|
96
|
-
|
107
|
+
config = Heirloom::Config.new :opts => opts, :environment => 'dev'
|
108
|
+
config.access_key.should == 'specialdevkey'
|
109
|
+
config.metadata_region.should == @config_file['dev']['metadata_region']
|
110
|
+
end
|
97
111
|
|
112
|
+
it "should log a warning if a non-existing environment is requested from existing config file" do
|
113
|
+
File.stub :exists? => true
|
114
|
+
File.should_receive(:open).with("~/.heirloom.yml").and_return(@config_file.to_yaml)
|
115
|
+
logger_mock = mock 'logger'
|
116
|
+
logger_mock.should_receive(:warn)
|
117
|
+
|
118
|
+
lambda {
|
119
|
+
config = Heirloom::Config.new :environment => 'missing', :logger => logger_mock
|
120
|
+
}.should_not raise_error SystemExit
|
121
|
+
end
|
122
|
+
end
|
98
123
|
end
|
@@ -11,7 +11,7 @@ describe Heirloom::Directory do
|
|
11
11
|
:error => 'true'
|
12
12
|
@config_mock.stub(:logger).and_return(@logger_stub)
|
13
13
|
@directory = Heirloom::Directory.new :config => @config_mock,
|
14
|
-
:exclude => ['
|
14
|
+
:exclude => ['dont_pack_me', 'dont_pack_me1'],
|
15
15
|
:path => '/dir',
|
16
16
|
:file => '/tmp/file.tar.gz'
|
17
17
|
end
|
@@ -20,13 +20,11 @@ describe Heirloom::Directory do
|
|
20
20
|
before do
|
21
21
|
@directory.should_receive(:which).with('tar').and_return true
|
22
22
|
output_mock = double 'output mock'
|
23
|
-
command = "cd /dir && tar czf /tmp/file.tar.gz
|
24
|
-
files = ['pack_me', '.hidden', 'with a space', 'dont_pack_me']
|
23
|
+
command = "cd /dir && tar czf /tmp/file.tar.gz --exclude dont_pack_me --exclude dont_pack_me1 ."
|
24
|
+
files = ['pack_me', '.hidden', 'with a space', 'dont_pack_me', 'dont_pack_me1']
|
25
25
|
Heirloom::Directory.any_instance.should_receive(:`).
|
26
26
|
with(command).
|
27
27
|
and_return output_mock
|
28
|
-
Dir.should_receive(:entries).with('/dir').
|
29
|
-
and_return files
|
30
28
|
$?.stub :success? => true
|
31
29
|
end
|
32
30
|
|
@@ -60,12 +58,11 @@ describe Heirloom::Directory do
|
|
60
58
|
before do
|
61
59
|
@directory.should_receive(:which).with('tar').and_return true
|
62
60
|
output_mock = double 'output mock'
|
63
|
-
command = "cd /dir && tar czf /tmp/file.tar.gz
|
64
|
-
files = ['pack_me', '.hidden', 'with a space', 'dont_pack_me']
|
61
|
+
command = "cd /dir && tar czf /tmp/file.tar.gz --exclude dont_pack_me --exclude dont_pack_me1 ."
|
62
|
+
files = ['pack_me', '.hidden', 'with a space', 'dont_pack_me', 'dont_pack_me1']
|
65
63
|
Heirloom::Directory.any_instance.should_receive(:`).
|
66
64
|
with(command).
|
67
65
|
and_return output_mock
|
68
|
-
Dir.should_receive(:entries).with('/dir').and_return files
|
69
66
|
$?.stub(:success?).and_return(false)
|
70
67
|
end
|
71
68
|
|
@@ -81,8 +78,7 @@ describe Heirloom::Directory do
|
|
81
78
|
|
82
79
|
context 'when required executable is missing' do
|
83
80
|
before do
|
84
|
-
files = ['pack_me', '.hidden', 'with a space', 'dont_pack_me']
|
85
|
-
Dir.should_receive(:entries).with('/dir').and_return files
|
81
|
+
files = ['pack_me', '.hidden', 'with a space', 'dont_pack_me', 'dont_pack_me1']
|
86
82
|
end
|
87
83
|
|
88
84
|
it "should return false if tar is not in path" do
|
@@ -92,10 +88,6 @@ describe Heirloom::Directory do
|
|
92
88
|
end
|
93
89
|
|
94
90
|
context "parameter validation" do
|
95
|
-
before do
|
96
|
-
Dir.stub(:entries).and_return ['pack_me', 'dont_pack_me']
|
97
|
-
end
|
98
|
-
|
99
91
|
it "should not fail if exclude is nil" do
|
100
92
|
@directory = Heirloom::Directory.new :config => @config_mock,
|
101
93
|
:exclude => nil,
|
data/spec/env_spec.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Heirloom do
|
4
|
+
|
5
|
+
it "should return ENV value if passed the name" do
|
6
|
+
set_env_var("HOME", "~")
|
7
|
+
env = Heirloom::Env.new
|
8
|
+
expect(env.load 'HOME').to eq '~'
|
9
|
+
end
|
10
|
+
|
11
|
+
it "should return nil if the ENV name does not exist" do
|
12
|
+
env = Heirloom::Env.new
|
13
|
+
expect(env.load 'SOME_RANDOM_MISSING_VALUE').to eq nil
|
14
|
+
end
|
15
|
+
|
16
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -16,6 +16,10 @@ RUN_INTEGRATION_TESTS = HEIRLOOM_INT_BP && !HEIRLOOM_INT_BP.empty?
|
|
16
16
|
|
17
17
|
module SpecHelpers
|
18
18
|
|
19
|
+
def set_env_var(name,value)
|
20
|
+
ENV.stub(:fetch).with(name, nil).and_return(value)
|
21
|
+
end
|
22
|
+
|
19
23
|
def mock_log
|
20
24
|
mock 'log', :debug => true, :info => true, :warn => true, :error => true, :level= => true
|
21
25
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: heirloom
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.12.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-08-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,15 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
25
30
|
- !ruby/object:Gem::Dependency
|
26
31
|
name: rspec
|
27
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
28
33
|
none: false
|
29
34
|
requirements:
|
30
35
|
- - ~>
|
@@ -32,10 +37,15 @@ dependencies:
|
|
32
37
|
version: 2.11.0
|
33
38
|
type: :development
|
34
39
|
prerelease: false
|
35
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 2.11.0
|
36
46
|
- !ruby/object:Gem::Dependency
|
37
47
|
name: simplecov
|
38
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
39
49
|
none: false
|
40
50
|
requirements:
|
41
51
|
- - ! '>='
|
@@ -43,21 +53,31 @@ dependencies:
|
|
43
53
|
version: '0'
|
44
54
|
type: :development
|
45
55
|
prerelease: false
|
46
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
47
62
|
- !ruby/object:Gem::Dependency
|
48
63
|
name: vcr
|
49
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
50
65
|
none: false
|
51
66
|
requirements:
|
52
|
-
- - =
|
67
|
+
- - '='
|
53
68
|
- !ruby/object:Gem::Version
|
54
69
|
version: 2.4.0
|
55
70
|
type: :development
|
56
71
|
prerelease: false
|
57
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - '='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 2.4.0
|
58
78
|
- !ruby/object:Gem::Dependency
|
59
79
|
name: watchr
|
60
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
61
81
|
none: false
|
62
82
|
requirements:
|
63
83
|
- - ! '>='
|
@@ -65,54 +85,79 @@ dependencies:
|
|
65
85
|
version: '0'
|
66
86
|
type: :development
|
67
87
|
prerelease: false
|
68
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0'
|
69
94
|
- !ruby/object:Gem::Dependency
|
70
95
|
name: excon
|
71
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
72
97
|
none: false
|
73
98
|
requirements:
|
74
|
-
- - =
|
99
|
+
- - '='
|
75
100
|
- !ruby/object:Gem::Version
|
76
101
|
version: '0.16'
|
77
102
|
type: :runtime
|
78
103
|
prerelease: false
|
79
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - '='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0.16'
|
80
110
|
- !ruby/object:Gem::Dependency
|
81
111
|
name: fog
|
82
|
-
requirement:
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
83
113
|
none: false
|
84
114
|
requirements:
|
85
|
-
- - =
|
115
|
+
- - '='
|
86
116
|
- !ruby/object:Gem::Version
|
87
117
|
version: 1.10.0
|
88
118
|
type: :runtime
|
89
119
|
prerelease: false
|
90
|
-
version_requirements:
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - '='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: 1.10.0
|
91
126
|
- !ruby/object:Gem::Dependency
|
92
127
|
name: hashie
|
93
|
-
requirement:
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
94
129
|
none: false
|
95
130
|
requirements:
|
96
|
-
- - =
|
131
|
+
- - '='
|
97
132
|
- !ruby/object:Gem::Version
|
98
133
|
version: 2.0.5
|
99
134
|
type: :runtime
|
100
135
|
prerelease: false
|
101
|
-
version_requirements:
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - '='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: 2.0.5
|
102
142
|
- !ruby/object:Gem::Dependency
|
103
143
|
name: trollop
|
104
|
-
requirement:
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
105
145
|
none: false
|
106
146
|
requirements:
|
107
|
-
- - =
|
147
|
+
- - '='
|
108
148
|
- !ruby/object:Gem::Version
|
109
149
|
version: '2.0'
|
110
150
|
type: :runtime
|
111
151
|
prerelease: false
|
112
|
-
version_requirements:
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - '='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '2.0'
|
113
158
|
- !ruby/object:Gem::Dependency
|
114
159
|
name: xml-simple
|
115
|
-
requirement:
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
116
161
|
none: false
|
117
162
|
requirements:
|
118
163
|
- - ~>
|
@@ -120,7 +165,12 @@ dependencies:
|
|
120
165
|
version: 1.1.2
|
121
166
|
type: :runtime
|
122
167
|
prerelease: false
|
123
|
-
version_requirements:
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
170
|
+
requirements:
|
171
|
+
- - ~>
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: 1.1.2
|
124
174
|
description: I help build and manage building tar.gz files and deploying them into
|
125
175
|
the cloud
|
126
176
|
email:
|
@@ -196,6 +246,7 @@ files:
|
|
196
246
|
- lib/heirloom/directory/directory.rb
|
197
247
|
- lib/heirloom/downloader.rb
|
198
248
|
- lib/heirloom/downloader/s3.rb
|
249
|
+
- lib/heirloom/env.rb
|
199
250
|
- lib/heirloom/exceptions.rb
|
200
251
|
- lib/heirloom/logger.rb
|
201
252
|
- lib/heirloom/uploader.rb
|
@@ -249,6 +300,7 @@ files:
|
|
249
300
|
- spec/destroyer/s3_spec.rb
|
250
301
|
- spec/directory/directory_spec.rb
|
251
302
|
- spec/downloader/s3_spec.rb
|
303
|
+
- spec/env_spec.rb
|
252
304
|
- spec/fixtures/cassettes/Heirloom_AWS_SimpleDB/select/should_be_able_to_offset_results.yml
|
253
305
|
- spec/fixtures/cassettes/Heirloom_AWS_SimpleDB/select/should_get_results.yml
|
254
306
|
- spec/fixtures/cassettes/Heirloom_AWS_SimpleDB/select/should_yield_when_requested.yml
|
@@ -274,21 +326,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
274
326
|
- - ! '>='
|
275
327
|
- !ruby/object:Gem::Version
|
276
328
|
version: '0'
|
277
|
-
segments:
|
278
|
-
- 0
|
279
|
-
hash: -2840410231775603378
|
280
329
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
281
330
|
none: false
|
282
331
|
requirements:
|
283
332
|
- - ! '>='
|
284
333
|
- !ruby/object:Gem::Version
|
285
334
|
version: '0'
|
286
|
-
segments:
|
287
|
-
- 0
|
288
|
-
hash: -2840410231775603378
|
289
335
|
requirements: []
|
290
336
|
rubyforge_project: heirloom
|
291
|
-
rubygems_version: 1.8.
|
337
|
+
rubygems_version: 1.8.24
|
292
338
|
signing_key:
|
293
339
|
specification_version: 3
|
294
340
|
summary: I help with deploying code into the cloud
|
@@ -338,6 +384,7 @@ test_files:
|
|
338
384
|
- spec/destroyer/s3_spec.rb
|
339
385
|
- spec/directory/directory_spec.rb
|
340
386
|
- spec/downloader/s3_spec.rb
|
387
|
+
- spec/env_spec.rb
|
341
388
|
- spec/fixtures/cassettes/Heirloom_AWS_SimpleDB/select/should_be_able_to_offset_results.yml
|
342
389
|
- spec/fixtures/cassettes/Heirloom_AWS_SimpleDB/select/should_get_results.yml
|
343
390
|
- spec/fixtures/cassettes/Heirloom_AWS_SimpleDB/select/should_yield_when_requested.yml
|