kustomizer 0.1.3 → 0.1.8
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 +2 -2
- data/lib/kustomize/json_6902_patch.rb +4 -0
- data/lib/kustomize/json_6902_patch/append_op.rb +36 -0
- data/lib/kustomize/target_spec.rb +4 -4
- data/lib/kustomize/transform/image_transform.rb +5 -1
- data/lib/kustomize/transform/json_6902_patch_transform.rb +1 -0
- data/lib/kustomize/transform/namespace_transform.rb +4 -0
- data/lib/kustomize/transform/ref_fixup_transform.rb +7 -3
- data/lib/kustomize/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1260ca0cca8efac0126311bef3132cdf7bc365f972796cc79af0f93f104ffdf9
|
4
|
+
data.tar.gz: a185196ef16998e4ff770e3c3de43bebdd73803b8191f1d2848e85df0139bcc5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2cc5cf3fab625e3e33acc67beba765bd59d8601484648107ba777814df91c0f789dd9f672ebb8912752d6e4021a60cc092f4b36482be73507b25aaaf126ce8e6
|
7
|
+
data.tar.gz: efe6654e4cfbebf32c6fc93a9cebfaed0c8ee67dfd4dcbb44a38fddbf5d65031fb7c76f5282b370d53dd27eb390e8a7947ac2628d16e8edc6d3b7b5e13c66a6f
|
data/Gemfile.lock
CHANGED
@@ -0,0 +1,36 @@
|
|
1
|
+
require 'kustomize/json_6902_patch'
|
2
|
+
|
3
|
+
class Kustomize::Json6902Patch::AppendOp < Kustomize::Json6902Patch::Op
|
4
|
+
def self.create(patch_spec)
|
5
|
+
elements =
|
6
|
+
if e = patch_spec['element']
|
7
|
+
[e]
|
8
|
+
elsif es = patch_spec['elements']
|
9
|
+
es
|
10
|
+
else
|
11
|
+
raise ArgumentError, "must specify one of 'element' or 'elements' in: #{patch_spec.inspect}"
|
12
|
+
end
|
13
|
+
|
14
|
+
new(
|
15
|
+
array_path: patch_spec['path'],
|
16
|
+
elements: elements
|
17
|
+
)
|
18
|
+
end
|
19
|
+
|
20
|
+
def initialize(array_path:, elements:)
|
21
|
+
@lens = parse_lens(array_path)
|
22
|
+
@new_elements = elements
|
23
|
+
end
|
24
|
+
|
25
|
+
def apply(rc)
|
26
|
+
@lens.update_in(rc) do |orig_arr|
|
27
|
+
new_arr = orig_arr.dup || []
|
28
|
+
|
29
|
+
@new_elements.each do |elem|
|
30
|
+
new_arr.push(elem)
|
31
|
+
end
|
32
|
+
|
33
|
+
[:set, new_arr]
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -22,11 +22,11 @@ class Kustomize::TargetSpec
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def get_name(rc)
|
25
|
-
rc.dig('
|
25
|
+
rc.dig('metadata', 'name')
|
26
26
|
end
|
27
27
|
|
28
28
|
def get_namespace(rc)
|
29
|
-
rc.dig('
|
29
|
+
rc.dig('metadata', 'namespace') || 'default'
|
30
30
|
end
|
31
31
|
|
32
32
|
def match?(rc)
|
@@ -37,8 +37,8 @@ class Kustomize::TargetSpec
|
|
37
37
|
end
|
38
38
|
|
39
39
|
return false if @match_kind and (rc['kind'] != @match_kind)
|
40
|
-
return false if @match_name and get_name(
|
41
|
-
return false if @match_namespace and get_namespace(
|
40
|
+
return false if @match_name and get_name(rc) != @match_name
|
41
|
+
return false if @match_namespace and get_namespace(rc) != @match_namespace
|
42
42
|
|
43
43
|
true
|
44
44
|
end
|
@@ -23,8 +23,12 @@ class Kustomize::Transform::ImageTransform < Kustomize::Transform
|
|
23
23
|
@new_digest = new_digest
|
24
24
|
end
|
25
25
|
|
26
|
+
TEMPLATE_POD_SPEC_LENS = Lens["spec", "template", "spec", "containers", Access.all, "image"]
|
27
|
+
|
26
28
|
LENS_BY_KIND = {
|
27
|
-
"Deployment" =>
|
29
|
+
"Deployment" => TEMPLATE_POD_SPEC_LENS,
|
30
|
+
"DaemonSet" => TEMPLATE_POD_SPEC_LENS,
|
31
|
+
"StatefulSet" => TEMPLATE_POD_SPEC_LENS
|
28
32
|
}
|
29
33
|
|
30
34
|
def rewrite(rc_doc)
|
@@ -7,6 +7,7 @@ require 'kustomize/json_6902_patch/add_op'
|
|
7
7
|
require 'kustomize/json_6902_patch/replace_op'
|
8
8
|
require 'kustomize/json_6902_patch/remove_op'
|
9
9
|
require 'kustomize/json_6902_patch/gsub_op'
|
10
|
+
require 'kustomize/json_6902_patch/append_op'
|
10
11
|
|
11
12
|
class Kustomize::Transform::Json6902PatchTransform < Kustomize::Transform
|
12
13
|
def self.create(kustomization_file, op_spec)
|
@@ -26,6 +26,10 @@ class Kustomize::Transform::NamespaceTransform < Kustomize::Transform
|
|
26
26
|
|
27
27
|
"SealedSecret" => [
|
28
28
|
Lens["spec", "template", "metadata", "namespace"]
|
29
|
+
],
|
30
|
+
|
31
|
+
"ServiceMonitor" => [
|
32
|
+
Lens["spec", "namespaceSelector", "matchNames", Access.first]
|
29
33
|
]
|
30
34
|
}
|
31
35
|
|
@@ -14,8 +14,7 @@ class Kustomize::Transform::RefFixupTransform < Kustomize::Transform
|
|
14
14
|
|
15
15
|
FINGERPRINT_LENS = Lens['metadata', 'annotations', 'kustomizer.covalenthq.com/effective-fingerprint']
|
16
16
|
|
17
|
-
|
18
|
-
"Deployment" => [
|
17
|
+
POD_TEMPLATE_LENSES = [
|
19
18
|
Lens["spec", "template", "spec", "containers", Access.all, "envFrom", Access.all, "configMapRef", "name"],
|
20
19
|
Lens["spec", "template", "spec", "containers", Access.all, "env", Access.all, "valueFrom", "configMapKeyRef", "name"],
|
21
20
|
Lens["spec", "template", "spec", "volumes", Access.all, "configMap", "name"],
|
@@ -23,7 +22,12 @@ class Kustomize::Transform::RefFixupTransform < Kustomize::Transform
|
|
23
22
|
Lens["spec", "template", "spec", "containers", Access.all, "env", Access.all, "valueFrom", "secretKeyRef", "name"],
|
24
23
|
Lens["spec", "template", "spec", "volumes", Access.all, "secret", "name"],
|
25
24
|
Lens["spec", "template", "spec", "volumes", Access.all, "secret", "secretName"]
|
26
|
-
|
25
|
+
]
|
26
|
+
|
27
|
+
KEY_REF_LENSES_BY_KIND = {
|
28
|
+
"Deployment" => POD_TEMPLATE_LENSES,
|
29
|
+
"StatefulSet" => POD_TEMPLATE_LENSES,
|
30
|
+
"DaemonSet" => POD_TEMPLATE_LENSES
|
27
31
|
}
|
28
32
|
|
29
33
|
def rewrite_all(rcs)
|
data/lib/kustomize/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kustomizer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Levi Aul
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: accessory
|
@@ -68,6 +68,7 @@ files:
|
|
68
68
|
- lib/kustomize/generator_plugin.rb
|
69
69
|
- lib/kustomize/json_6902_patch.rb
|
70
70
|
- lib/kustomize/json_6902_patch/add_op.rb
|
71
|
+
- lib/kustomize/json_6902_patch/append_op.rb
|
71
72
|
- lib/kustomize/json_6902_patch/gsub_op.rb
|
72
73
|
- lib/kustomize/json_6902_patch/remove_op.rb
|
73
74
|
- lib/kustomize/json_6902_patch/replace_op.rb
|