j-enc 0.0.3 → 0.0.4
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
- data/lib/enc/collins_helper/api.rb +2 -0
- data/lib/enc/runner.rb +5 -1
- data/lib/enc/version.rb +1 -1
- data/spec/builder_spec.rb +1 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b119e89fd119c52ca0b22f718178e0eb8243f6f
|
4
|
+
data.tar.gz: 553f320981ed7767e89c4e859370eb58e07b3d35
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5acedb1aa0c490b7e5c865f0a25fbc96594b24a8b90a92afad68fad84dac32a87a9ce3cc766d006b00d0f6774edfc4ac036fa4741cccf00023a12b83319017e8
|
7
|
+
data.tar.gz: c715d02dd40797c9a74c70df74e3d765af9460a0ff8daa38f90807aefba3106b939054edcf24a7899586a73d063ba768456f4258e74d24f7a97ea408790c30e0
|
@@ -10,6 +10,7 @@ module Enc
|
|
10
10
|
|
11
11
|
class TooManyAssets < Exception; end
|
12
12
|
class NoAssets < Exception; end
|
13
|
+
class AssetNotConfigured < Exception; end
|
13
14
|
class AssetNotValid < Exception; end
|
14
15
|
class CannotConnect < Exception; end
|
15
16
|
|
@@ -35,6 +36,7 @@ module Enc
|
|
35
36
|
raise TooManyAssets, 'Too many assets' if response.count > 1
|
36
37
|
raise NoAssets, 'No assets found' if response.first.nil? or response.first.empty?
|
37
38
|
asset = CollinsHelper::Node::NodeAsset.from_json(response.first)
|
39
|
+
raise AssetNotConfigured, 'Asset is missing required tags' if (not asset.is_valid? and asset.uses_enc?)
|
38
40
|
raise AssetNotValid, 'Asset is not valid' unless asset.is_valid?
|
39
41
|
asset
|
40
42
|
end
|
data/lib/enc/runner.rb
CHANGED
@@ -30,7 +30,6 @@ module Enc
|
|
30
30
|
connection = Enc::CollinsHelper::Connection.new(@config)
|
31
31
|
return connection.api.safe_find(:hostname => hostname, :details => true), true
|
32
32
|
rescue Enc::CollinsHelper::Api::TooManyAssets,
|
33
|
-
Enc::CollinsHelper::Api::AssetNotValid,
|
34
33
|
Enc::CollinsHelper::Api::CannotConnect,
|
35
34
|
Collins::AuthenticationError,
|
36
35
|
Collins::RequestError
|
@@ -40,6 +39,11 @@ module Enc
|
|
40
39
|
rescue Enc::CollinsHelper::Api::NoAssets
|
41
40
|
logger.info("Did not find any assets with hostname #{hostname}, saving an empty asset to the cache")
|
42
41
|
return Enc::CollinsHelper::Node::NodeAsset.new, true
|
42
|
+
rescue Enc::CollinsHelper::Api::AssetNotValid => e
|
43
|
+
logger.error("Asset with hostname #{hostname} is not valid: #{e}, saving an empty asset to the cache")
|
44
|
+
return Enc::CollinsHelper::Node::NodeAsset.new, true
|
45
|
+
rescue Enc::CollinsHelper::Api::AssetNotConfigured => e
|
46
|
+
bail("Asset with hostname #{hostname} is configured to use the ENC but does not have all the required tags", e)
|
43
47
|
end
|
44
48
|
begin
|
45
49
|
return @cache.read(hostname), false
|
data/lib/enc/version.rb
CHANGED
data/spec/builder_spec.rb
CHANGED
@@ -23,6 +23,7 @@ describe 'ENC Builder' do
|
|
23
23
|
expect(YAML.load(builder.to_yaml)).to be_an_instance_of(Hash)
|
24
24
|
expect(YAML.load(builder.to_yaml)['parameters']['deployment_environment']).to eq(node.get_deployment_environment)
|
25
25
|
expect(YAML.load(builder.to_yaml)['parameters']['datacenter']).to eq(node.get_datacenter)
|
26
|
+
expect(YAML.load(builder.to_yaml)['parameters']['roles'].split(',')).to eq(node.get_roles)
|
26
27
|
expect(YAML.load(builder.to_yaml)['parameters']['roles']).to eq(node.get_roles.join(','))
|
27
28
|
expect(YAML.load(builder.to_yaml)['parameters']['role1']).to eq(node.get_roles_by_index[0])
|
28
29
|
expect(YAML.load(builder.to_yaml)['parameters']['role2']).to eq(node.get_roles_by_index[1])
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: j-enc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jestin Woods
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-12-
|
11
|
+
date: 2014-12-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|