kubes 0.6.6 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/ISSUE_TEMPLATE.md +7 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +84 -0
- data/.github/ISSUE_TEMPLATE/documentation.md +12 -0
- data/.github/ISSUE_TEMPLATE/feature_request.md +64 -0
- data/.github/ISSUE_TEMPLATE/question.md +14 -0
- data/.github/PULL_REQUEST_TEMPLATE.md +50 -0
- data/CHANGELOG.md +17 -0
- data/docs/_docs/config/reference.md +1 -1
- data/docs/_docs/dsl/multiple-resources.md +19 -21
- data/docs/_docs/helpers/google.md +1 -1
- data/docs/_docs/helpers/google/gke.md +7 -3
- data/docs/_docs/helpers/google/secrets.md +1 -1
- data/docs/_docs/intro/concepts.md +8 -9
- data/docs/_docs/intro/docker-image.md +2 -2
- data/docs/_docs/intro/ordering.md +9 -10
- data/docs/_docs/patterns/multiple-envs.md +6 -6
- data/docs/_docs/resources/role.md +8 -9
- data/docs/_docs/yaml.md +4 -5
- data/docs/_docs/yaml/multiple-files.md +22 -0
- data/docs/_docs/yaml/multiple-resources.md +89 -0
- data/docs/_includes/commands.html +8 -9
- data/docs/_includes/config/hooks/options.md +1 -0
- data/docs/_includes/layering/layers.md +7 -4
- data/docs/_includes/sidebar.html +6 -1
- data/docs/_includes/vs/kubes/structure.md +12 -13
- data/kubes.gemspec +1 -1
- data/lib/kubes/cli/compile.rb +1 -1
- data/lib/kubes/command.rb +2 -1
- data/lib/kubes/compiler/dsl/core/base.rb +3 -7
- data/lib/kubes/compiler/dsl/core/blocks.rb +5 -1
- data/lib/kubes/compiler/dsl/syntax/endpoint.rb +34 -0
- data/lib/kubes/compiler/dsl/syntax/resource.rb +0 -1
- data/lib/kubes/compiler/layering.rb +3 -7
- data/lib/kubes/compiler/shared/helpers.rb +4 -2
- data/lib/kubes/compiler/shared/runtime_helpers.rb +78 -0
- data/lib/kubes/compiler/strategy.rb +1 -15
- data/lib/kubes/compiler/strategy/base.rb +0 -56
- data/lib/kubes/compiler/strategy/dispatcher.rb +60 -0
- data/lib/kubes/compiler/strategy/erb.rb +8 -14
- data/lib/kubes/compiler/strategy/result.rb +6 -2
- data/lib/kubes/compiler/util/normalize.rb +2 -2
- data/lib/kubes/compiler/util/yaml_dump.rb +7 -4
- data/lib/kubes/config.rb +1 -1
- data/lib/kubes/docker/strategy/image_name.rb +7 -3
- data/lib/kubes/version.rb +1 -1
- data/lib/templates/new/resource/dsl/endpoint.rb +3 -0
- data/lib/templates/new/resource/yaml/endpoint.yaml +9 -0
- data/spec/kubes/compiler/strategy/{dsl_spec.rb → dispatcher_spec.rb} +10 -9
- metadata +19 -10
- data/lib/kubes/compiler/shared/custom_helpers.rb +0 -17
- data/lib/kubes/compiler/shared/custom_variables.rb +0 -38
- data/lib/kubes/compiler/shared/plugin_helpers.rb +0 -14
- data/lib/kubes/compiler/strategy/dsl.rb +0 -4
@@ -0,0 +1,78 @@
|
|
1
|
+
module Kubes::Compiler::Shared
|
2
|
+
module RuntimeHelpers
|
3
|
+
include Kubes::Compiler::Shared::Helpers
|
4
|
+
|
5
|
+
def load_runtime_helpers
|
6
|
+
load_custom_variables # also load custom variables
|
7
|
+
load_plugin_helpers
|
8
|
+
load_custom_helpers
|
9
|
+
end
|
10
|
+
|
11
|
+
@@custom_helpers_loaded = false
|
12
|
+
def load_custom_helpers
|
13
|
+
return if @@custom_helpers_loaded
|
14
|
+
paths = Dir.glob("#{Kubes.root}/.kubes/helpers/**/*.rb")
|
15
|
+
paths.sort_by! { |p| p.size } # so namespaces are loaded first
|
16
|
+
|
17
|
+
paths.each do |path|
|
18
|
+
filename = path.sub(%r{.*.kubes/helpers/},'').sub('.rb','')
|
19
|
+
module_name = filename.camelize
|
20
|
+
base_class_for_helper.send :include, module_name.constantize
|
21
|
+
end
|
22
|
+
@@custom_helpers_loaded = true
|
23
|
+
end
|
24
|
+
|
25
|
+
# Load plugin helper methods from project
|
26
|
+
@@plugin_helpers_loaded = false
|
27
|
+
def load_plugin_helpers
|
28
|
+
return if @@plugin_helpers_loaded
|
29
|
+
Kubes::Plugin.plugins.each do |klass|
|
30
|
+
helpers_class = "#{klass}::Helpers".constantize # IE: KubesAws::Helpers
|
31
|
+
base_class_for_helper.send :include, helpers_class
|
32
|
+
end
|
33
|
+
@@plugin_helpers_loaded = true
|
34
|
+
end
|
35
|
+
|
36
|
+
def base_class_for_helper
|
37
|
+
if self.is_a?(Kubes::Compiler::Strategy::Erb)
|
38
|
+
Kubes::Compiler::Strategy::Erb
|
39
|
+
else
|
40
|
+
Kubes::Compiler::Dsl::Core::Base
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
include DslEvaluator
|
45
|
+
# Load custom variables from project
|
46
|
+
@@custom_variables_loaded = false
|
47
|
+
def load_custom_variables
|
48
|
+
return if Kubes.kustomize?
|
49
|
+
|
50
|
+
ext = File.extname(@path)
|
51
|
+
role = @path.sub(%r{.*\.kubes/resources/},'').sub(ext,'').split('/').first # IE: web
|
52
|
+
kind = File.basename(@path).sub(ext,'') # IE: deployment
|
53
|
+
all = "all"
|
54
|
+
if @block_form
|
55
|
+
kind = kind.pluralize
|
56
|
+
all = all.pluralize
|
57
|
+
end
|
58
|
+
|
59
|
+
layers = [
|
60
|
+
"base.rb",
|
61
|
+
"#{Kubes.env}.rb",
|
62
|
+
"base/all.rb",
|
63
|
+
"base/all/#{Kubes.env}.rb",
|
64
|
+
"base/#{kind}.rb",
|
65
|
+
"base/#{kind}/base.rb",
|
66
|
+
"base/#{kind}/#{Kubes.env}.rb",
|
67
|
+
"#{role}/#{kind}.rb",
|
68
|
+
"#{role}/#{kind}/base.rb",
|
69
|
+
"#{role}/#{kind}/#{Kubes.env}.rb",
|
70
|
+
]
|
71
|
+
|
72
|
+
layers.each do |layer|
|
73
|
+
path = "#{Kubes.root}/.kubes/variables/#{layer}"
|
74
|
+
evaluate_file(path)
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
@@ -6,23 +6,9 @@ class Kubes::Compiler
|
|
6
6
|
end
|
7
7
|
|
8
8
|
def compile
|
9
|
-
|
10
|
-
return false unless klass
|
11
|
-
|
12
|
-
strategy = klass.new(@options.merge(path: @path)) # Dsl or Erb
|
13
|
-
result = strategy.run
|
9
|
+
result = Dispatcher.new(@options.merge(path: @path)).dispatch
|
14
10
|
result.decorate!(:pre) # compile pre phase decoration
|
15
11
|
result
|
16
12
|
end
|
17
|
-
|
18
|
-
def strategy_class
|
19
|
-
ext = File.extname(@path).sub('.','').to_sym
|
20
|
-
map = {
|
21
|
-
rb: Dsl,
|
22
|
-
yaml: Erb,
|
23
|
-
yml: Erb,
|
24
|
-
}
|
25
|
-
map[ext]
|
26
|
-
end
|
27
13
|
end
|
28
14
|
end
|
@@ -9,62 +9,6 @@ class Kubes::Compiler::Strategy
|
|
9
9
|
@options = options
|
10
10
|
@path = options[:path]
|
11
11
|
@save_file = save_file(@path)
|
12
|
-
@data = @options[:data] || {}
|
13
|
-
end
|
14
|
-
|
15
|
-
def run
|
16
|
-
render_files(pre_layers)
|
17
|
-
render(@path) # main resource definition
|
18
|
-
render_files(post_layers)
|
19
|
-
|
20
|
-
Result.new(@save_file, @data)
|
21
|
-
end
|
22
|
-
|
23
|
-
def render_files(paths)
|
24
|
-
paths.each do |path|
|
25
|
-
next unless File.exist?(path) # layers may not exist
|
26
|
-
render(path)
|
27
|
-
end
|
28
|
-
end
|
29
|
-
|
30
|
-
# render and merge
|
31
|
-
def render(path)
|
32
|
-
result = render_strategy(path)
|
33
|
-
if result.is_a?(Kubes::Compiler::Dsl::Core::Blocks)
|
34
|
-
result = result.results
|
35
|
-
end
|
36
|
-
@data.deeper_merge!(result)
|
37
|
-
end
|
38
|
-
|
39
|
-
# Delegate to Dsl or Erb strategy again and pass @data down to allow rendering of a mix of yaml and rb files.
|
40
|
-
def render_strategy(path)
|
41
|
-
if path.include?('.rb')
|
42
|
-
dsl_class.new(@options.merge(path: path, data: @data)).run
|
43
|
-
else
|
44
|
-
Erb.new(@options.merge(data: @data)).render_result(path)
|
45
|
-
end
|
46
|
-
end
|
47
|
-
|
48
|
-
# Must be defined here in case coming from Kubes::Compiler::Strategy::Erb#render_strategy
|
49
|
-
def dsl_class
|
50
|
-
if block_form?
|
51
|
-
Kubes::Compiler::Dsl::Core::Blocks
|
52
|
-
else
|
53
|
-
syntax_class
|
54
|
-
end
|
55
|
-
end
|
56
|
-
|
57
|
-
def syntax_class
|
58
|
-
klass_name = normalize_kind(@save_file) # IE: @save_file: web/service.yaml
|
59
|
-
"Kubes::Compiler::Dsl::Syntax::#{klass_name}".constantize
|
60
|
-
rescue NameError
|
61
|
-
logger.debug "Using default resource for: #{klass_name}"
|
62
|
-
Kubes::Compiler::Dsl::Syntax::Resource # default
|
63
|
-
end
|
64
|
-
|
65
|
-
def block_form?
|
66
|
-
type = extract_type(@save_file)
|
67
|
-
type.pluralize == type
|
68
12
|
end
|
69
13
|
end
|
70
14
|
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
class Kubes::Compiler::Strategy
|
2
|
+
class Dispatcher < Base
|
3
|
+
def dispatch
|
4
|
+
result = render(@path) # main
|
5
|
+
results = [result].flatten # ensure array
|
6
|
+
data = results.map! do |main|
|
7
|
+
hash = pre_layer.deeper_merge!(main) # need the ! or deep_merge returns original hash
|
8
|
+
hash.deeper_merge!(post_layer)
|
9
|
+
end
|
10
|
+
Result.new(@save_file, data)
|
11
|
+
end
|
12
|
+
|
13
|
+
# Render via to Erb or one of the DSL syntax classes or Core/Blocks class
|
14
|
+
def render(path)
|
15
|
+
if path.include?('.rb')
|
16
|
+
klass = dsl_class(path) # IE: Kubes::Compiler::Dsl::Syntax::Deployment or Kubes::Compiler::Dsl::Core::Blocks
|
17
|
+
klass.new(@options.merge(path: path, data: @data)).run
|
18
|
+
else
|
19
|
+
Erb.new(@options.merge(data: @data)).render_result(path)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
# Must be defined here in case coming from Kubes::Compiler::Strategy::Erb#render
|
24
|
+
def dsl_class(path)
|
25
|
+
if block_form?(path)
|
26
|
+
Kubes::Compiler::Dsl::Core::Blocks
|
27
|
+
else
|
28
|
+
syntax_class
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
def syntax_class
|
33
|
+
klass_name = normalize_kind(@save_file) # IE: @save_file: web/service.yaml
|
34
|
+
"Kubes::Compiler::Dsl::Syntax::#{klass_name}".constantize
|
35
|
+
rescue NameError
|
36
|
+
logger.debug "Using default resource for: #{klass_name}"
|
37
|
+
Kubes::Compiler::Dsl::Syntax::Resource # default
|
38
|
+
end
|
39
|
+
|
40
|
+
def block_form?(path)
|
41
|
+
type = extract_type(path)
|
42
|
+
type.pluralize == type
|
43
|
+
end
|
44
|
+
|
45
|
+
def pre_layer
|
46
|
+
merge_layers(pre_layers)
|
47
|
+
end
|
48
|
+
|
49
|
+
def post_layer
|
50
|
+
merge_layers(post_layers)
|
51
|
+
end
|
52
|
+
|
53
|
+
def merge_layers(layers)
|
54
|
+
layers.inject({}) do |hash, layer|
|
55
|
+
data = render(layer)
|
56
|
+
hash.deep_merge!(data)
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -5,28 +5,22 @@ class Kubes::Compiler::Strategy
|
|
5
5
|
extend Kubes::Compiler::Dsl::Core::Fields
|
6
6
|
include Kubes::Compiler::Dsl::Core::Helpers
|
7
7
|
include Kubes::Compiler::Layering
|
8
|
-
include Kubes::Compiler::Shared::
|
9
|
-
include Kubes::Compiler::Shared::CustomVariables
|
10
|
-
include Kubes::Compiler::Shared::Helpers
|
11
|
-
include Kubes::Compiler::Shared::PluginHelpers
|
8
|
+
include Kubes::Compiler::Shared::RuntimeHelpers
|
12
9
|
|
13
10
|
def initialize(options={})
|
14
11
|
super
|
15
12
|
# For ERB scope is in this same Strategy::Erb class
|
16
13
|
# For DSL scope is within the each for the Resource classes. IE: kubes/compile/dsl/core/base.rb
|
17
|
-
|
18
|
-
load_custom_variables
|
19
|
-
load_custom_helpers
|
14
|
+
load_runtime_helpers
|
20
15
|
end
|
21
16
|
|
22
17
|
def render_result(path)
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
else
|
28
|
-
|
29
|
-
end
|
18
|
+
return unless File.exist?(path)
|
19
|
+
|
20
|
+
yaml = RenderMePretty.result(path, context: self)
|
21
|
+
result = yaml_load(path, yaml)
|
22
|
+
# in case of blank yaml doc a Boolean false is returned. else Hash or Array is returned
|
23
|
+
%w[Array Hash].include?(result.class.to_s) ? result : {}
|
30
24
|
end
|
31
25
|
|
32
26
|
def yaml_load(path, yaml)
|
@@ -14,11 +14,15 @@ class Kubes::Compiler::Strategy
|
|
14
14
|
# decorate(:pre) or decorate(:post)
|
15
15
|
def decorate!(phase)
|
16
16
|
klass = "Kubes::Compiler::Decorator::#{phase.to_s.camelize}".constantize
|
17
|
-
|
17
|
+
results = [@data].flatten
|
18
|
+
results.map! do |r|
|
19
|
+
klass.new(r).result
|
20
|
+
end
|
18
21
|
end
|
19
22
|
|
20
23
|
def content
|
21
|
-
|
24
|
+
result = @data.size == 1 ? @data.first : @data
|
25
|
+
yaml_dump(result)
|
22
26
|
end
|
23
27
|
end
|
24
28
|
end
|
@@ -1,12 +1,12 @@
|
|
1
1
|
module Kubes::Compiler::Util
|
2
2
|
module Normalize
|
3
3
|
def normalize_kind(path)
|
4
|
-
|
5
|
-
extract_type(info).underscore.camelize # Deployment, Service, Ingress, ManagedCertificate, etc
|
4
|
+
extract_type(path).underscore.camelize # Deployment, Service, Ingress, ManagedCertificate, etc
|
6
5
|
end
|
7
6
|
|
8
7
|
# info: web/service.yaml
|
9
8
|
def extract_type(info)
|
9
|
+
info = info.sub(%r{.*/.kubes/resources/}, '')
|
10
10
|
_, kind = info.split('/')
|
11
11
|
kind.sub('.yaml','').sub('.yml','').sub('.rb','').sub(/-.*/,'')
|
12
12
|
end
|
@@ -4,12 +4,15 @@ require "yaml"
|
|
4
4
|
module Kubes::Compiler::Util
|
5
5
|
module YamlDump
|
6
6
|
def yaml_dump(data)
|
7
|
-
|
7
|
+
case data
|
8
|
+
when Array
|
9
|
+
items = data.map do |i|
|
10
|
+
standardize_yaml(i)
|
11
|
+
end
|
12
|
+
items.map(&:to_yaml).join("")
|
13
|
+
else # single resource in YAML
|
8
14
|
data = standardize_yaml(data)
|
9
15
|
data.to_yaml
|
10
|
-
else
|
11
|
-
items = data.map { |k,v| standardize_yaml(v) }
|
12
|
-
items.map(&:to_yaml).join("")
|
13
16
|
end
|
14
17
|
end
|
15
18
|
|
data/lib/kubes/config.rb
CHANGED
@@ -39,7 +39,7 @@ module Kubes
|
|
39
39
|
config.skip = []
|
40
40
|
|
41
41
|
config.state = ActiveSupport::OrderedOptions.new
|
42
|
-
config.state.
|
42
|
+
config.state.path = "#{Kubes.root}/.kubes/state/#{Kubes.env}/data.json"
|
43
43
|
|
44
44
|
config.suffix_hash = true # append suffix hash to ConfigMap and Secret
|
45
45
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
require "json"
|
2
|
+
|
1
3
|
module Kubes::Docker::Strategy
|
2
4
|
module ImageName
|
3
5
|
extend Memoist
|
@@ -13,12 +15,13 @@ module Kubes::Docker::Strategy
|
|
13
15
|
# Only when a new docker build command gets run will the image name state be updated.
|
14
16
|
def store_image_name
|
15
17
|
FileUtils.mkdir_p(File.dirname(image_state_path))
|
16
|
-
|
18
|
+
text = JSON.pretty_generate(image: @@image_name)
|
19
|
+
IO.write(image_state_path, text)
|
17
20
|
end
|
18
21
|
|
19
22
|
# output can get entirely wiped so dont use that folder
|
20
23
|
def image_state_path
|
21
|
-
Kubes.config.state.
|
24
|
+
Kubes.config.state.path
|
22
25
|
end
|
23
26
|
|
24
27
|
# full_image - Includes the tag. Examples:
|
@@ -33,7 +36,8 @@ module Kubes::Docker::Strategy
|
|
33
36
|
logger.error "ERROR: Unable to find #{image_state_path} which contains the last docker image name built with kubes build. Please run `kubes docker build` first."
|
34
37
|
exit 1
|
35
38
|
end
|
36
|
-
IO.read(image_state_path)
|
39
|
+
data = JSON.load(IO.read(image_state_path))
|
40
|
+
data['image']
|
37
41
|
end
|
38
42
|
|
39
43
|
@@timestamp = Time.now.strftime('%Y-%m-%dT%H-%M-%S')
|
data/lib/kubes/version.rb
CHANGED
@@ -1,12 +1,13 @@
|
|
1
|
-
describe Kubes::Compiler::Strategy::
|
2
|
-
let(:
|
3
|
-
let(:options) { {path:
|
1
|
+
describe Kubes::Compiler::Strategy::Dispatcher do
|
2
|
+
let(:dispatcher) { described_class.new(options) }
|
3
|
+
let(:options) { {path: path } }
|
4
|
+
let(:path) { fixture(resource) }
|
4
5
|
|
5
6
|
context "standard" do
|
6
7
|
let(:resource) { "project/.kubes/resources/web/deployment" }
|
7
8
|
it "run" do
|
8
|
-
result =
|
9
|
-
expect(
|
9
|
+
result = dispatcher.dispatch
|
10
|
+
expect(dispatcher.dsl_class(path)).to eq(Kubes::Compiler::Dsl::Syntax::Deployment)
|
10
11
|
data = YAML.load(result.content)
|
11
12
|
expect(data['kind']).to eq "Deployment"
|
12
13
|
end
|
@@ -15,8 +16,8 @@ describe Kubes::Compiler::Strategy::Dsl do
|
|
15
16
|
context "blocks" do
|
16
17
|
let(:resource) { "blocks/deployments" }
|
17
18
|
it "run" do
|
18
|
-
result =
|
19
|
-
expect(
|
19
|
+
result = dispatcher.dispatch
|
20
|
+
expect(dispatcher.dsl_class(path)).to eq(Kubes::Compiler::Dsl::Core::Blocks)
|
20
21
|
resource = result.content.split('---').last
|
21
22
|
data = YAML.load(resource)
|
22
23
|
expect(data['kind']).to eq "Deployment"
|
@@ -27,8 +28,8 @@ describe Kubes::Compiler::Strategy::Dsl do
|
|
27
28
|
context "multiple files" do
|
28
29
|
let(:resource) { "multiple-files/.kubes/resources/web/deployment-1" }
|
29
30
|
it "run" do
|
30
|
-
result =
|
31
|
-
expect(
|
31
|
+
result = dispatcher.dispatch
|
32
|
+
expect(dispatcher.dsl_class(path)).to eq(Kubes::Compiler::Dsl::Syntax::Deployment)
|
32
33
|
data = YAML.load(result.content)
|
33
34
|
expect(data['kind']).to eq "Deployment"
|
34
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: kubes
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.7.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tung Nguyen
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-12-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -156,14 +156,14 @@ dependencies:
|
|
156
156
|
requirements:
|
157
157
|
- - "~>"
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 0.3.
|
159
|
+
version: 0.3.5
|
160
160
|
type: :runtime
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - "~>"
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 0.3.
|
166
|
+
version: 0.3.5
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: bundler
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|
@@ -244,6 +244,12 @@ extra_rdoc_files: []
|
|
244
244
|
files:
|
245
245
|
- ".dockerignore"
|
246
246
|
- ".gcloudignore"
|
247
|
+
- ".github/ISSUE_TEMPLATE.md"
|
248
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
249
|
+
- ".github/ISSUE_TEMPLATE/documentation.md"
|
250
|
+
- ".github/ISSUE_TEMPLATE/feature_request.md"
|
251
|
+
- ".github/ISSUE_TEMPLATE/question.md"
|
252
|
+
- ".github/PULL_REQUEST_TEMPLATE.md"
|
247
253
|
- ".gitignore"
|
248
254
|
- ".rspec"
|
249
255
|
- CHANGELOG.md
|
@@ -377,6 +383,8 @@ files:
|
|
377
383
|
- docs/_docs/vs/helm.md
|
378
384
|
- docs/_docs/vs/kustomize.md
|
379
385
|
- docs/_docs/yaml.md
|
386
|
+
- docs/_docs/yaml/multiple-files.md
|
387
|
+
- docs/_docs/yaml/multiple-resources.md
|
380
388
|
- docs/_includes/commands.html
|
381
389
|
- docs/_includes/config/hooks/options.md
|
382
390
|
- docs/_includes/content.html
|
@@ -593,6 +601,7 @@ files:
|
|
593
601
|
- lib/kubes/compiler/dsl/syntax/config_map.rb
|
594
602
|
- lib/kubes/compiler/dsl/syntax/daemon_set.rb
|
595
603
|
- lib/kubes/compiler/dsl/syntax/deployment.rb
|
604
|
+
- lib/kubes/compiler/dsl/syntax/endpoint.rb
|
596
605
|
- lib/kubes/compiler/dsl/syntax/ingress.rb
|
597
606
|
- lib/kubes/compiler/dsl/syntax/job.rb
|
598
607
|
- lib/kubes/compiler/dsl/syntax/managed_certificate.rb
|
@@ -606,14 +615,12 @@ files:
|
|
606
615
|
- lib/kubes/compiler/dsl/syntax/service.rb
|
607
616
|
- lib/kubes/compiler/dsl/syntax/service_account.rb
|
608
617
|
- lib/kubes/compiler/layering.rb
|
609
|
-
- lib/kubes/compiler/shared/custom_helpers.rb
|
610
|
-
- lib/kubes/compiler/shared/custom_variables.rb
|
611
618
|
- lib/kubes/compiler/shared/helpers.rb
|
612
619
|
- lib/kubes/compiler/shared/helpers/deprecated.rb
|
613
|
-
- lib/kubes/compiler/shared/
|
620
|
+
- lib/kubes/compiler/shared/runtime_helpers.rb
|
614
621
|
- lib/kubes/compiler/strategy.rb
|
615
622
|
- lib/kubes/compiler/strategy/base.rb
|
616
|
-
- lib/kubes/compiler/strategy/
|
623
|
+
- lib/kubes/compiler/strategy/dispatcher.rb
|
617
624
|
- lib/kubes/compiler/strategy/erb.rb
|
618
625
|
- lib/kubes/compiler/strategy/erb/yaml_error.rb
|
619
626
|
- lib/kubes/compiler/strategy/pass.rb
|
@@ -674,6 +681,7 @@ files:
|
|
674
681
|
- lib/templates/new/resource/dsl/config_map.rb
|
675
682
|
- lib/templates/new/resource/dsl/daemon_set.rb
|
676
683
|
- lib/templates/new/resource/dsl/deployment.rb
|
684
|
+
- lib/templates/new/resource/dsl/endpoint.rb
|
677
685
|
- lib/templates/new/resource/dsl/ingress.rb
|
678
686
|
- lib/templates/new/resource/dsl/job.rb
|
679
687
|
- lib/templates/new/resource/dsl/managed_certificate.rb
|
@@ -689,6 +697,7 @@ files:
|
|
689
697
|
- lib/templates/new/resource/yaml/config_map.yaml
|
690
698
|
- lib/templates/new/resource/yaml/daemon_set.yaml
|
691
699
|
- lib/templates/new/resource/yaml/deployment.yaml
|
700
|
+
- lib/templates/new/resource/yaml/endpoint.yaml
|
692
701
|
- lib/templates/new/resource/yaml/ingress.yaml
|
693
702
|
- lib/templates/new/resource/yaml/job.yaml
|
694
703
|
- lib/templates/new/resource/yaml/managed_certificate.yaml
|
@@ -748,7 +757,7 @@ files:
|
|
748
757
|
- spec/kubes/cli/prune_spec.rb
|
749
758
|
- spec/kubes/compiler/decorator/post/deployment_spec.rb
|
750
759
|
- spec/kubes/compiler/decorator/post/pod_spec.rb
|
751
|
-
- spec/kubes/compiler/strategy/
|
760
|
+
- spec/kubes/compiler/strategy/dispatcher_spec.rb
|
752
761
|
- spec/kubes/compiler_spec.rb
|
753
762
|
- spec/kubes/dsl/daemon_set.rb
|
754
763
|
- spec/kubes/dsl/deployment_spec.rb
|
@@ -823,7 +832,7 @@ test_files:
|
|
823
832
|
- spec/kubes/cli/prune_spec.rb
|
824
833
|
- spec/kubes/compiler/decorator/post/deployment_spec.rb
|
825
834
|
- spec/kubes/compiler/decorator/post/pod_spec.rb
|
826
|
-
- spec/kubes/compiler/strategy/
|
835
|
+
- spec/kubes/compiler/strategy/dispatcher_spec.rb
|
827
836
|
- spec/kubes/compiler_spec.rb
|
828
837
|
- spec/kubes/dsl/daemon_set.rb
|
829
838
|
- spec/kubes/dsl/deployment_spec.rb
|