Skip to main content

pull

Running this command will create a directory on the workstation containing the application and Kubernetes manifests. These assets can be used to deploy KOTS to a cluster through other workflows, such as kubectl. This command is necessary when managing a application without the use of the admin console.

Usage

kubectl kots pull [upstream uri] [flags]
  • Replace [upstream-uri] with the URI for your KOTS application (required).
  • If the KOTS application has been packaged by Replicated Vendor, the --license-file flag must be provided.
  • Provide [flags] according to the table below

This command supports all global flags and also:

FlagTypeDescription
--downstreamstringsthe list of any downstreams to create/update
--exclude-admin-consoleboolset to true to exclude the admin console (only valid when [upstream-uri] points to a replicated app)
--exclude-kots-kindsboolset to true to exclude rendering KOTS custom objects to the base directory (default true)
-h, --helphelp for pull
--helm-versionstringthe Helm version with which to render the Helm Chart (default "v2"). This is a beta feature
--image-namespacestringthe namespace/org in the docker registry to push images to (required when --rewrite-images is set)
--license-filestringpath to a license file (required when [upstream-uri] points to a replicated app)
--local-pathstringspecify a local-path to pull a locally available replicated app (only valid when [upstream-uri] points to a replicated app)
-n, --namespacestringnamespace to render the upstream to in the base (default "default")
--registry-endpointstringthe endpoint of the local docker registry to use when pushing images (required when --rewrite-images is set)
--repostringrepo uri to use when downloading a helm chart
--rewrite-imagesboolset to true to force all container images to be rewritten and pushed to a local registry
--rootdirstringroot directory that will be used to write the yaml to (default ${HOME} or %USERPROFILE%)
--setstringsvalues to pass to helm when running helm template
--shared-passwordstringshared password to use when deploying the admin console
--http-proxystringsets HTTP_PROXY environment variable in all KOTS Admin Console components
--https-proxystringsets HTTPS_PROXY environment variable in all KOTS Admin Console components
--no-proxystringsets NO_PROXY environment variable in all KOTS Admin Console components
--copy-proxy-envboolcopy proxy environment variables from current environment into all KOTS Admin Console components
--config-valuesstringpath to a manifest containing config values (must be apiVersion: kots.io/v1beta1, kind: ConfigValues)
--with-minioboolset to true to include a local minio instance to be used for storage (default true)

Examples

kubectl kots pull sentry/unstable --license-file ~/license.yaml
kubectl kots pull helm://elastic/elasticsearch --helm-version v3