kuber_kit 1.1.8 → 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/.github/workflows/rspec.yml +1 -1
- data/.ruby-version +1 -1
- data/CHANGELOG.md +0 -48
- data/README.md +2 -2
- data/kuber_kit.gemspec +3 -3
- data/lib/kuber_kit/actions/configuration_loader.rb +3 -13
- data/lib/kuber_kit/actions/kubectl_attacher.rb +4 -7
- data/lib/kuber_kit/actions/kubectl_get.rb +3 -3
- data/lib/kuber_kit/actions/kubectl_logs.rb +4 -7
- data/lib/kuber_kit/actions/service_deployer.rb +27 -40
- data/lib/kuber_kit/artifacts_sync/abstract_artifact_resolver.rb +5 -0
- data/lib/kuber_kit/artifacts_sync/artifact_updater.rb +9 -19
- data/lib/kuber_kit/artifacts_sync/git_artifact_resolver.rb +31 -0
- data/lib/kuber_kit/artifacts_sync/null_artifact_resolver.rb +7 -0
- data/lib/kuber_kit/cli.rb +2 -36
- data/lib/kuber_kit/configs.rb +1 -4
- data/lib/kuber_kit/container.rb +4 -28
- data/lib/kuber_kit/core/artifacts/abstract_artifact.rb +0 -8
- data/lib/kuber_kit/core/artifacts/git.rb +1 -10
- data/lib/kuber_kit/core/artifacts/local.rb +0 -8
- data/lib/kuber_kit/core/configuration.rb +6 -10
- data/lib/kuber_kit/core/configuration_definition.rb +9 -30
- data/lib/kuber_kit/core/configuration_factory.rb +1 -3
- data/lib/kuber_kit/core/context_helper/base_helper.rb +7 -1
- data/lib/kuber_kit/core/context_helper/context_helper_factory.rb +1 -3
- data/lib/kuber_kit/core/context_helper/context_vars.rb +19 -33
- data/lib/kuber_kit/core/context_helper/service_helper.rb +1 -15
- data/lib/kuber_kit/core/dependencies/abstract_dependency_resolver.rb +0 -7
- data/lib/kuber_kit/core/service.rb +5 -8
- data/lib/kuber_kit/core/service_definition.rb +4 -16
- data/lib/kuber_kit/core/service_factory.rb +1 -2
- data/lib/kuber_kit/defaults.rb +4 -13
- data/lib/kuber_kit/image_compiler/image_builder.rb +1 -1
- data/lib/kuber_kit/service_deployer/service_dependency_resolver.rb +1 -1
- data/lib/kuber_kit/service_deployer/strategies/kubernetes.rb +2 -8
- data/lib/kuber_kit/service_reader/reader.rb +10 -2
- data/lib/kuber_kit/shell/commands/bash_commands.rb +6 -6
- data/lib/kuber_kit/shell/commands/docker_commands.rb +5 -5
- data/lib/kuber_kit/shell/commands/docker_compose_commands.rb +1 -1
- data/lib/kuber_kit/shell/commands/git_commands.rb +12 -19
- data/lib/kuber_kit/shell/commands/kubectl_commands.rb +4 -5
- data/lib/kuber_kit/shell/commands/rsync_commands.rb +1 -1
- data/lib/kuber_kit/shell/commands/system_commands.rb +1 -1
- data/lib/kuber_kit/shell/local_shell.rb +8 -12
- data/lib/kuber_kit/shell/ssh_session.rb +1 -5
- data/lib/kuber_kit/shell/ssh_shell.rb +2 -2
- data/lib/kuber_kit/shell_launcher/strategies/kubernetes.rb +1 -10
- data/lib/kuber_kit/template_reader/reader.rb +0 -1
- data/lib/kuber_kit/template_reader/strategies/artifact_file.rb +0 -1
- data/lib/kuber_kit/tools/logger_factory.rb +1 -1
- data/lib/kuber_kit/version.rb +1 -1
- data/lib/kuber_kit.rb +3 -23
- metadata +13 -24
- data/lib/kuber_kit/actions/service_generator.rb +0 -20
- data/lib/kuber_kit/artifacts_sync/strategies/abstract.rb +0 -9
- data/lib/kuber_kit/artifacts_sync/strategies/git_updater.rb +0 -46
- data/lib/kuber_kit/artifacts_sync/strategies/null_updater.rb +0 -12
- data/lib/kuber_kit/core/context_helper/abstract_helper.rb +0 -5
- data/lib/kuber_kit/core/context_helper/local_context_helper.rb +0 -14
- data/lib/kuber_kit/service_deployer/strategies/helm.rb +0 -41
- data/lib/kuber_kit/service_generator/action_handler.rb +0 -16
- data/lib/kuber_kit/service_generator/generator.rb +0 -26
- data/lib/kuber_kit/service_generator/strategies/abstract.rb +0 -5
- data/lib/kuber_kit/service_generator/strategies/helm.rb +0 -33
- data/lib/kuber_kit/service_generator/strategy_detector.rb +0 -6
- data/lib/kuber_kit/shell/commands/helm_commands.rb +0 -42
- data/lib/kuber_kit/template_reader/renderer.rb +0 -17
@@ -1,33 +0,0 @@
|
|
1
|
-
class KuberKit::ServiceGenerator::Strategies::Helm < KuberKit::ServiceGenerator::Strategies::Abstract
|
2
|
-
include KuberKit::Import[
|
3
|
-
"service_reader.reader",
|
4
|
-
"shell.bash_commands",
|
5
|
-
"configs",
|
6
|
-
]
|
7
|
-
|
8
|
-
Contract KuberKit::Shell::AbstractShell, KuberKit::Core::Service, String => Any
|
9
|
-
def generate(shell, service, export_path)
|
10
|
-
service_config = reader.read(shell, service)
|
11
|
-
chart_root_path = File.join(export_path, "#{service.name}_chart")
|
12
|
-
chart_templates_path = File.join(chart_root_path, "templates")
|
13
|
-
chart_config_path = File.join(chart_root_path, "Chart.yaml")
|
14
|
-
release_path = File.join(chart_templates_path, "release.yaml")
|
15
|
-
|
16
|
-
bash_commands.mkdir_p(shell, chart_root_path)
|
17
|
-
bash_commands.mkdir_p(shell, chart_templates_path)
|
18
|
-
|
19
|
-
shell.write(release_path, service_config)
|
20
|
-
shell.write(chart_config_path, chart_config_content(service.uri))
|
21
|
-
end
|
22
|
-
|
23
|
-
def chart_config_content(release_name)
|
24
|
-
query = <<-CHART
|
25
|
-
apiVersion: v2
|
26
|
-
name: #{release_name}
|
27
|
-
description: #{release_name}
|
28
|
-
type: application
|
29
|
-
version: 1.0.0
|
30
|
-
appVersion: "1.0.0"
|
31
|
-
CHART
|
32
|
-
end
|
33
|
-
end
|
@@ -1,42 +0,0 @@
|
|
1
|
-
class KuberKit::Shell::Commands::HelmCommands
|
2
|
-
Contract KuberKit::Shell::AbstractShell, Or[String, ArrayOf[String]], KeywordArgs[
|
3
|
-
kubeconfig_path: Maybe[Or[
|
4
|
-
String, KuberKit::Core::ArtifactPath
|
5
|
-
]],
|
6
|
-
namespace: Maybe[Or[Symbol, String]],
|
7
|
-
interactive: Optional[Bool],
|
8
|
-
] => Any
|
9
|
-
def helm_run(shell, command_list, kubeconfig_path: nil, namespace: nil, interactive: false)
|
10
|
-
command_parts = []
|
11
|
-
|
12
|
-
if kubeconfig_path.is_a?(KuberKit::Core::ArtifactPath)
|
13
|
-
kubeconfig_path = artifact_path_resolver.call(kubeconfig_path)
|
14
|
-
end
|
15
|
-
|
16
|
-
if kubeconfig_path
|
17
|
-
command_parts << "KUBECONFIG=#{kubeconfig_path}"
|
18
|
-
end
|
19
|
-
|
20
|
-
command_parts << "helm"
|
21
|
-
|
22
|
-
if namespace
|
23
|
-
command_parts << "-n #{namespace}"
|
24
|
-
end
|
25
|
-
|
26
|
-
command_parts += Array(command_list).compact
|
27
|
-
|
28
|
-
if interactive
|
29
|
-
shell.interactive!(command_parts.join(" "))
|
30
|
-
else
|
31
|
-
shell.exec!(command_parts.join(" "))
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
def install(shell, release_name, chart_path, kubeconfig_path: nil, namespace: nil)
|
36
|
-
helm_run(shell, "install #{release_name} #{chart_path}", kubeconfig_path: kubeconfig_path, namespace: namespace)
|
37
|
-
end
|
38
|
-
|
39
|
-
def upgrade(shell, release_name, chart_path, kubeconfig_path: nil, namespace: nil)
|
40
|
-
helm_run(shell, "upgrade #{release_name} #{chart_path} --install", kubeconfig_path: kubeconfig_path, namespace: namespace)
|
41
|
-
end
|
42
|
-
end
|
@@ -1,17 +0,0 @@
|
|
1
|
-
class KuberKit::TemplateReader::Renderer
|
2
|
-
include KuberKit::Import[
|
3
|
-
"core.template_store",
|
4
|
-
"preprocessing.text_preprocessor",
|
5
|
-
template_reader: "template_reader.reader"
|
6
|
-
]
|
7
|
-
|
8
|
-
|
9
|
-
Contract KuberKit::Shell::AbstractShell, Symbol, KeywordArgs[
|
10
|
-
context_helper: KuberKit::Core::ContextHelper::AbstractHelper
|
11
|
-
] => String
|
12
|
-
def call(shell, template_name, context_helper:)
|
13
|
-
template = template_store.get(template_name)
|
14
|
-
template_text = template_reader.read(shell, template)
|
15
|
-
text_preprocessor.compile(template_text, context_helper: context_helper)
|
16
|
-
end
|
17
|
-
end
|