yaml_normalizer 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/yaml_normalizer/ext/sort_by_key.rb +1 -3
- data/lib/yaml_normalizer/helpers.rb +1 -0
- data/lib/yaml_normalizer/helpers/param_parser.rb +45 -0
- data/lib/yaml_normalizer/services/check.rb +2 -0
- data/lib/yaml_normalizer/services/normalize.rb +2 -0
- data/lib/yaml_normalizer/version.rb +1 -1
- metadata +7 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 2036bed9f89b7b2aab2dcfbeeb10f2300e31832a0e9bacee0136a7078a91d574
|
4
|
+
data.tar.gz: b29a9f93c38c0749cf4058ed981d9533f5560a970cbd3e8f622e7a9e3ce0bb22
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ba8873fe4c0296e7ad4df98df28525d8ef23b815b385fafc39911468956c627631651729fa740845bdc1ccf3cad07d4efcaa9010142e4eaafaed3537bdcdfb22
|
7
|
+
data.tar.gz: 074d417f0de927bd0f24f5769eefd02733aaaaefd822b06f433aa4e21c7eb4906d6dfaef5e0c1e6a77e9f7f585d8c79ec616e1aa4ff828bf2c3304a8525512fe
|
@@ -19,9 +19,7 @@ module YamlNormalizer
|
|
19
19
|
def sort_by_key(recursive = true)
|
20
20
|
keys.sort_by(&:to_s).each_with_object({}) do |key, seed|
|
21
21
|
value = seed[key] = fetch(key)
|
22
|
-
if recursive && value.instance_of?(Hash)
|
23
|
-
seed[key] = value.extend(SortByKey).sort_by_key
|
24
|
-
end
|
22
|
+
seed[key] = value.extend(SortByKey).sort_by_key if recursive && value.instance_of?(Hash)
|
25
23
|
end
|
26
24
|
end
|
27
25
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'optparse'
|
4
|
+
|
5
|
+
module YamlNormalizer
|
6
|
+
module Helpers
|
7
|
+
# Methods handling passing of additional params from CLI
|
8
|
+
module ParamParser
|
9
|
+
# Parse the params provided to the service
|
10
|
+
# @param [Array] args - params passed to the service
|
11
|
+
# @return nil
|
12
|
+
def parse_params(*args)
|
13
|
+
OptionParser.new do |opts|
|
14
|
+
opts.banner = "Usage: #{program_name} [options] file1, file2..."
|
15
|
+
opts.on('-v', '--version', 'Prints the yaml_normalizer version') { print_version }
|
16
|
+
opts.on('-h', '--help', 'Prints this help') { print_help(opts) }
|
17
|
+
end.parse(args)
|
18
|
+
end
|
19
|
+
|
20
|
+
# Print current version of the tool
|
21
|
+
def print_version
|
22
|
+
print("#{YamlNormalizer::VERSION}\n")
|
23
|
+
exit_success
|
24
|
+
end
|
25
|
+
|
26
|
+
# Print current version of the tool
|
27
|
+
# @param [Option] opts - options of opt_parser object
|
28
|
+
# @return nil
|
29
|
+
def print_help(opts)
|
30
|
+
print(opts)
|
31
|
+
exit_success
|
32
|
+
end
|
33
|
+
|
34
|
+
private
|
35
|
+
|
36
|
+
def program_name
|
37
|
+
$PROGRAM_NAME.split('/').last
|
38
|
+
end
|
39
|
+
|
40
|
+
def exit_success
|
41
|
+
exit unless ENV['ENV'] == 'test'
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
@@ -11,6 +11,7 @@ module YamlNormalizer
|
|
11
11
|
# result = check.call
|
12
12
|
class Check < Base
|
13
13
|
include Helpers::Normalize
|
14
|
+
include Helpers::ParamParser
|
14
15
|
|
15
16
|
# files is a sorted array of file path Strings
|
16
17
|
attr_reader :files
|
@@ -19,6 +20,7 @@ module YamlNormalizer
|
|
19
20
|
# more Strings that are interpreted as file glob pattern.
|
20
21
|
# @param *args [Array<String>] a list of file glob patterns
|
21
22
|
def initialize(*args)
|
23
|
+
parse_params(*args)
|
22
24
|
files = args.each_with_object([]) { |a, o| o << Dir[a.to_s] }
|
23
25
|
@files = files.flatten.sort.uniq
|
24
26
|
end
|
@@ -11,6 +11,7 @@ module YamlNormalizer
|
|
11
11
|
# result = normalize.call
|
12
12
|
class Normalize < Base
|
13
13
|
include Helpers::Normalize
|
14
|
+
include Helpers::ParamParser
|
14
15
|
|
15
16
|
# files is a sorted array of file path Strings
|
16
17
|
attr_reader :files
|
@@ -19,6 +20,7 @@ module YamlNormalizer
|
|
19
20
|
# more String that are interpreted as file glob pattern.
|
20
21
|
# @param *args [Array<String>] a list of file glob patterns
|
21
22
|
def initialize(*args)
|
23
|
+
parse_params(*args)
|
22
24
|
files = args.each_with_object([]) { |a, o| o << Dir[a.to_s] }
|
23
25
|
@files = files.flatten.sort.uniq
|
24
26
|
end
|
metadata
CHANGED
@@ -1,14 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yaml_normalizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Wolfgang Teuber
|
8
|
+
- Jan Taras
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2019-
|
12
|
+
date: 2019-08-08 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: peach
|
@@ -311,7 +312,7 @@ description: |-
|
|
311
312
|
original file and the resulting file are 100% identical to Psych (stable
|
312
313
|
change).
|
313
314
|
email:
|
314
|
-
-
|
315
|
+
- jan.taras@sage.com
|
315
316
|
executables:
|
316
317
|
- yaml_check
|
317
318
|
- yaml_normalize
|
@@ -327,6 +328,7 @@ files:
|
|
327
328
|
- lib/yaml_normalizer/ext/sort_by_key.rb
|
328
329
|
- lib/yaml_normalizer/helpers.rb
|
329
330
|
- lib/yaml_normalizer/helpers/normalize.rb
|
331
|
+
- lib/yaml_normalizer/helpers/param_parser.rb
|
330
332
|
- lib/yaml_normalizer/rake_task.rb
|
331
333
|
- lib/yaml_normalizer/services.rb
|
332
334
|
- lib/yaml_normalizer/services/base.rb
|
@@ -353,7 +355,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
353
355
|
- !ruby/object:Gem::Version
|
354
356
|
version: '0'
|
355
357
|
requirements: []
|
356
|
-
|
358
|
+
rubyforge_project:
|
359
|
+
rubygems_version: 2.7.7
|
357
360
|
signing_key:
|
358
361
|
specification_version: 4
|
359
362
|
summary: Yaml Normalizer normalizes YAML files
|