chamber 3.0.0rc1 → 3.0.0
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.md +5 -5
- data/lib/chamber/binary/runner.rb +10 -12
- data/lib/chamber/commands/base.rb +4 -4
- data/lib/chamber/commands/initialize.rb +5 -5
- data/lib/chamber/commands/securable.rb +5 -9
- data/lib/chamber/commands/show.rb +0 -1
- data/lib/chamber/context_resolver.rb +5 -4
- data/lib/chamber/encryption_methods/public_key.rb +26 -14
- data/lib/chamber/encryption_methods/ssl.rb +36 -28
- data/lib/chamber/errors/disallowed_class.rb +8 -0
- data/lib/chamber/errors/invalid_key_type.rb +8 -0
- data/lib/chamber/errors/missing_index.rb +13 -0
- data/lib/chamber/errors/missing_setting.rb +13 -0
- data/lib/chamber/errors/non_conforming_key.rb +8 -0
- data/lib/chamber/file.rb +18 -7
- data/lib/chamber/file_set.rb +5 -1
- data/lib/chamber/files/signature.rb +6 -6
- data/lib/chamber/filters/decryption_filter.rb +9 -11
- data/lib/chamber/filters/encryption_filter.rb +8 -9
- data/lib/chamber/filters/environment_filter.rb +16 -18
- data/lib/chamber/filters/failed_decryption_filter.rb +3 -3
- data/lib/chamber/filters/namespace_filter.rb +10 -12
- data/lib/chamber/filters/secure_filter.rb +3 -3
- data/lib/chamber/filters/translate_secure_keys_filter.rb +3 -3
- data/lib/chamber/instance.rb +4 -7
- data/lib/chamber/integrations/sinatra.rb +1 -1
- data/lib/chamber/keys/base.rb +11 -7
- data/lib/chamber/namespace_set.rb +2 -2
- data/lib/chamber/rails.rb +1 -1
- data/lib/chamber/refinements/deep_dup.rb +12 -36
- data/lib/chamber/refinements/enumerable.rb +8 -20
- data/lib/chamber/refinements/hash.rb +10 -36
- data/lib/chamber/rubinius_fix.rb +1 -1
- data/lib/chamber/settings.rb +39 -23
- data/lib/chamber/types/secured.rb +8 -8
- data/lib/chamber/version.rb +1 -1
- data/lib/chamber.rb +0 -5
- data.tar.gz.sig +0 -0
- metadata +29 -34
- metadata.gz.sig +0 -0
- data/lib/chamber/adapters/cloud/circle_ci.rb +0 -85
- data/lib/chamber/adapters/cloud/heroku.rb +0 -74
- data/lib/chamber/binary/circle_ci.rb +0 -123
- data/lib/chamber/binary/heroku.rb +0 -111
- data/lib/chamber/binary/travis.rb +0 -37
- data/lib/chamber/commands/cloud/base.rb +0 -35
- data/lib/chamber/commands/cloud/clear.rb +0 -25
- data/lib/chamber/commands/cloud/compare.rb +0 -26
- data/lib/chamber/commands/cloud/pull.rb +0 -29
- data/lib/chamber/commands/cloud/push.rb +0 -44
- data/lib/chamber/commands/travis/secure.rb +0 -37
- data/lib/chamber/refinements/array.rb +0 -20
@@ -1,25 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'chamber/commands/cloud/base'
|
4
|
-
|
5
|
-
module Chamber
|
6
|
-
module Commands
|
7
|
-
module Cloud
|
8
|
-
class Clear < Chamber::Commands::Cloud::Base
|
9
|
-
def call
|
10
|
-
chamber.to_environment.each_key do |key|
|
11
|
-
next unless adapter.environment_variables.has_key?(key)
|
12
|
-
|
13
|
-
if dry_run
|
14
|
-
shell.say_status 'remove', key, :blue
|
15
|
-
else
|
16
|
-
shell.say_status 'remove', key, :green
|
17
|
-
|
18
|
-
adapter.remove_environment_variable(key)
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
@@ -1,26 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'chamber/commands/cloud/base'
|
4
|
-
require 'chamber/commands/comparable'
|
5
|
-
require 'chamber/commands/securable'
|
6
|
-
|
7
|
-
module Chamber
|
8
|
-
module Commands
|
9
|
-
module Cloud
|
10
|
-
class Compare < Chamber::Commands::Cloud::Base
|
11
|
-
include Chamber::Commands::Securable
|
12
|
-
include Chamber::Commands::Comparable
|
13
|
-
|
14
|
-
protected
|
15
|
-
|
16
|
-
def first_settings_data
|
17
|
-
::JSON.pretty_generate(securable_environment_variables)
|
18
|
-
end
|
19
|
-
|
20
|
-
def second_settings_data
|
21
|
-
::JSON.pretty_generate(adapter.environment_variables)
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
@@ -1,29 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'json'
|
4
|
-
require 'chamber/commands/cloud/base'
|
5
|
-
|
6
|
-
module Chamber
|
7
|
-
module Commands
|
8
|
-
module Cloud
|
9
|
-
class Pull < Chamber::Commands::Cloud::Base
|
10
|
-
attr_accessor :target_file
|
11
|
-
|
12
|
-
def initialize(into:, **args)
|
13
|
-
super
|
14
|
-
|
15
|
-
self.target_file = into
|
16
|
-
end
|
17
|
-
|
18
|
-
def call
|
19
|
-
if target_file
|
20
|
-
shell.create_file(target_file,
|
21
|
-
::JSON.pretty_generate(adapter.environment_variables))
|
22
|
-
else
|
23
|
-
adapter.environment_variables
|
24
|
-
end
|
25
|
-
end
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
29
|
-
end
|
@@ -1,44 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'chamber/commands/cloud/base'
|
4
|
-
require 'chamber/commands/securable'
|
5
|
-
require 'chamber/keys/decryption'
|
6
|
-
|
7
|
-
module Chamber
|
8
|
-
module Commands
|
9
|
-
module Cloud
|
10
|
-
class Push < Chamber::Commands::Cloud::Base
|
11
|
-
include Chamber::Commands::Securable
|
12
|
-
|
13
|
-
attr_accessor :keys
|
14
|
-
|
15
|
-
def initialize(keys:, **args)
|
16
|
-
super(**args)
|
17
|
-
|
18
|
-
self.keys = keys
|
19
|
-
end
|
20
|
-
|
21
|
-
def call
|
22
|
-
environment_variables = if keys
|
23
|
-
Keys::Decryption
|
24
|
-
.new(rootpath: chamber.configuration.rootpath,
|
25
|
-
namespaces: chamber.configuration.namespaces)
|
26
|
-
.as_environment_variables
|
27
|
-
else
|
28
|
-
securable_environment_variables
|
29
|
-
end
|
30
|
-
|
31
|
-
environment_variables.each do |key, value|
|
32
|
-
if dry_run
|
33
|
-
shell.say_status 'push', key, :blue
|
34
|
-
else
|
35
|
-
shell.say_status 'push', key, :green
|
36
|
-
|
37
|
-
adapter.add_environment_variable(key, value)
|
38
|
-
end
|
39
|
-
end
|
40
|
-
end
|
41
|
-
end
|
42
|
-
end
|
43
|
-
end
|
44
|
-
end
|
@@ -1,37 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'chamber/commands/base'
|
4
|
-
require 'chamber/commands/travis'
|
5
|
-
require 'chamber/commands/securable'
|
6
|
-
|
7
|
-
module Chamber
|
8
|
-
module Commands
|
9
|
-
module Travis
|
10
|
-
class Secure < Chamber::Commands::Base
|
11
|
-
include Chamber::Commands::Travis
|
12
|
-
include Chamber::Commands::Securable
|
13
|
-
|
14
|
-
def call
|
15
|
-
securable_environment_variables.each do |key, value|
|
16
|
-
if dry_run
|
17
|
-
shell.say_status 'encrypt', key, :blue
|
18
|
-
else
|
19
|
-
command = first_environment_variable?(key) ? '--override' : '--append'
|
20
|
-
|
21
|
-
shell.say_status 'encrypt', key, :green
|
22
|
-
travis_encrypt("#{command} #{key}=#{value}")
|
23
|
-
end
|
24
|
-
end
|
25
|
-
end
|
26
|
-
|
27
|
-
protected
|
28
|
-
|
29
|
-
def first_environment_variable?(key)
|
30
|
-
@first_environment_key ||= securable_environment_variables.first[0]
|
31
|
-
|
32
|
-
@first_environment_key == key
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
@@ -1,20 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require 'rspectacular'
|
4
|
-
require 'chamber/refinements/enumerable'
|
5
|
-
|
6
|
-
module Chamber
|
7
|
-
module Refinements
|
8
|
-
module Array
|
9
|
-
refine ::Array do
|
10
|
-
def deep_transform_keys(&block)
|
11
|
-
Refinements::Enumerable.deep_transform_keys(self, &block)
|
12
|
-
end
|
13
|
-
|
14
|
-
def deep_transform_values(&block)
|
15
|
-
Refinements::Enumerable.deep_transform_values(nil, self, &block)
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|