- java.lang.Object
-
- com.oracle.bedrock.runtime.k8s.helm.HelmCommand<HelmInstall>
-
- com.oracle.bedrock.runtime.k8s.helm.HelmInstall
-
- All Implemented Interfaces:
CLI<HelmInstall>,CLI.WithCerts<HelmInstall>,CLI.WithRepo<HelmInstall>,CLI.WithTLS<HelmInstall>,MetaClass<Application>
public class HelmInstall extends HelmCommand<HelmInstall> implements CLI.WithCerts<HelmInstall>, CLI.WithTLS<HelmInstall>, CLI.WithRepo<HelmInstall>
A representation of the Helm install command.Copyright (c) 2018. All Rights Reserved. Oracle Corporation.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates.- Author:
- Jonathan Knight
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.oracle.bedrock.runtime.k8s.helm.HelmCommand
HelmCommand.Template
-
Nested classes/interfaces inherited from interface com.oracle.bedrock.runtime.k8s.helm.CLI
CLI.WithCerts<C extends CLI.WithCerts>, CLI.WithRepo<C extends CLI.WithRepo>, CLI.WithTLS<C extends CLI.WithTLS>
-
-
Field Summary
-
Fields inherited from class com.oracle.bedrock.runtime.k8s.helm.HelmCommand
DEFAULT_HELM
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description HelmInstalldevelopment()Use development versions too.HelmInstalldryRun()Perform a dry run install.HelmInstallname(String name)Set the release name.HelmInstallnamespace(String namespace)Specify the namespace to install the release into.HelmInstallnameTemplate(String template)Specify the template used to name the release.HelmInstallnewInstance(String helm, Arguments arguments, Arguments flags, EnvironmentVariables env)Create a new instance of this Helm command.HelmInstallnoHooks()Prevent hooks from running during install.HelmInstallreplace()Re-use the given name, even if that name is already used, his is unsafe in production.HelmInstallrepo(String repo)Set the chart repository url where to locate the requested chartHelmInstallset(String... values)Set the values to use to override those in the values file.HelmInstalltimeout(int seconds)Set the time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks) (default 300)HelmInstallvalues(File valuesFile)Specify values in a YAML file (can specify multiple) (default []).HelmInstallvalues(String valuesFile)Specify values in a YAML file (can specify multiple) (default []).HelmInstallversion(String version)Specify the exact chart version to install.HelmInstallwaitForK8s()Wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful.HelmInstallwaitForK8s(int seconds)Wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful.-
Methods inherited from class com.oracle.bedrock.runtime.k8s.helm.HelmCommand
execute, executeAndWait, getArguments, getCommands, getEnvironment, getFlags, getHelmLocation, getImplementationClass, helmExists, isFlagsFirst, onLaunch, onLaunched, onLaunching
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.oracle.bedrock.runtime.k8s.helm.CLI
debug, getArguments, getCommands, getEnvironment, getFlags, getHelmLocation, home, host, isFlagsFirst, kubeConfig, kubeContext, tillerNamespace, withArguments, withArguments, withArguments, withEnvironment, withEnvironment, withEnvironment, withEnvironment, withFlags, withFlags, withFlags, withHelmAt
-
Methods inherited from interface com.oracle.bedrock.runtime.k8s.helm.CLI.WithCerts
caFile, certFile, keyFile, keyRing
-
Methods inherited from interface com.oracle.bedrock.runtime.k8s.helm.CLI.WithRepo
verify
-
Methods inherited from interface com.oracle.bedrock.runtime.k8s.helm.CLI.WithTLS
tls, tlsCaCert, tlsCert, tlsKey, tlsVerify
-
Methods inherited from interface com.oracle.bedrock.runtime.MetaClass
getImplementationClass, onLaunch, onLaunched, onLaunching
-
-
-
-
Method Detail
-
development
public HelmInstall development()
Use development versions too. Equivalent to version '>0.0.0-a'. If--versionis set, this is ignored.- Returns:
- a copy of this command with the
--develflag appended
-
dryRun
public HelmInstall dryRun()
Perform a dry run install.- Returns:
- a copy of this command with the
--dry-runflag appended
-
name
public HelmInstall name(String name)
Set the release name. If unspecified, it will auto-generate one for you- Parameters:
name- the release name- Returns:
- a copy of this command with the
--nameflag appended
-
nameTemplate
public HelmInstall nameTemplate(String template)
Specify the template used to name the release.- Parameters:
template- the template used to name the release- Returns:
- a copy of this command with the
--name-templateflag appended
-
namespace
public HelmInstall namespace(String namespace)
Specify the namespace to install the release into. Defaults to the current kube config namespace.- Parameters:
namespace- the namespace to install the release into.- Returns:
- a copy of this command with the
--namespaceflag appended
-
noHooks
public HelmInstall noHooks()
Prevent hooks from running during install.- Returns:
- a copy of this command with the
--no-hooksflag appended
-
replace
public HelmInstall replace()
Re-use the given name, even if that name is already used, his is unsafe in production.- Returns:
- a copy of this command with the
--replaceflag appended
-
repo
public HelmInstall repo(String repo)
Set the chart repository url where to locate the requested chart- Specified by:
repoin interfaceCLI.WithRepo<HelmInstall>- Parameters:
repo- the chart repository url where to locate the requested chart- Returns:
- a copy of this command with the
--repoflag appended
-
set
public HelmInstall set(String... values)
Set the values to use to override those in the values file. Value strings are in the form "x=y".- Parameters:
values- the values to use.- Returns:
- a copy of this command with the
--setflag appended
-
timeout
public HelmInstall timeout(int seconds)
Set the time in seconds to wait for any individual Kubernetes operation (like Jobs for hooks) (default 300)- Parameters:
seconds- the timeout in seconds- Returns:
- a copy of this command with the
--valuesflag appended
-
values
public HelmInstall values(String valuesFile)
Specify values in a YAML file (can specify multiple) (default []).- Parameters:
valuesFile- the values YAML file- Returns:
- a copy of this command with the
--valuesflag appended
-
values
public HelmInstall values(File valuesFile)
Specify values in a YAML file (can specify multiple) (default []).- Parameters:
valuesFile- the values YAML file- Returns:
- a copy of this command with the
--valuesflag appended
-
version
public HelmInstall version(String version)
Specify the exact chart version to install. If this is not specified, the latest version is installed.- Specified by:
versionin interfaceCLI.WithRepo<HelmInstall>- Parameters:
version- the chart version- Returns:
- a copy of this command with the
--versionflag appended
-
waitForK8s
public HelmInstall waitForK8s()
Wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful. Will wait for the number of seconds specified with the--timeoutoptiontimeout(int)or the default of 300 seconds.- Returns:
- a copy of this command with the
--waitflag appended
-
waitForK8s
public HelmInstall waitForK8s(int seconds)
Wait until all Pods, PVCs, Services, and minimum number of Pods of a Deployment are in a ready state before marking the release as successful.- Parameters:
seconds- timeout in seconds- Returns:
- a copy of this command with the
--waitand--timeoutflags appended
-
newInstance
public HelmInstall newInstance(String helm, Arguments arguments, Arguments flags, EnvironmentVariables env)
Description copied from interface:CLICreate a new instance of this Helm command.- Specified by:
newInstancein interfaceCLI<HelmInstall>arguments- the command argumentsflags- the command flagsenv- the environment variables- Returns:
- a new instance of this command
-
-