kerbi 0.0.4 → 0.0.10
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/cli/base_handler.rb +33 -2
- data/lib/cli/entry_serializers.rb +7 -0
- data/lib/cli/release_handler.rb +3 -3
- data/lib/cli/root_handler.rb +4 -5
- data/lib/cli/state_handler.rb +8 -8
- data/lib/cli/values_handler.rb +0 -1
- data/lib/code-gen/new-project/kerbifile.rb.erb +2 -1
- data/lib/config/cli_schema.rb +49 -33
- data/lib/config/config_file.rb +6 -5
- data/lib/config/globals.rb +8 -0
- data/lib/config/run_opts.rb +21 -7
- data/lib/config/state_consts.rb +2 -2
- data/lib/kerbi.rb +2 -0
- data/lib/main/mixer.rb +10 -4
- data/lib/mixins/entry_tag_logic.rb +3 -0
- data/lib/revision/fetcher.rb +15 -0
- data/lib/state/base_backend.rb +12 -1
- data/lib/state/config_map_backend.rb +9 -3
- data/lib/state/entry.rb +55 -2
- data/lib/state/entry_set.rb +22 -5
- data/lib/utils/cli.rb +10 -1
- data/spec/cli/release_handler_spec.rb +2 -1
- data/spec/cli/root_handler_spec.rb +7 -4
- data/spec/cli/state_handler_spec.rb +2 -2
- data/spec/cli/values_handler_spec.rb +0 -1
- data/spec/fixtures/expectations/release/delete.txt +1 -1
- data/spec/fixtures/expectations/release/init-already-existed.txt +1 -1
- data/spec/fixtures/expectations/release/init-both-created.txt +1 -1
- data/spec/fixtures/expectations/release/list.txt +3 -3
- data/spec/fixtures/expectations/release/status-all-working.txt +1 -1
- data/spec/fixtures/expectations/release/status-data-unreadable.txt +1 -1
- data/spec/fixtures/expectations/release/status-not-provisioned.txt +1 -1
- data/spec/fixtures/expectations/state/list.txt +5 -5
- data/spec/fixtures/expectations/state/show.txt +4 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/common/metadata.yaml.erb +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/consts.rb +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/helpers.rb +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/kerbifile.rb +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/pod-and-service.yaml.erb +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/values/production.yaml +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/values/v2.yaml +0 -0
- data/spec/{mini-projects → fixtures/mini-projects}/hello-kerbi/values/values.yaml +0 -0
- data/spec/main/configmap_backend_spec.rb +1 -1
- data/spec/main/state_entry_spec.rb +1 -0
- data/spec/spec_helper.rb +3 -1
- metadata +51 -50
@@ -8,8 +8,14 @@ module Kerbi
|
|
8
8
|
class ConfigMapBackend < Kerbi::State::BaseBackend
|
9
9
|
include Kerbi::Mixins::CmBackendTesting
|
10
10
|
|
11
|
+
##
|
12
|
+
# Credentials generated by Utils::K8sAuth to use for auth
|
13
|
+
# @return [Hash] list of hashes
|
11
14
|
attr_reader :auth_bundle
|
12
|
-
|
15
|
+
|
16
|
+
##
|
17
|
+
# Kubernetes namespace where configmap lives
|
18
|
+
# @return [String] namespace
|
13
19
|
attr_reader :namespace
|
14
20
|
|
15
21
|
# @param [Hash] auth_bundle generated by Kerbi::Utils::K8sAuth
|
@@ -29,7 +35,7 @@ module Kerbi
|
|
29
35
|
echo_init("namespaces/#{namespace}", ns_existed, opts)
|
30
36
|
|
31
37
|
create_resource unless (cm_existed = resource_exists?)
|
32
|
-
echo_init("
|
38
|
+
echo_init("configmaps/#{namespace}/#{cm_name}", cm_existed, opts)
|
33
39
|
end
|
34
40
|
|
35
41
|
##
|
@@ -153,7 +159,7 @@ module Kerbi
|
|
153
159
|
end
|
154
160
|
|
155
161
|
def self.mk_cm_name(release_name)
|
156
|
-
"kerbi-#{release_name}-
|
162
|
+
"kerbi-#{release_name}-db"
|
157
163
|
end
|
158
164
|
|
159
165
|
def self.make_client(auth_bundle, api_name)
|
data/lib/state/entry.rb
CHANGED
@@ -5,19 +5,61 @@ module Kerbi
|
|
5
5
|
# Represents a single Kerbi state entry.
|
6
6
|
class Entry
|
7
7
|
|
8
|
+
##
|
9
|
+
# Tag prefix that identifies candidate states
|
10
|
+
# @return [String]
|
8
11
|
CANDIDATE_PREFIX = "[cand]-"
|
9
12
|
|
10
|
-
|
13
|
+
##
|
14
|
+
# Array of record attribute names in symbol form
|
15
|
+
# @return [Array<Symbol>]
|
16
|
+
ATTRS = %i[tag revision message values default_values created_at]
|
17
|
+
|
18
|
+
##
|
19
|
+
# Subset of attribute names (symbol form) that
|
20
|
+
# the user can mass update (i.e Rails' attr_accessible)
|
11
21
|
SETTABLE_ATTRS = %i[message created_at]
|
12
22
|
|
23
|
+
##
|
24
|
+
# Parent collection. Necessary for computation that involve
|
25
|
+
# comparision.
|
26
|
+
# @return [Array<Kerbi::State::EntrySet>]
|
13
27
|
attr_accessor :set
|
14
28
|
|
29
|
+
##
|
30
|
+
# Human readable string that identifies this state
|
31
|
+
# @return [String]
|
15
32
|
attr_accessor :tag
|
33
|
+
|
34
|
+
##
|
35
|
+
# SemVer of chart/mixer, for user info purposes only
|
36
|
+
# @return [String]
|
37
|
+
attr_accessor :revision
|
38
|
+
|
39
|
+
##
|
40
|
+
# Message for/by user, for user info purposes only
|
41
|
+
# @return [String]
|
16
42
|
attr_accessor :message
|
43
|
+
|
44
|
+
##
|
45
|
+
# The default values computed at templating time
|
46
|
+
# @return [Hash]
|
17
47
|
attr_accessor :default_values
|
48
|
+
|
49
|
+
##
|
50
|
+
# The final values computed at templating time
|
51
|
+
# @return [Hash]
|
18
52
|
attr_accessor :values
|
53
|
+
|
54
|
+
##
|
55
|
+
# The default values computed at templating time
|
56
|
+
# @return [Time]
|
19
57
|
attr_accessor :created_at
|
20
58
|
|
59
|
+
##
|
60
|
+
# List of errors, encoded in a simple struct, picked
|
61
|
+
# up during a validation run
|
62
|
+
# @return [Array<Hash>]
|
21
63
|
attr_reader :validation_errors
|
22
64
|
|
23
65
|
def initialize(set, dict)
|
@@ -136,6 +178,10 @@ module Kerbi
|
|
136
178
|
(delta = overrides_delta) ? delta.keys.map(&:to_s) : []
|
137
179
|
end
|
138
180
|
|
181
|
+
##
|
182
|
+
# Serializes the instance's recordable attributes to
|
183
|
+
# a string-keyed Hash
|
184
|
+
# @return Hash
|
139
185
|
def to_h
|
140
186
|
special_ser = {
|
141
187
|
values: values || {},
|
@@ -146,11 +192,18 @@ module Kerbi
|
|
146
192
|
end
|
147
193
|
alias_method :serialize, :to_h
|
148
194
|
|
195
|
+
##
|
196
|
+
# Serializes the instance's recordable attributes to a
|
197
|
+
# JSON string
|
198
|
+
# @return [String]
|
149
199
|
def to_json
|
150
200
|
JSON.dump(serialize)
|
151
201
|
end
|
152
202
|
|
153
|
-
|
203
|
+
##
|
204
|
+
# Deserializes a record in dict-form and returns the
|
205
|
+
# corresponding Entry instance.
|
206
|
+
# @param [Hash] serialized record
|
154
207
|
# @return [Kerbi::State::Entry]
|
155
208
|
def self.from_dict(set, dict={})
|
156
209
|
dict.deep_symbolize_keys!
|
data/lib/state/entry_set.rb
CHANGED
@@ -9,14 +9,27 @@ module Kerbi
|
|
9
9
|
|
10
10
|
include Kerbi::Mixins::EntryTagLogic
|
11
11
|
|
12
|
+
##
|
13
|
+
# Memoized list of state entries
|
14
|
+
# @return [Array<Kerbi::State::Entry>]
|
12
15
|
attr_reader :entries
|
13
16
|
|
17
|
+
##
|
18
|
+
# Made available to states, as a convenience
|
19
|
+
# @return [String]
|
20
|
+
attr_reader :release_name
|
21
|
+
|
14
22
|
# @param [Array<Hash>] dicts
|
15
|
-
def initialize(dicts)
|
23
|
+
def initialize(dicts, **opts)
|
16
24
|
@entries = dicts.map { |h| Entry.from_dict(self, h) }
|
25
|
+
@release_name = opts[:release_name]
|
17
26
|
sort_by_created_at
|
18
27
|
end
|
19
28
|
|
29
|
+
##
|
30
|
+
# Performs simple validation logic, checking if each
|
31
|
+
# state is valid, doing noting if all are valid,
|
32
|
+
# and raising an exception otherwise.
|
20
33
|
def validate!
|
21
34
|
entries.each(&:validate)
|
22
35
|
if (bad_entries = entries.reject(&:valid?)).any?
|
@@ -32,7 +45,7 @@ module Kerbi
|
|
32
45
|
# ones that are NOT candidates.
|
33
46
|
# @return [Array<Kerbi::State::Entry>]
|
34
47
|
def committed
|
35
|
-
entries.select(&:committed?)
|
48
|
+
entries.select(&:committed?).to_a
|
36
49
|
end
|
37
50
|
|
38
51
|
##
|
@@ -40,7 +53,7 @@ module Kerbi
|
|
40
53
|
# ones that ARE candidates.
|
41
54
|
# @return [Array<Kerbi::State::Entry>]
|
42
55
|
def candidates
|
43
|
-
entries.reject(&:committed?)
|
56
|
+
entries.reject(&:committed?).to_a
|
44
57
|
end
|
45
58
|
|
46
59
|
##
|
@@ -121,11 +134,15 @@ module Kerbi
|
|
121
134
|
end
|
122
135
|
alias_method :get, :find_by_literal_tag
|
123
136
|
|
124
|
-
|
137
|
+
##
|
138
|
+
# Updates internal list of state entries to itself minus
|
139
|
+
# states marked as candidates. Does NOT save to backend.
|
125
140
|
def prune_candidates
|
126
|
-
entries.
|
141
|
+
entries.reject!(&:candidate?)
|
127
142
|
end
|
128
143
|
|
144
|
+
##
|
145
|
+
# Sorts internal list of candidates by age.
|
129
146
|
def sort_by_created_at
|
130
147
|
entries.sort! do |a, b|
|
131
148
|
both_defined = a.created_at && b.created_at
|
data/lib/utils/cli.rb
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
module Kerbi
|
2
2
|
module Utils
|
3
|
+
|
4
|
+
##
|
5
|
+
# Mechanical work for all things CLI that does not deserve
|
6
|
+
# to be in the CLI helper mixin.
|
3
7
|
module Cli
|
4
8
|
##
|
5
9
|
# Convenience method for running and compiling the output
|
@@ -137,13 +141,18 @@ module Kerbi
|
|
137
141
|
end
|
138
142
|
end
|
139
143
|
|
144
|
+
def resolve_remote_engine_url
|
145
|
+
""
|
146
|
+
end
|
147
|
+
|
140
148
|
LIST_TABLE_STYLE = {
|
141
149
|
border_left: false,
|
142
150
|
border_right: false,
|
143
151
|
border_top: false,
|
144
152
|
border_x: "",
|
145
153
|
border_y: "",
|
146
|
-
border_i:
|
154
|
+
border_i: '',
|
155
|
+
padding_left: 0,
|
147
156
|
}.freeze
|
148
157
|
|
149
158
|
DESCRIBE_TABLE_STYLE = {
|
@@ -19,7 +19,7 @@ RSpec.describe "$ kerbi [COMMAND]" do
|
|
19
19
|
spec_bundles.each do |bundle|
|
20
20
|
context "with #{bundle[0].presence || "no args"}" do
|
21
21
|
it "echos the expected text" do
|
22
|
-
cmd = hello_kerbi("template foo #{bundle[0]}")
|
22
|
+
cmd = hello_kerbi("template foo . #{bundle[0]}")
|
23
23
|
exp_cli_eq_file(cmd, "root", bundle[1], "yaml")
|
24
24
|
end
|
25
25
|
end
|
@@ -42,7 +42,7 @@ RSpec.describe "$ kerbi [COMMAND]" do
|
|
42
42
|
end
|
43
43
|
|
44
44
|
def template_write_cmd(pod_image)
|
45
|
-
base_cmd = "template #{release_name} " \
|
45
|
+
base_cmd = "template #{release_name} . " \
|
46
46
|
"--set pod.image=#{pod_image}" \
|
47
47
|
" --write-state foo"
|
48
48
|
hello_kerbi(base_cmd)
|
@@ -82,14 +82,17 @@ RSpec.describe "$ kerbi [COMMAND]" do
|
|
82
82
|
|
83
83
|
context "without inline overrides" do
|
84
84
|
it "echos the expected text" do
|
85
|
-
|
85
|
+
base = "template #{release_name} . --read-state foo"
|
86
|
+
cmd = hello_kerbi(base)
|
86
87
|
exp_cli_eq_file(cmd, "root", "template-read", "yaml")
|
87
88
|
end
|
88
89
|
end
|
89
90
|
|
90
91
|
context "with inline overrides" do
|
91
92
|
it "echos the expected text, preferring the inline over the state" do
|
92
|
-
base = "template #{release_name}
|
93
|
+
base = "template #{release_name} . " \
|
94
|
+
"--read-state foo " \
|
95
|
+
"--set pod.image=busybox"
|
93
96
|
cmd = hello_kerbi(base)
|
94
97
|
exp_cli_eq_file(cmd, "root", "template-read-inlines", "yaml")
|
95
98
|
end
|
@@ -28,7 +28,7 @@ RSpec.describe "$ kerbi state [COMMAND]" do
|
|
28
28
|
cmd_group_spec("state list kerbi-spec", "state", "list")
|
29
29
|
end
|
30
30
|
|
31
|
-
describe "$ kerbi state show [TAG]" do
|
31
|
+
describe "$ kerbi state show [RELEASE_NAME] [TAG]" do
|
32
32
|
cmd_group_spec(
|
33
33
|
"state show kerbi-spec one",
|
34
34
|
"state",
|
@@ -39,7 +39,7 @@ RSpec.describe "$ kerbi state [COMMAND]" do
|
|
39
39
|
"state show kerbi-spec @oldest",
|
40
40
|
"state",
|
41
41
|
"show",
|
42
|
-
context_append: "
|
42
|
+
context_append: "using @oldest instead of a literal tag"
|
43
43
|
)
|
44
44
|
end
|
45
45
|
|
@@ -1 +1 @@
|
|
1
|
-
Deleted configmaps/kerbi-spec/kerbi-kerbi-spec-
|
1
|
+
Deleted configmaps/kerbi-spec/kerbi-kerbi-spec-db
|
@@ -1,2 +1,2 @@
|
|
1
1
|
\e[1;39;49mnamespaces/kerbi-spec: \e[0m\e[1;32;49mAlready existed\e[0m
|
2
|
-
\e[1;39;
|
2
|
+
\e[1;39;49mconfigmaps/kerbi-spec/kerbi-kerbi-spec-db: \e[0m\e[1;32;49mAlready existed\e[0m
|
@@ -1,2 +1,2 @@
|
|
1
1
|
\e[1;39;49mnamespaces/kerbi-spec: \e[0m\e[1;34;49mCreated\e[0m
|
2
|
-
\e[1;39;
|
2
|
+
\e[1;39;49mconfigmaps/kerbi-spec/kerbi-kerbi-spec-db: \e[0m\e[1;34;49mCreated\e[0m
|
@@ -1,5 +1,5 @@
|
|
1
1
|
NAME BACKEND NAMESPACE RESOURCE STATES LATEST
|
2
2
|
|
3
|
-
tuna ConfigMap macron kerbi-tuna-
|
4
|
-
dirt ConfigMap tuna kerbi-dirt-
|
5
|
-
tuna ConfigMap tuna kerbi-tuna-
|
3
|
+
tuna ConfigMap macron kerbi-tuna-db 0
|
4
|
+
dirt ConfigMap tuna kerbi-dirt-db ERR ERR
|
5
|
+
tuna ConfigMap tuna kerbi-tuna-db 2 1.0.0
|
@@ -1,5 +1,5 @@
|
|
1
1
|
\e[1;39;49m1. Create Kubernetes client: \e[0m\e[1;32;49mSuccess\e[0m
|
2
2
|
\e[1;39;49m2. List cluster namespaces: \e[0m\e[1;32;49mSuccess\e[0m
|
3
3
|
\e[1;39;49m3. Target namespace kerbi-spec exists: \e[0m\e[1;32;49mSuccess\e[0m
|
4
|
-
\e[1;39;49m4. Resource kerbi-spec/cm/kerbi-kerbi-spec-
|
4
|
+
\e[1;39;49m4. Resource kerbi-spec/cm/kerbi-kerbi-spec-db exists: \e[0m\e[1;32;49mSuccess\e[0m
|
5
5
|
\e[1;39;49m5. Data from resource is readable: \e[0m\e[1;32;49mSuccess\e[0m
|
@@ -1,5 +1,5 @@
|
|
1
1
|
\e[1;39;49m1. Create Kubernetes client: \e[0m\e[1;32;49mSuccess\e[0m
|
2
2
|
\e[1;39;49m2. List cluster namespaces: \e[0m\e[1;32;49mSuccess\e[0m
|
3
3
|
\e[1;39;49m3. Target namespace kerbi-spec exists: \e[0m\e[1;32;49mSuccess\e[0m
|
4
|
-
\e[1;39;49m4. Resource kerbi-spec/cm/kerbi-kerbi-spec-
|
4
|
+
\e[1;39;49m4. Resource kerbi-spec/cm/kerbi-kerbi-spec-db exists: \e[0m\e[1;32;49mSuccess\e[0m
|
5
5
|
\e[1;39;49m5. Data from resource is readable: \e[0m\e[1;31;49mFailure\e[0m
|
@@ -1,5 +1,5 @@
|
|
1
1
|
\e[1;39;49m1. Create Kubernetes client: \e[0m\e[1;32;49mSuccess\e[0m
|
2
2
|
\e[1;39;49m2. List cluster namespaces: \e[0m\e[1;32;49mSuccess\e[0m
|
3
3
|
\e[1;39;49m3. Target namespace kerbi-spec exists: \e[0m\e[1;31;49mFailure\e[0m
|
4
|
-
\e[1;39;49m4. Resource kerbi-spec/cm/kerbi-kerbi-spec-
|
4
|
+
\e[1;39;49m4. Resource kerbi-spec/cm/kerbi-kerbi-spec-db exists: \e[0m\e[1;31;49mFailure\e[0m
|
5
5
|
\e[1;39;49m5. Data from resource is readable: \e[0m\e[1;31;49mFailure\e[0m
|
@@ -1,6 +1,6 @@
|
|
1
|
-
TAG
|
1
|
+
TAG REVISION MESSAGE ASSIGNMENTS OVERRIDES CREATED_AT
|
2
2
|
|
3
|
-
\e[0;33;49m[cand]-four\e[0m
|
4
|
-
\e[0;33;49m[cand]-three\e[0m
|
5
|
-
\e[0;34;49mtwo\e[0m
|
6
|
-
\e[0;34;49mone\e[0m
|
3
|
+
\e[0;33;49m[cand]-four\e[0m 0 0 2003-01-01 00:00:00 +0000
|
4
|
+
\e[0;33;49m[cand]-three\e[0m 0 0 2002-01-01 00:00:00 +0000
|
5
|
+
\e[0;34;49mtwo\e[0m message 0 0 2001-01-01 00:00:00 +0000
|
6
|
+
\e[0;34;49mone\e[0m 1 1 2000-01-01 00:00:00 +0000
|
@@ -1,5 +1,9 @@
|
|
1
1
|
--------------------------------------------
|
2
2
|
\e[1;39;49mTAG\e[0m \e[1;34;49mone\e[0m
|
3
|
+
--------------------------------------------
|
4
|
+
\e[1;39;49mRELEASE\e[0m kerbi-spec
|
5
|
+
--------------------------------------------
|
6
|
+
\e[1;39;49mREVISION\e[0m
|
3
7
|
--------------------------------------------
|
4
8
|
\e[1;39;49mMESSAGE\e[0m
|
5
9
|
--------------------------------------------
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
@@ -57,7 +57,7 @@ RSpec.describe Kerbi::State::ConfigMapBackend do
|
|
57
57
|
result = make_backend("xyz").template_resource([])
|
58
58
|
metadata = (result || {})[:metadata] || {}
|
59
59
|
expect(result[:kind]).to eq('ConfigMap')
|
60
|
-
expect(metadata[:name]).to eq('kerbi-xyz-
|
60
|
+
expect(metadata[:name]).to eq('kerbi-xyz-db')
|
61
61
|
expect(metadata[:namespace]).to eq('xyz')
|
62
62
|
expect(result[:data][:entries]).to eq("[]")
|
63
63
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -66,6 +66,7 @@ end
|
|
66
66
|
def corrupt_cm(backend)
|
67
67
|
cm_body = backend.template_resource([])
|
68
68
|
cm_body[:data][:entries] = "not json"
|
69
|
+
#noinspection RubyResolve
|
69
70
|
backend.send(:client).update_config_map(cm_body)
|
70
71
|
end
|
71
72
|
|
@@ -130,7 +131,7 @@ def exp_cli_eq_file(cmd, dir, file, ext='txt')
|
|
130
131
|
end
|
131
132
|
|
132
133
|
def hello_kerbi(cmd, namespace=nil)
|
133
|
-
target = "#{__dir__}/mini-projects/hello-kerbi"
|
134
|
+
target = "#{__dir__}/fixtures/mini-projects/hello-kerbi"
|
134
135
|
cmd = "#{cmd} --project-root #{target}"
|
135
136
|
cmd = "#{cmd} --namespace #{namespace}" if namespace
|
136
137
|
cmd
|
@@ -142,6 +143,7 @@ def cmd_group_spec(cmd, dir, file, opts={})
|
|
142
143
|
it "echos the expected text" do
|
143
144
|
extension = format == 'table' ? "txt" : format
|
144
145
|
cmd_with_fmt = "#{cmd} -o #{format}"
|
146
|
+
# puts cli(cmd_with_fmt, escaped: true)
|
145
147
|
exp_cli_eq_file(cmd_with_fmt, dir, file, extension)
|
146
148
|
end
|
147
149
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kerbi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Xavier Millot
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-04-
|
11
|
+
date: 2022-04-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: http
|
@@ -144,6 +144,7 @@ files:
|
|
144
144
|
- lib/mixins/cm_backend_testing.rb
|
145
145
|
- lib/mixins/entry_tag_logic.rb
|
146
146
|
- lib/mixins/mixer.rb
|
147
|
+
- lib/revision/fetcher.rb
|
147
148
|
- lib/state/base_backend.rb
|
148
149
|
- lib/state/config_map_backend.rb
|
149
150
|
- lib/state/entry.rb
|
@@ -194,19 +195,19 @@ files:
|
|
194
195
|
- spec/fixtures/expectations/state/show.txt
|
195
196
|
- spec/fixtures/expectations/state/show.yaml
|
196
197
|
- spec/fixtures/expectations/values/order-of-precedence.yaml
|
198
|
+
- spec/fixtures/mini-projects/hello-kerbi/common/metadata.yaml.erb
|
199
|
+
- spec/fixtures/mini-projects/hello-kerbi/consts.rb
|
200
|
+
- spec/fixtures/mini-projects/hello-kerbi/helpers.rb
|
201
|
+
- spec/fixtures/mini-projects/hello-kerbi/kerbifile.rb
|
202
|
+
- spec/fixtures/mini-projects/hello-kerbi/pod-and-service.yaml.erb
|
203
|
+
- spec/fixtures/mini-projects/hello-kerbi/values/production.yaml
|
204
|
+
- spec/fixtures/mini-projects/hello-kerbi/values/v2.yaml
|
205
|
+
- spec/fixtures/mini-projects/hello-kerbi/values/values.yaml
|
197
206
|
- spec/main/configmap_backend_spec.rb
|
198
207
|
- spec/main/mixer_spec.rb
|
199
208
|
- spec/main/project_code_gen_spec.rb
|
200
209
|
- spec/main/state_entry_set_spec.rb
|
201
210
|
- spec/main/state_entry_spec.rb
|
202
|
-
- spec/mini-projects/hello-kerbi/common/metadata.yaml.erb
|
203
|
-
- spec/mini-projects/hello-kerbi/consts.rb
|
204
|
-
- spec/mini-projects/hello-kerbi/helpers.rb
|
205
|
-
- spec/mini-projects/hello-kerbi/kerbifile.rb
|
206
|
-
- spec/mini-projects/hello-kerbi/pod-and-service.yaml.erb
|
207
|
-
- spec/mini-projects/hello-kerbi/values/production.yaml
|
208
|
-
- spec/mini-projects/hello-kerbi/values/v2.yaml
|
209
|
-
- spec/mini-projects/hello-kerbi/values/values.yaml
|
210
211
|
- spec/mixins/mixer_mixin_spec.rb
|
211
212
|
- spec/spec_helper.rb
|
212
213
|
- spec/utils/helm_spec.rb
|
@@ -238,60 +239,60 @@ signing_key:
|
|
238
239
|
specification_version: 4
|
239
240
|
summary: Multi-strategy Kubernetes manifest templating engine.
|
240
241
|
test_files:
|
241
|
-
- spec/mini-projects/hello-kerbi/common/metadata.yaml.erb
|
242
|
-
- spec/mini-projects/hello-kerbi/consts.rb
|
243
|
-
- spec/mini-projects/hello-kerbi/pod-and-service.yaml.erb
|
244
|
-
- spec/mini-projects/hello-kerbi/values/values.yaml
|
245
|
-
- spec/mini-projects/hello-kerbi/values/v2.yaml
|
246
|
-
- spec/mini-projects/hello-kerbi/values/production.yaml
|
247
|
-
- spec/mini-projects/hello-kerbi/helpers.rb
|
248
|
-
- spec/mini-projects/hello-kerbi/kerbifile.rb
|
249
|
-
- spec/spec_helper.rb
|
250
|
-
- spec/mixins/mixer_mixin_spec.rb
|
251
|
-
- spec/main/mixer_spec.rb
|
252
242
|
- spec/main/project_code_gen_spec.rb
|
243
|
+
- spec/main/mixer_spec.rb
|
253
244
|
- spec/main/configmap_backend_spec.rb
|
254
245
|
- spec/main/state_entry_set_spec.rb
|
255
246
|
- spec/main/state_entry_spec.rb
|
247
|
+
- spec/cli/release_handler_spec.rb
|
248
|
+
- spec/cli/config_handler_spec.rb
|
249
|
+
- spec/cli/values_handler_spec.rb
|
250
|
+
- spec/cli/state_handler_spec.rb
|
251
|
+
- spec/cli/root_handler_spec.rb
|
252
|
+
- spec/utils/values_utils_spec.rb
|
253
|
+
- spec/utils/mixing_utils_spec.rb
|
254
|
+
- spec/utils/misc_utils_spec.rb
|
255
|
+
- spec/utils/helm_spec.rb
|
256
|
+
- spec/utils/k8s_auth_spec.rb
|
257
|
+
- spec/mixins/mixer_mixin_spec.rb
|
258
|
+
- spec/fixtures/mini-projects/hello-kerbi/common/metadata.yaml.erb
|
259
|
+
- spec/fixtures/mini-projects/hello-kerbi/kerbifile.rb
|
260
|
+
- spec/fixtures/mini-projects/hello-kerbi/helpers.rb
|
261
|
+
- spec/fixtures/mini-projects/hello-kerbi/values/v2.yaml
|
262
|
+
- spec/fixtures/mini-projects/hello-kerbi/values/production.yaml
|
263
|
+
- spec/fixtures/mini-projects/hello-kerbi/values/values.yaml
|
264
|
+
- spec/fixtures/mini-projects/hello-kerbi/consts.rb
|
265
|
+
- spec/fixtures/mini-projects/hello-kerbi/pod-and-service.yaml.erb
|
256
266
|
- spec/fixtures/expectations/common/bad-tag.txt
|
257
|
-
- spec/fixtures/expectations/
|
258
|
-
- spec/fixtures/expectations/
|
259
|
-
- spec/fixtures/expectations/root/template-write.yaml
|
260
|
-
- spec/fixtures/expectations/root/template-read.yaml
|
261
|
-
- spec/fixtures/expectations/root/template-inlines.yaml
|
262
|
-
- spec/fixtures/expectations/root/template.yaml
|
263
|
-
- spec/fixtures/expectations/root/template-production.yaml
|
264
|
-
- spec/fixtures/expectations/release/list.txt
|
265
|
-
- spec/fixtures/expectations/release/status-all-working.txt
|
267
|
+
- spec/fixtures/expectations/release/init-already-existed.txt
|
268
|
+
- spec/fixtures/expectations/release/status-data-unreadable.txt
|
266
269
|
- spec/fixtures/expectations/release/init-both-created.txt
|
270
|
+
- spec/fixtures/expectations/release/status-all-working.txt
|
267
271
|
- spec/fixtures/expectations/release/status-not-provisioned.txt
|
272
|
+
- spec/fixtures/expectations/release/list.txt
|
268
273
|
- spec/fixtures/expectations/release/delete.txt
|
269
|
-
- spec/fixtures/expectations/release/init-already-existed.txt
|
270
|
-
- spec/fixtures/expectations/release/status-data-unreadable.txt
|
271
274
|
- spec/fixtures/expectations/values/order-of-precedence.yaml
|
272
275
|
- spec/fixtures/expectations/state/prune-candidates.txt
|
273
|
-
- spec/fixtures/expectations/state/list.
|
274
|
-
- spec/fixtures/expectations/state/list.json
|
275
|
-
- spec/fixtures/expectations/state/show.yaml
|
276
|
+
- spec/fixtures/expectations/state/list.yaml
|
276
277
|
- spec/fixtures/expectations/state/demote.txt
|
277
|
-
- spec/fixtures/expectations/state/
|
278
|
-
- spec/fixtures/expectations/state/
|
278
|
+
- spec/fixtures/expectations/state/show.yaml
|
279
|
+
- spec/fixtures/expectations/state/show.txt
|
279
280
|
- spec/fixtures/expectations/state/show.json
|
280
|
-
- spec/fixtures/expectations/state/
|
281
|
+
- spec/fixtures/expectations/state/set.txt
|
282
|
+
- spec/fixtures/expectations/state/list.txt
|
281
283
|
- spec/fixtures/expectations/state/promote.txt
|
284
|
+
- spec/fixtures/expectations/state/delete.txt
|
285
|
+
- spec/fixtures/expectations/state/list.json
|
282
286
|
- spec/fixtures/expectations/state/retag.txt
|
283
|
-
- spec/fixtures/expectations/
|
287
|
+
- spec/fixtures/expectations/config/show-default.yaml
|
284
288
|
- spec/fixtures/expectations/config/bad-set.txt
|
285
289
|
- spec/fixtures/expectations/config/set.txt
|
286
|
-
- spec/fixtures/expectations/
|
290
|
+
- spec/fixtures/expectations/root/template-write.yaml
|
291
|
+
- spec/fixtures/expectations/root/template-read.yaml
|
292
|
+
- spec/fixtures/expectations/root/template-production.yaml
|
293
|
+
- spec/fixtures/expectations/root/template-inlines.yaml
|
294
|
+
- spec/fixtures/expectations/root/values.json
|
295
|
+
- spec/fixtures/expectations/root/template-read-inlines.yaml
|
296
|
+
- spec/fixtures/expectations/root/template.yaml
|
287
297
|
- spec/fixtures/embedding.yaml.erb
|
288
|
-
- spec/
|
289
|
-
- spec/utils/helm_spec.rb
|
290
|
-
- spec/utils/values_utils_spec.rb
|
291
|
-
- spec/utils/mixing_utils_spec.rb
|
292
|
-
- spec/utils/misc_utils_spec.rb
|
293
|
-
- spec/cli/values_handler_spec.rb
|
294
|
-
- spec/cli/root_handler_spec.rb
|
295
|
-
- spec/cli/config_handler_spec.rb
|
296
|
-
- spec/cli/state_handler_spec.rb
|
297
|
-
- spec/cli/release_handler_spec.rb
|
298
|
+
- spec/spec_helper.rb
|