k_director 0.12.1 → 0.13.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 299e8ce98da8e9466c4394c2bd5b004a62cc69f3f9f99df5e0d94166de79604c
4
- data.tar.gz: d2919e383af54afd515024ec6c6cc0e11906455680bb1fe62661b2649a32f3e6
3
+ metadata.gz: 0645035ffbb7e6e30736af97a519db598dd647447a6b6786ad36eb95c204cd6c
4
+ data.tar.gz: a7b8f8fe828b920f23334f5924c788b3795200be39b29668ce302b6754ed0ddf
5
5
  SHA512:
6
- metadata.gz: afca62f2f2ceeb8bb99aab3d720f23963d4b559144e0388aebdc22bf58deb746da7e86dec8fac60ed90cb76815c146ca8acb9ce868cd2aa1c408b42c6ac2b275
7
- data.tar.gz: 2fb3e677abf07ad9f7ec9cad4c94beaac720e1d1f8cce8cc0d9e12c988f17fde5e8be91ae6187018de18a4cc3cea032fb8ac277e927613dc0e7d57623b9354d9
6
+ metadata.gz: 5b275862af73871cde31be688c7e93a5e5fb9fd030fc1b05a6caaee66f152ec6cabec2695f23e29378ae68a48ce53023c4fd485eb45951bfe508a9cfee550db6
7
+ data.tar.gz: 6005f09b2a060177da0c5378d9638d42cae1b97e932d97ed220147a658ee9b2907bae4d3715017923247587309baf230212a81b69fc5ccc6e6feee495c49b432
data/docs/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [0.12.1](https://github.com/klueless-io/k_director/compare/v0.12.0...v0.12.1) (2022-02-11)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * builder can be configured via #default_builder_type ([f82c46f](https://github.com/klueless-io/k_director/commit/f82c46f10aea06b154d5ac957e71cce1216cae4a))
7
+
1
8
  # [0.12.0](https://github.com/klueless-io/k_director/compare/v0.11.3...v0.12.0) (2022-02-11)
2
9
 
3
10
 
@@ -17,18 +17,18 @@ module KDirector
17
17
  # Set many key/value pairs gainst a group
18
18
  #
19
19
  # example:
20
- # set_many(:github, repo_name: 'repo-name', organization: 'org-name')
20
+ # group_set(:github, repo_name: 'repo-name', organization: 'org-name')
21
21
  def group_set(group = nil, **opts)
22
22
  return if group.nil? && opts.empty?
23
23
 
24
24
  if group.nil?
25
25
  opts.each do |key, value|
26
- set(key, value)
26
+ set(key, value: value)
27
27
  end
28
28
  else
29
29
  dom[group] = {} if opts.empty? # initialize the group name if no options are provided
30
30
  opts.each do |key, value|
31
- set(group, key, value)
31
+ set(group, key, value: value)
32
32
  end
33
33
  end
34
34
  end
@@ -39,36 +39,39 @@ module KDirector
39
39
  # - initialize key/array pairs
40
40
  #
41
41
  # example:
42
- # set(:a, 1)
43
- # set(:a, [])
44
- # set(:a, [1, 2, 3])
45
- # set(:a, some_value, default_value: 'use if not supplied')
46
- # set(:a, :b, 'nested value')
47
- # set(:a, :b, :c, 'deeply nested value')
48
- # set(:a, :b, :c, :d, :e, :f, 'depth is no barrier')
49
- def set(*keyset_value, default_value: nil)
50
- size = keyset_value.size
51
-
52
- raise ArgumentError, 'set requires 2 or more arguments' if size < 2
53
-
54
- target = initialize_hierarchy(keyset_value)
55
-
56
- set_kv(target, keyset_value[size - 2], keyset_value[size - 1], default_value: default_value)
42
+ # set(:a, value: 1)
43
+ # set(:a, value: [])
44
+ # set(:a, value: [1, 2, 3])
45
+ # set(:a, value: { a: 1, b: 2 })
46
+ # set(:a, value: some_value, default_value: 'use if not supplied')
47
+ # set(:a, value: :b, 'nested value')
48
+ # set(:a, value: :b, :c, 'deeply nested value')
49
+ # set(:a, value: :b, :c, :d, :e, :f, 'depth is no barrier')
50
+ def set(*keys, value: nil, default_value: nil)
51
+ size = keys.size
52
+
53
+ raise ArgumentError, 'set requires 1 or more keys' if size < 1
54
+
55
+ target = initialize_hierarchy(keys)
56
+
57
+ set_kv(target, keys[size - 1], value, default_value: default_value)
57
58
  end
58
59
 
59
60
  # add value to array
60
- # set(:a, [])
61
- # add(:a, 1])
62
- # add(:a, 2])
63
- # add(:a, 3])
64
- def add(*keyset_value, default_value: nil)
65
- size = keyset_value.size
61
+ # add(:a, 1)
62
+ # add(:a, 2)
63
+ # add(:a, 3)
64
+ # add(:a, {key: 1})
65
+ # add(:a, {key: 2})
66
+ # add(:a, {key: 3})
67
+ def add(*keys, value: nil, default_value: nil)
68
+ size = keys.size
66
69
 
67
- raise ArgumentError, 'add requires 2 or more arguments' if size < 2
70
+ raise ArgumentError, 'add requires 1 or more keys' if size < 1
68
71
 
69
- target = initialize_hierarchy(keyset_value)
72
+ target = initialize_hierarchy(keys)
70
73
 
71
- add_kv(target, keyset_value[size - 2], keyset_value[size - 1], default_value: default_value)
74
+ add_kv(target, keys[size - 1], value, default_value: default_value)
72
75
  end
73
76
 
74
77
  def debug
@@ -85,12 +88,12 @@ module KDirector
85
88
 
86
89
  private
87
90
 
88
- def initialize_hierarchy(keys_value)
91
+ def initialize_hierarchy(keys)
89
92
  target = @dom
90
93
 
91
- return target unless keys_value.size > 2
94
+ return target unless keys.size > 1
92
95
 
93
- keys_value.slice(0..-3).each_with_index do |key, _index|
96
+ keys.slice(0..-2).each_with_index do |key, _index|
94
97
  target[key] = {} unless target.key?(key)
95
98
  target = target[key]
96
99
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module KDirector
4
- VERSION = '0.12.1'
4
+ VERSION = '0.13.0'
5
5
  end
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "k_director",
3
- "version": "0.12.1",
3
+ "version": "0.13.0",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "k_director",
9
- "version": "0.12.1",
9
+ "version": "0.13.0",
10
10
  "devDependencies": {
11
11
  "@klueless-js/semantic-release-rubygem": "github:klueless-js/semantic-release-rubygem",
12
12
  "@semantic-release/changelog": "^6.0.1",
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "k_director",
3
- "version": "0.12.1",
3
+ "version": "0.13.0",
4
4
  "description": "Command line and CI/CD tools for k_director",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: k_director
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.12.1
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys