abide-data-processor 1.0.1 → 1.1.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
- data/Gemfile.lock +1 -1
- data/lib/abide-data-processor/parser.rb +17 -6
- data/lib/abide-data-processor/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0fb3fd8f80e90db869d7f0230ecead72fe3fa500c0c6046aad010b6fea953cbd
|
4
|
+
data.tar.gz: d44ec5bc9e68724c0f0cae4a2acfb4d8fd39fd59118774bceb3ac47f8e36b625
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c7ef4cbcc7e1862f2a6ecf3e9fb33df5b972de5b2fcbe1ee3f2297478510fdaa7666995a3065d139bbb087c3beb167a26ffb92e8d0db9572341eb10753c391ce
|
7
|
+
data.tar.gz: 411bc8d6084ebac6345cc4625160d689e3d277d3ff6c892b048bf787c264f2665c53e8b8b8761b739b9cfde8e2eb2c06ed11d5fdfc34869e295d96dfe83e85d7
|
data/Gemfile.lock
CHANGED
@@ -33,6 +33,8 @@ module AbideDataProcessor
|
|
33
33
|
# @return [Hash] The Hiera data to be parsed.
|
34
34
|
# @raise [ArgumentError] If the hiera_data parameter is not a non-empty Hash.
|
35
35
|
def validate_hiera_data(hiera_data)
|
36
|
+
return hiera_data if hiera_data == :no_params
|
37
|
+
|
36
38
|
unless not_nil_or_empty?(hiera_data) && hiera_data.is_a?(Hash)
|
37
39
|
raise ArgumentError, 'hiera_data must be a non-nil, non-empty Hash'
|
38
40
|
end
|
@@ -354,8 +356,10 @@ module AbideDataProcessor
|
|
354
356
|
# @param control_maps [Array] The control maps to be used.
|
355
357
|
def initialize_metaparams(data, control_maps)
|
356
358
|
METAPARAMS.each do |param|
|
357
|
-
|
358
|
-
|
359
|
+
metaparam_data = data == :no_params ? {} : data[param]
|
360
|
+
raw_mdata = data == :no_params ? {} : data
|
361
|
+
value, bool_value = parse_metaparam(metaparam_data, control_maps)
|
362
|
+
raw_value, raw_bool_value = parse_raw_metaparam(raw_mdata, param)
|
359
363
|
set_metaparam_instance_vars(param, value, raw_value)
|
360
364
|
define_metaparam_bool_methods(param, raw_bool_value, bool_value)
|
361
365
|
end
|
@@ -494,9 +498,9 @@ module AbideDataProcessor
|
|
494
498
|
def initialize(name, data, control_maps)
|
495
499
|
super(name, data, control_maps)
|
496
500
|
@mapped_names = find_mapped_names(@name)
|
497
|
-
@params = @data
|
498
|
-
@resource_params = @data.reject { |k, _v| METAPARAMS.include?(k) }
|
499
|
-
@param_names = Set.new(@params.keys)
|
501
|
+
@params = @data == :no_params ? {} : @data
|
502
|
+
@resource_params = @data == :no_params ? {} : @data.reject { |k, _v| METAPARAMS.include?(k) }
|
503
|
+
@param_names = @data == :no_params ? Set.new : Set.new(@params.keys)
|
500
504
|
end
|
501
505
|
|
502
506
|
def name?(name)
|
@@ -654,7 +658,14 @@ module AbideDataProcessor
|
|
654
658
|
# does not already exist in the cache.
|
655
659
|
# @param control_data [Array] The control data of the resource from the Hiera data.
|
656
660
|
def create_control_classes(control_data)
|
657
|
-
control_data.
|
661
|
+
case control_data.class.to_s
|
662
|
+
when 'Hash'
|
663
|
+
control_data.map { |cname, cdata| AbideDataProcessor::Parser.new_control(cname, cdata, @control_maps) }
|
664
|
+
when 'Array'
|
665
|
+
control_data.map { |cname| AbideDataProcessor::Parser.new_control(cname, :no_params, @control_maps) }
|
666
|
+
else
|
667
|
+
raise ArgumentError, "Cannot create control because control data is not the expected type. Data type is #{control_data.class}"
|
668
|
+
end
|
658
669
|
end
|
659
670
|
end
|
660
671
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: abide-data-processor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- abide-team
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-01-
|
11
|
+
date: 2022-01-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: deep_merge
|