github.com/GoogleContainerTools/skaffold/v2@v2.13.2/docs-v2/content/en/docs/references/cli/_index.md (about) 1 --- 2 title: "CLI" 3 linkTitle: "CLI" 4 weight: 1 5 --- 6 7 Skaffold command-line interface provides the following commands: 8 9 10 End-to-end pipelines: 11 12 * [skaffold run](#skaffold-run) - to build & deploy once 13 * [skaffold dev](#skaffold-dev) - to trigger the watch loop build & deploy workflow with cleanup on exit 14 * [skaffold debug](#skaffold-debug) - to run a pipeline in debug mode 15 16 Pipeline building blocks for CI/CD: 17 18 * [skaffold build](#skaffold-build) - to just build and tag your image(s) 19 * [skaffold deploy](#skaffold-deploy) - to deploy the given image(s) 20 * [skaffold delete](#skaffold-delete) - to cleanup the deployed artifacts 21 * [skaffold render](#skaffold-render) - build and tag images, and output templated Kubernetes manifests 22 * [skaffold apply](#skaffold-apply) - to apply hydrated manifests to a cluster 23 24 Getting started with a new project: 25 26 * [skaffold init](#skaffold-init) - to bootstrap Skaffold config 27 * [skaffold fix](#skaffold-fix) - to upgrade from older skaffold.yaml schema version to newer skaffold.yaml schema version 28 29 Other Commands: 30 31 * [skaffold help](#skaffold-help) - print help 32 * [skaffold version](#skaffold-version) - get Skaffold version 33 * [skaffold completion](#skaffold-completion) - setup tab completion for the CLI 34 * [skaffold config](#skaffold-config) - manage context specific parameters 35 * [skaffold credits](#skaffold-credits) - export third party notices to given path (./skaffold-credits by default) 36 * [skaffold diagnose](#skaffold-diagnose) - diagnostics of Skaffold works in your project 37 * [skaffold schema](#skaffold-schema) - list and print json schemas used to validate skaffold.yaml configuration 38 39 40 ## Global flags 41 42 | Flag | Description | 43 |------- |---------------| 44 |`-h, --help`| Prints the HELP file for the current command.| 45 |`-v, --verbosity LOG-LEVEL` | Uses a specific log level. Available log levels are `info`, `warn`, `error`, `fatal`, `debug` and `trace`. Default value is `warn`.| 46 47 48 ## Global environment variables 49 50 | Flag | Description | 51 |------- |---------------| 52 |`SKAFFOLD_UPDATE_CHECK`|Enables checking for latest version of the Skaffold binary. By default it's `true`. | 53 54 55 ## Skaffold commands 56 57 <!-- 58 ****** 59 To edit this file above edit index_header - the rest of the file is autogenerated by cmd/skaffold/man 60 ****** 61 --> 62 63 ### skaffold 64 65 66 67 ``` 68 69 70 End-to-end Pipelines: 71 run Run a pipeline 72 dev Run a pipeline in development mode 73 debug Run a pipeline in debug mode 74 75 Pipeline Building Blocks: 76 build Build the artifacts 77 test Run tests against your built application images 78 deploy Deploy pre-built artifacts 79 delete Delete any resources deployed by Skaffold 80 render Generate rendered Kubernetes manifests 81 apply Apply hydrated manifests to a cluster 82 verify Run verification tests against skaffold deployments 83 84 Getting Started With a New Project: 85 init Generate configuration for deploying an application 86 87 Other Commands: 88 completion Output shell completion for the given shell (bash, fish or zsh) 89 config Interact with the global Skaffold config file (defaults to `$HOME/.skaffold/config`) 90 diagnose Run a diagnostic on Skaffold 91 exec Execute a custom action 92 fix Update old configuration to a newer schema version 93 schema List JSON schemas used to validate skaffold.yaml configuration 94 survey Opens a web browser to fill out the Skaffold survey 95 version Print the version information 96 97 Use "skaffold <command> --help" for more information about a given command. 98 Use "skaffold options" for a list of global command-line options (applies to all commands). 99 100 101 ``` 102 Env vars: 103 104 * `SKAFFOLD_COLOR` (same as `--color`) 105 * `SKAFFOLD_INTERACTIVE` (same as `--interactive`) 106 * `SKAFFOLD_TIMESTAMPS` (same as `--timestamps`) 107 * `SKAFFOLD_UPDATE_CHECK` (same as `--update-check`) 108 * `SKAFFOLD_VERBOSITY` (same as `--verbosity`) 109 110 ### skaffold apply 111 112 Apply hydrated manifests to a cluster 113 114 ``` 115 116 117 Examples: 118 # Hydrate Kubernetes pod manifest first 119 skaffold render --output rendered-pod.yaml 120 121 # Then create resources on your cluster from that hydrated manifest 122 skaffold apply rendered-pod.yaml 123 124 Options: 125 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 126 --cloud-run-location='': The GCP Region to deploy Cloud Run services to 127 --cloud-run-project='': The GCP Project ID or Project Number to deploy for Cloud Run 128 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 129 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 130 --force=false: Recreate Kubernetes resources if necessary for deployment, warning: might cause downtime! 131 --iterative-status-check=true: Run `status-check` iteratively after each deploy step, instead of all-together at the end of all deploys (default). 132 --kube-context='': Deploy to this Kubernetes context 133 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 134 -l, --label=[]: Add custom labels to deployed objects. Set multiple times for multiple labels 135 -m, --module=[]: Filter Skaffold configs to only the provided named modules 136 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 137 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 138 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 139 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 140 --rpc-port=: tcp port to expose the Skaffold API over gRPC 141 --status-check=: Wait for deployed resources to stabilize 142 --status-check-selectors='': File containing resource selectors for kubernetes resources status check. A sample file looks like the following: 143 { 144 "selectors":[ 145 { 146 "group":"my.domain", 147 "kind":"MyCRD" 148 } 149 ] 150 } 151 The values of "group" and "kind" are regular expressions. 152 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 153 --tail=false: Stream logs from deployed objects 154 --tolerate-failures-until-deadline=false: Configures `status-check` to tolerate failures until Skaffold's statusCheckDeadline duration or the deployments progressDeadlineSeconds Otherwise deployment failures skaffold encounters will immediately fail the deployment. Defaults to 'false' 155 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 156 157 Usage: 158 skaffold apply [options] 159 160 Use "skaffold options" for a list of global command-line options (applies to all commands). 161 162 163 ``` 164 Env vars: 165 166 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 167 * `SKAFFOLD_CLOUD_RUN_LOCATION` (same as `--cloud-run-location`) 168 * `SKAFFOLD_CLOUD_RUN_PROJECT` (same as `--cloud-run-project`) 169 * `SKAFFOLD_CONFIG` (same as `--config`) 170 * `SKAFFOLD_FILENAME` (same as `--filename`) 171 * `SKAFFOLD_FORCE` (same as `--force`) 172 * `SKAFFOLD_ITERATIVE_STATUS_CHECK` (same as `--iterative-status-check`) 173 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 174 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 175 * `SKAFFOLD_LABEL` (same as `--label`) 176 * `SKAFFOLD_MODULE` (same as `--module`) 177 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 178 * `SKAFFOLD_PROFILE` (same as `--profile`) 179 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 180 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 181 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 182 * `SKAFFOLD_STATUS_CHECK` (same as `--status-check`) 183 * `SKAFFOLD_STATUS_CHECK_SELECTORS` (same as `--status-check-selectors`) 184 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 185 * `SKAFFOLD_TAIL` (same as `--tail`) 186 * `SKAFFOLD_TOLERATE_FAILURES_UNTIL_DEADLINE` (same as `--tolerate-failures-until-deadline`) 187 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 188 189 ### skaffold build 190 191 Build the artifacts 192 193 ``` 194 195 196 Examples: 197 # Build all the artifacts 198 skaffold build 199 200 # Build artifacts with a profile activated 201 skaffold build -p <profile> 202 203 # Build artifacts whose image name contains <db> 204 skaffold build -b <db> 205 206 # Quietly build artifacts and output the image names as json 207 skaffold build -q > build_result.json 208 209 # Build the artifacts and then deploy them 210 skaffold build -q | skaffold deploy --build-artifacts - 211 212 # Print the final image names 213 skaffold build -q --dry-run 214 215 Options: 216 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 217 --build-concurrency=-1: Number of concurrently running builds. Set to 0 to run all builds in parallel. Doesn't violate build order among dependencies. 218 -b, --build-image=[]: Only build artifacts with image names that contain the given substring. Default is to build sources for all artifacts 219 --cache-artifacts=true: Set to false to disable default caching of artifacts 220 --cache-file='': Specify the location of the cache file (default $HOME/.skaffold/cache) 221 --check-cluster-node-platforms=false: When set to true, images are built for the target platforms matching the active kubernetes cluster node platforms. Enabled by default for `dev`, `debug` and `run` 222 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 223 -d, --default-repo='': Default repository value (overrides global config) 224 --detect-minikube=true: Use heuristics to detect a minikube cluster 225 --disable-multi-platform-build=false: When set to true, forces only single platform image builds even when multiple target platforms are specified. Enabled by default for `dev` and `debug` modes, to keep dev-loop fast 226 --dry-run=false: Don't build images, just compute the tag for each artifact. 227 --file-output='': Filename to write build images to 228 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 229 --insecure-registry=[]: Target registries for built images which are not secure 230 --kube-context='': Deploy to this Kubernetes context 231 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 232 -m, --module=[]: Filter Skaffold configs to only the provided named modules 233 --mute-logs=[]: mute logs for specified stages in pipeline (build, deploy, status-check, none, all) 234 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 235 -o, --output={{json .}}: Used in conjunction with --quiet flag. Format output with go-template. For full struct documentation, see https://godoc.org/github.com/GoogleContainerTools/skaffold/v2/cmd/skaffold/app/flags#BuildOutput 236 --platform=[]: The platform to target for the build artifacts 237 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 238 --profile-auto-activation=true: Set to false to disable profile auto activation 239 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 240 --push=: Push the built images to the specified image repository. 241 -q, --quiet=false: Suppress the build output and print image built on success. See --output to format output. 242 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 243 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 244 --rpc-port=: tcp port to expose the Skaffold API over gRPC 245 --skip-tests=false: Whether to skip the tests after building 246 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 247 -t, --tag='': The optional custom tag to use for images which overrides the current Tagger configuration 248 --toot=false: Emit a terminal beep after the deploy is complete 249 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 250 251 Usage: 252 skaffold build [options] 253 254 Use "skaffold options" for a list of global command-line options (applies to all commands). 255 256 257 ``` 258 Env vars: 259 260 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 261 * `SKAFFOLD_BUILD_CONCURRENCY` (same as `--build-concurrency`) 262 * `SKAFFOLD_BUILD_IMAGE` (same as `--build-image`) 263 * `SKAFFOLD_CACHE_ARTIFACTS` (same as `--cache-artifacts`) 264 * `SKAFFOLD_CACHE_FILE` (same as `--cache-file`) 265 * `SKAFFOLD_CHECK_CLUSTER_NODE_PLATFORMS` (same as `--check-cluster-node-platforms`) 266 * `SKAFFOLD_CONFIG` (same as `--config`) 267 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 268 * `SKAFFOLD_DETECT_MINIKUBE` (same as `--detect-minikube`) 269 * `SKAFFOLD_DISABLE_MULTI_PLATFORM_BUILD` (same as `--disable-multi-platform-build`) 270 * `SKAFFOLD_DRY_RUN` (same as `--dry-run`) 271 * `SKAFFOLD_FILE_OUTPUT` (same as `--file-output`) 272 * `SKAFFOLD_FILENAME` (same as `--filename`) 273 * `SKAFFOLD_INSECURE_REGISTRY` (same as `--insecure-registry`) 274 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 275 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 276 * `SKAFFOLD_MODULE` (same as `--module`) 277 * `SKAFFOLD_MUTE_LOGS` (same as `--mute-logs`) 278 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 279 * `SKAFFOLD_OUTPUT` (same as `--output`) 280 * `SKAFFOLD_PLATFORM` (same as `--platform`) 281 * `SKAFFOLD_PROFILE` (same as `--profile`) 282 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 283 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 284 * `SKAFFOLD_PUSH` (same as `--push`) 285 * `SKAFFOLD_QUIET` (same as `--quiet`) 286 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 287 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 288 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 289 * `SKAFFOLD_SKIP_TESTS` (same as `--skip-tests`) 290 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 291 * `SKAFFOLD_TAG` (same as `--tag`) 292 * `SKAFFOLD_TOOT` (same as `--toot`) 293 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 294 295 ### skaffold completion 296 297 Output shell completion for the given shell (bash, fish or zsh) 298 299 ``` 300 301 302 Usage: 303 skaffold completion SHELL [options] 304 305 Use "skaffold options" for a list of global command-line options (applies to all commands). 306 307 308 ``` 309 310 ### skaffold config 311 312 Interact with the global Skaffold config file (defaults to `$HOME/.skaffold/config`) 313 314 ``` 315 316 317 Available Commands: 318 list List all values set in the global Skaffold config 319 set Set a value in the global Skaffold config 320 unset Unset a value in the global Skaffold config 321 322 Use "skaffold <command> --help" for more information about a given command. 323 324 325 ``` 326 327 ### skaffold config list 328 329 List all values set in the global Skaffold config 330 331 ``` 332 333 334 Options: 335 -a, --all=false: Show values for all kubecontexts 336 -c, --config='': Path to Skaffold config 337 -k, --kube-context='': Kubectl context to set values against 338 339 Usage: 340 skaffold config list [options] 341 342 Use "skaffold options" for a list of global command-line options (applies to all commands). 343 344 345 ``` 346 Env vars: 347 348 * `SKAFFOLD_ALL` (same as `--all`) 349 * `SKAFFOLD_CONFIG` (same as `--config`) 350 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 351 352 ### skaffold config set 353 354 Set a value in the global Skaffold config 355 356 ``` 357 358 359 Examples: 360 # Mark a registry as insecure 361 skaffold config set insecure-registries <insecure1.io> 362 363 # Globally set the default image repository 364 skaffold config set default-repo <myrepo> 365 366 # Globally set multi-level repo support 367 skaffold config set multi-level-repo true 368 369 # Disable pushing images for a given Kubernetes context 370 skaffold config set --kube-context <mycluster> local-cluster true 371 372 Options: 373 -c, --config='': Path to Skaffold config 374 -g, --global=false: Set value for global config 375 -k, --kube-context='': Kubectl context to set values against 376 377 Usage: 378 skaffold config set [options] 379 380 Use "skaffold options" for a list of global command-line options (applies to all commands). 381 382 383 ``` 384 Env vars: 385 386 * `SKAFFOLD_CONFIG` (same as `--config`) 387 * `SKAFFOLD_GLOBAL` (same as `--global`) 388 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 389 390 ### skaffold config unset 391 392 Unset a value in the global Skaffold config 393 394 ``` 395 396 397 Options: 398 -c, --config='': Path to Skaffold config 399 -g, --global=false: Set value for global config 400 -k, --kube-context='': Kubectl context to set values against 401 402 Usage: 403 skaffold config unset [options] 404 405 Use "skaffold options" for a list of global command-line options (applies to all commands). 406 407 408 ``` 409 Env vars: 410 411 * `SKAFFOLD_CONFIG` (same as `--config`) 412 * `SKAFFOLD_GLOBAL` (same as `--global`) 413 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 414 415 ### skaffold debug 416 417 Run a pipeline in debug mode 418 419 ``` 420 421 422 Examples: 423 # Launch with port-forwarding 424 skaffold debug --port-forward 425 426 Options: 427 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 428 --auto=false: Run with an auto-generated skaffold configuration. This will create a temporary `skaffold.yaml` file and kubernetes manifests necessary to run the application 429 --auto-build=false: When set to false, builds wait for API request instead of running automatically 430 --auto-create-config=true: If true, skaffold will try to create a config for the user's run if it doesn't find one 431 --auto-deploy=false: When set to false, deploys wait for API request instead of running automatically 432 --auto-sync=false: When set to false, syncs wait for API request instead of running automatically 433 --build-concurrency=-1: Number of concurrently running builds. Set to 0 to run all builds in parallel. Doesn't violate build order among dependencies. 434 --cache-artifacts=true: Set to false to disable default caching of artifacts 435 --cache-file='': Specify the location of the cache file (default $HOME/.skaffold/cache) 436 --check-cluster-node-platforms=true: When set to true, images are built for the target platforms matching the active kubernetes cluster node platforms. Enabled by default for `dev`, `debug` and `run` 437 --cleanup=true: Delete deployments after dev or debug mode is interrupted 438 --cloud-run-location='': The GCP Region to deploy Cloud Run services to 439 --cloud-run-project='': The GCP Project ID or Project Number to deploy for Cloud Run 440 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 441 -d, --default-repo='': Default repository value (overrides global config) 442 --detect-minikube=true: Use heuristics to detect a minikube cluster 443 --disable-multi-platform-build=true: When set to true, forces only single platform image builds even when multiple target platforms are specified. Enabled by default for `dev` and `debug` modes, to keep dev-loop fast 444 --enable-platform-node-affinity=true: If true, when deploying to a mixed node cluster, skaffold will add platform (os/arch) node affinity definition to rendered manifests based on the image platforms 445 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 446 --force=false: Recreate Kubernetes resources if necessary for deployment, warning: might cause downtime! 447 --hydration-dir='.kpt-pipeline': The directory to where the (kpt) hydration takes place. Default to a hidden directory .kpt-pipeline. 448 --insecure-registry=[]: Target registries for built images which are not secure 449 --iterative-status-check=true: Run `status-check` iteratively after each deploy step, instead of all-together at the end of all deploys (default). 450 --keep-running-on-failure=false: If true, the session will be suspended instead of ending if any errors occur, the user can fix the errors during the session suspension, the session can be restored and continued by pressing any key. 451 --kube-context='': Deploy to this Kubernetes context 452 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 453 -l, --label=[]: Add custom labels to deployed objects. Set multiple times for multiple labels 454 -m, --module=[]: Filter Skaffold configs to only the provided named modules 455 --mute-logs=[]: mute logs for specified stages in pipeline (build, deploy, status-check, none, all) 456 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 457 --no-prune=false: Skip removing images and containers built by Skaffold 458 --no-prune-children=false: Skip removing layers reused by Skaffold 459 --platform=[]: The platform to target for the build artifacts 460 --port-forward=user,debug: Port-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods) 461 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 462 --profile-auto-activation=true: Set to false to disable profile auto activation 463 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 464 --protocols=[]: Priority sorted order of debugger protocols to support. 465 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 466 --resource-selector-rules-file='': Path to JSON file specifying the deny list of yaml objects for skaffold to NOT transform with 'image' and 'label' field replacements. NOTE: this list is additive to skaffold's default denylist and denylist has priority over allowlist 467 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 468 --rpc-port=: tcp port to expose the Skaffold API over gRPC 469 --skip-tests=false: Whether to skip the tests after building 470 --status-check=: Wait for deployed resources to stabilize 471 --status-check-selectors='': File containing resource selectors for kubernetes resources status check. A sample file looks like the following: 472 { 473 "selectors":[ 474 { 475 "group":"my.domain", 476 "kind":"MyCRD" 477 } 478 ] 479 } 480 The values of "group" and "kind" are regular expressions. 481 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 482 -t, --tag='': The optional custom tag to use for images which overrides the current Tagger configuration 483 --tail=true: Stream logs from deployed objects 484 --tolerate-failures-until-deadline=false: Configures `status-check` to tolerate failures until Skaffold's statusCheckDeadline duration or the deployments progressDeadlineSeconds Otherwise deployment failures skaffold encounters will immediately fail the deployment. Defaults to 'false' 485 --toot=false: Emit a terminal beep after the deploy is complete 486 --trigger='notify': How is change detection triggered? (polling, notify, or manual) 487 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 488 --wait-for-deletions=true: Wait for pending deletions to complete before a deployment 489 --wait-for-deletions-delay=2s: Delay between two checks for pending deletions 490 --wait-for-deletions-max=1m0s: Max duration to wait for pending deletions 491 -w, --watch-image=[]: Choose which artifacts to watch. Artifacts with image names that contain the expression will be watched only. Default is to watch sources for all artifacts 492 -i, --watch-poll-interval=1000: Interval (in ms) between two checks for file changes 493 494 Usage: 495 skaffold debug [options] 496 497 Use "skaffold options" for a list of global command-line options (applies to all commands). 498 499 500 ``` 501 Env vars: 502 503 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 504 * `SKAFFOLD_AUTO` (same as `--auto`) 505 * `SKAFFOLD_AUTO_BUILD` (same as `--auto-build`) 506 * `SKAFFOLD_AUTO_CREATE_CONFIG` (same as `--auto-create-config`) 507 * `SKAFFOLD_AUTO_DEPLOY` (same as `--auto-deploy`) 508 * `SKAFFOLD_AUTO_SYNC` (same as `--auto-sync`) 509 * `SKAFFOLD_BUILD_CONCURRENCY` (same as `--build-concurrency`) 510 * `SKAFFOLD_CACHE_ARTIFACTS` (same as `--cache-artifacts`) 511 * `SKAFFOLD_CACHE_FILE` (same as `--cache-file`) 512 * `SKAFFOLD_CHECK_CLUSTER_NODE_PLATFORMS` (same as `--check-cluster-node-platforms`) 513 * `SKAFFOLD_CLEANUP` (same as `--cleanup`) 514 * `SKAFFOLD_CLOUD_RUN_LOCATION` (same as `--cloud-run-location`) 515 * `SKAFFOLD_CLOUD_RUN_PROJECT` (same as `--cloud-run-project`) 516 * `SKAFFOLD_CONFIG` (same as `--config`) 517 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 518 * `SKAFFOLD_DETECT_MINIKUBE` (same as `--detect-minikube`) 519 * `SKAFFOLD_DISABLE_MULTI_PLATFORM_BUILD` (same as `--disable-multi-platform-build`) 520 * `SKAFFOLD_ENABLE_PLATFORM_NODE_AFFINITY` (same as `--enable-platform-node-affinity`) 521 * `SKAFFOLD_FILENAME` (same as `--filename`) 522 * `SKAFFOLD_FORCE` (same as `--force`) 523 * `SKAFFOLD_HYDRATION_DIR` (same as `--hydration-dir`) 524 * `SKAFFOLD_INSECURE_REGISTRY` (same as `--insecure-registry`) 525 * `SKAFFOLD_ITERATIVE_STATUS_CHECK` (same as `--iterative-status-check`) 526 * `SKAFFOLD_KEEP_RUNNING_ON_FAILURE` (same as `--keep-running-on-failure`) 527 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 528 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 529 * `SKAFFOLD_LABEL` (same as `--label`) 530 * `SKAFFOLD_MODULE` (same as `--module`) 531 * `SKAFFOLD_MUTE_LOGS` (same as `--mute-logs`) 532 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 533 * `SKAFFOLD_NO_PRUNE` (same as `--no-prune`) 534 * `SKAFFOLD_NO_PRUNE_CHILDREN` (same as `--no-prune-children`) 535 * `SKAFFOLD_PLATFORM` (same as `--platform`) 536 * `SKAFFOLD_PORT_FORWARD` (same as `--port-forward`) 537 * `SKAFFOLD_PROFILE` (same as `--profile`) 538 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 539 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 540 * `SKAFFOLD_PROTOCOLS` (same as `--protocols`) 541 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 542 * `SKAFFOLD_RESOURCE_SELECTOR_RULES_FILE` (same as `--resource-selector-rules-file`) 543 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 544 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 545 * `SKAFFOLD_SKIP_TESTS` (same as `--skip-tests`) 546 * `SKAFFOLD_STATUS_CHECK` (same as `--status-check`) 547 * `SKAFFOLD_STATUS_CHECK_SELECTORS` (same as `--status-check-selectors`) 548 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 549 * `SKAFFOLD_TAG` (same as `--tag`) 550 * `SKAFFOLD_TAIL` (same as `--tail`) 551 * `SKAFFOLD_TOLERATE_FAILURES_UNTIL_DEADLINE` (same as `--tolerate-failures-until-deadline`) 552 * `SKAFFOLD_TOOT` (same as `--toot`) 553 * `SKAFFOLD_TRIGGER` (same as `--trigger`) 554 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 555 * `SKAFFOLD_WAIT_FOR_DELETIONS` (same as `--wait-for-deletions`) 556 * `SKAFFOLD_WAIT_FOR_DELETIONS_DELAY` (same as `--wait-for-deletions-delay`) 557 * `SKAFFOLD_WAIT_FOR_DELETIONS_MAX` (same as `--wait-for-deletions-max`) 558 * `SKAFFOLD_WATCH_IMAGE` (same as `--watch-image`) 559 * `SKAFFOLD_WATCH_POLL_INTERVAL` (same as `--watch-poll-interval`) 560 561 ### skaffold delete 562 563 Delete any resources deployed by Skaffold 564 565 ``` 566 567 568 Examples: 569 # Print the resources to be deleted 570 skaffold delete --dry-run 571 572 Options: 573 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 574 --cloud-run-location='': The GCP Region to deploy Cloud Run services to 575 --cloud-run-project='': The GCP Project ID or Project Number to deploy for Cloud Run 576 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 577 -d, --default-repo='': Default repository value (overrides global config) 578 --detect-minikube=true: Use heuristics to detect a minikube cluster 579 --dry-run=false: Don't delete resources, just print them. 580 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 581 --kube-context='': Deploy to this Kubernetes context 582 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 583 -m, --module=[]: Filter Skaffold configs to only the provided named modules 584 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 585 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 586 --profile-auto-activation=true: Set to false to disable profile auto activation 587 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 588 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 589 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 590 591 Usage: 592 skaffold delete [options] 593 594 Use "skaffold options" for a list of global command-line options (applies to all commands). 595 596 597 ``` 598 Env vars: 599 600 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 601 * `SKAFFOLD_CLOUD_RUN_LOCATION` (same as `--cloud-run-location`) 602 * `SKAFFOLD_CLOUD_RUN_PROJECT` (same as `--cloud-run-project`) 603 * `SKAFFOLD_CONFIG` (same as `--config`) 604 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 605 * `SKAFFOLD_DETECT_MINIKUBE` (same as `--detect-minikube`) 606 * `SKAFFOLD_DRY_RUN` (same as `--dry-run`) 607 * `SKAFFOLD_FILENAME` (same as `--filename`) 608 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 609 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 610 * `SKAFFOLD_MODULE` (same as `--module`) 611 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 612 * `SKAFFOLD_PROFILE` (same as `--profile`) 613 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 614 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 615 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 616 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 617 618 ### skaffold deploy 619 620 Deploy pre-built artifacts 621 622 ``` 623 624 625 Examples: 626 # Build the artifacts and collect the tags into a file 627 skaffold build --file-output=tags.json 628 629 # Deploy those tags 630 skaffold deploy --build-artifacts=tags.json 631 632 # Build the artifacts and then deploy them 633 skaffold build -q | skaffold deploy --build-artifacts - 634 635 Options: 636 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 637 -a, --build-artifacts=: File containing pre-built images to use instead of rebuilding artifacts. A sample file looks like the following: 638 { 639 "builds":[ 640 { 641 "imageName":"registry/image1", 642 "tag":"registry/image1:tag" 643 },{ 644 "imageName":"registry/image2", 645 "tag":"registry/image2:tag" 646 }] 647 } 648 The build result from a previous 'skaffold build --file-output' run can be used here 649 --build-concurrency=-1: Number of concurrently running builds. Set to 0 to run all builds in parallel. Doesn't violate build order among dependencies. 650 --cloud-run-location='': The GCP Region to deploy Cloud Run services to 651 --cloud-run-project='': The GCP Project ID or Project Number to deploy for Cloud Run 652 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 653 -d, --default-repo='': Default repository value (overrides global config) 654 --detect-minikube=true: Use heuristics to detect a minikube cluster 655 --enable-platform-node-affinity=false: If true, when deploying to a mixed node cluster, skaffold will add platform (os/arch) node affinity definition to rendered manifests based on the image platforms 656 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 657 --force=false: Recreate Kubernetes resources if necessary for deployment, warning: might cause downtime! 658 --hydration-dir='.kpt-pipeline': The directory to where the (kpt) hydration takes place. Default to a hidden directory .kpt-pipeline. 659 -i, --images=: A list of pre-built images to deploy, either tagged images or NAME=TAG pairs 660 --iterative-status-check=true: Run `status-check` iteratively after each deploy step, instead of all-together at the end of all deploys (default). 661 --kube-context='': Deploy to this Kubernetes context 662 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 663 -l, --label=[]: Add custom labels to deployed objects. Set multiple times for multiple labels 664 --load-images=false: If true, skaffold will force load the container images into the local cluster. 665 -m, --module=[]: Filter Skaffold configs to only the provided named modules 666 --mute-logs=[]: mute logs for specified stages in pipeline (build, deploy, status-check, none, all) 667 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 668 --port-forward=off: Port-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods) 669 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 670 --profile-auto-activation=true: Set to false to disable profile auto activation 671 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 672 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 673 --resource-selector-rules-file='': Path to JSON file specifying the deny list of yaml objects for skaffold to NOT transform with 'image' and 'label' field replacements. NOTE: this list is additive to skaffold's default denylist and denylist has priority over allowlist 674 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 675 --rpc-port=: tcp port to expose the Skaffold API over gRPC 676 --status-check=: Wait for deployed resources to stabilize 677 --status-check-selectors='': File containing resource selectors for kubernetes resources status check. A sample file looks like the following: 678 { 679 "selectors":[ 680 { 681 "group":"my.domain", 682 "kind":"MyCRD" 683 } 684 ] 685 } 686 The values of "group" and "kind" are regular expressions. 687 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 688 -t, --tag='': The optional custom tag to use for images which overrides the current Tagger configuration 689 --tail=false: Stream logs from deployed objects 690 --tolerate-failures-until-deadline=false: Configures `status-check` to tolerate failures until Skaffold's statusCheckDeadline duration or the deployments progressDeadlineSeconds Otherwise deployment failures skaffold encounters will immediately fail the deployment. Defaults to 'false' 691 --toot=false: Emit a terminal beep after the deploy is complete 692 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 693 --wait-for-deletions=true: Wait for pending deletions to complete before a deployment 694 --wait-for-deletions-delay=2s: Delay between two checks for pending deletions 695 --wait-for-deletions-max=1m0s: Max duration to wait for pending deletions 696 697 Usage: 698 skaffold deploy [options] 699 700 Use "skaffold options" for a list of global command-line options (applies to all commands). 701 702 703 ``` 704 Env vars: 705 706 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 707 * `SKAFFOLD_BUILD_ARTIFACTS` (same as `--build-artifacts`) 708 * `SKAFFOLD_BUILD_CONCURRENCY` (same as `--build-concurrency`) 709 * `SKAFFOLD_CLOUD_RUN_LOCATION` (same as `--cloud-run-location`) 710 * `SKAFFOLD_CLOUD_RUN_PROJECT` (same as `--cloud-run-project`) 711 * `SKAFFOLD_CONFIG` (same as `--config`) 712 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 713 * `SKAFFOLD_DETECT_MINIKUBE` (same as `--detect-minikube`) 714 * `SKAFFOLD_ENABLE_PLATFORM_NODE_AFFINITY` (same as `--enable-platform-node-affinity`) 715 * `SKAFFOLD_FILENAME` (same as `--filename`) 716 * `SKAFFOLD_FORCE` (same as `--force`) 717 * `SKAFFOLD_HYDRATION_DIR` (same as `--hydration-dir`) 718 * `SKAFFOLD_IMAGES` (same as `--images`) 719 * `SKAFFOLD_ITERATIVE_STATUS_CHECK` (same as `--iterative-status-check`) 720 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 721 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 722 * `SKAFFOLD_LABEL` (same as `--label`) 723 * `SKAFFOLD_LOAD_IMAGES` (same as `--load-images`) 724 * `SKAFFOLD_MODULE` (same as `--module`) 725 * `SKAFFOLD_MUTE_LOGS` (same as `--mute-logs`) 726 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 727 * `SKAFFOLD_PORT_FORWARD` (same as `--port-forward`) 728 * `SKAFFOLD_PROFILE` (same as `--profile`) 729 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 730 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 731 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 732 * `SKAFFOLD_RESOURCE_SELECTOR_RULES_FILE` (same as `--resource-selector-rules-file`) 733 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 734 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 735 * `SKAFFOLD_STATUS_CHECK` (same as `--status-check`) 736 * `SKAFFOLD_STATUS_CHECK_SELECTORS` (same as `--status-check-selectors`) 737 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 738 * `SKAFFOLD_TAG` (same as `--tag`) 739 * `SKAFFOLD_TAIL` (same as `--tail`) 740 * `SKAFFOLD_TOLERATE_FAILURES_UNTIL_DEADLINE` (same as `--tolerate-failures-until-deadline`) 741 * `SKAFFOLD_TOOT` (same as `--toot`) 742 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 743 * `SKAFFOLD_WAIT_FOR_DELETIONS` (same as `--wait-for-deletions`) 744 * `SKAFFOLD_WAIT_FOR_DELETIONS_DELAY` (same as `--wait-for-deletions-delay`) 745 * `SKAFFOLD_WAIT_FOR_DELETIONS_MAX` (same as `--wait-for-deletions-max`) 746 747 ### skaffold dev 748 749 Run a pipeline in development mode 750 751 ``` 752 753 754 Options: 755 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 756 --auto=false: Run with an auto-generated skaffold configuration. This will create a temporary `skaffold.yaml` file and kubernetes manifests necessary to run the application 757 --auto-build=true: When set to false, builds wait for API request instead of running automatically 758 --auto-create-config=true: If true, skaffold will try to create a config for the user's run if it doesn't find one 759 --auto-deploy=true: When set to false, deploys wait for API request instead of running automatically 760 --auto-sync=true: When set to false, syncs wait for API request instead of running automatically 761 --build-concurrency=-1: Number of concurrently running builds. Set to 0 to run all builds in parallel. Doesn't violate build order among dependencies. 762 --cache-artifacts=true: Set to false to disable default caching of artifacts 763 --cache-file='': Specify the location of the cache file (default $HOME/.skaffold/cache) 764 --check-cluster-node-platforms=true: When set to true, images are built for the target platforms matching the active kubernetes cluster node platforms. Enabled by default for `dev`, `debug` and `run` 765 --cleanup=true: Delete deployments after dev or debug mode is interrupted 766 --cloud-run-location='': The GCP Region to deploy Cloud Run services to 767 --cloud-run-project='': The GCP Project ID or Project Number to deploy for Cloud Run 768 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 769 -d, --default-repo='': Default repository value (overrides global config) 770 --detect-minikube=true: Use heuristics to detect a minikube cluster 771 --digest-source='': Set to 'remote' to skip builds and resolve the digest of images by tag from the remote registry. Set to 'local' to build images locally and use digests from built images. Set to 'tag' to use tags directly from the build. Set to 'none' to use tags directly from the Kubernetes manifests. If unspecified, defaults to 'remote' for remote clusters, and 'tag' for local clusters like kind or minikube. 772 --disable-multi-platform-build=true: When set to true, forces only single platform image builds even when multiple target platforms are specified. Enabled by default for `dev` and `debug` modes, to keep dev-loop fast 773 --enable-platform-node-affinity=true: If true, when deploying to a mixed node cluster, skaffold will add platform (os/arch) node affinity definition to rendered manifests based on the image platforms 774 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 775 --force=false: Recreate Kubernetes resources if necessary for deployment, warning: might cause downtime! 776 --hydration-dir='.kpt-pipeline': The directory to where the (kpt) hydration takes place. Default to a hidden directory .kpt-pipeline. 777 --insecure-registry=[]: Target registries for built images which are not secure 778 --iterative-status-check=true: Run `status-check` iteratively after each deploy step, instead of all-together at the end of all deploys (default). 779 --keep-running-on-failure=false: If true, the session will be suspended instead of ending if any errors occur, the user can fix the errors during the session suspension, the session can be restored and continued by pressing any key. 780 --kube-context='': Deploy to this Kubernetes context 781 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 782 -l, --label=[]: Add custom labels to deployed objects. Set multiple times for multiple labels 783 -m, --module=[]: Filter Skaffold configs to only the provided named modules 784 --mute-logs=[]: mute logs for specified stages in pipeline (build, deploy, status-check, none, all) 785 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 786 --no-prune=false: Skip removing images and containers built by Skaffold 787 --no-prune-children=false: Skip removing layers reused by Skaffold 788 --platform=[]: The platform to target for the build artifacts 789 --port-forward=user: Port-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods) 790 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 791 --profile-auto-activation=true: Set to false to disable profile auto activation 792 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 793 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 794 --resource-selector-rules-file='': Path to JSON file specifying the deny list of yaml objects for skaffold to NOT transform with 'image' and 'label' field replacements. NOTE: this list is additive to skaffold's default denylist and denylist has priority over allowlist 795 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 796 --rpc-port=: tcp port to expose the Skaffold API over gRPC 797 --skip-tests=false: Whether to skip the tests after building 798 --status-check=: Wait for deployed resources to stabilize 799 --status-check-selectors='': File containing resource selectors for kubernetes resources status check. A sample file looks like the following: 800 { 801 "selectors":[ 802 { 803 "group":"my.domain", 804 "kind":"MyCRD" 805 } 806 ] 807 } 808 The values of "group" and "kind" are regular expressions. 809 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 810 -t, --tag='': The optional custom tag to use for images which overrides the current Tagger configuration 811 --tail=true: Stream logs from deployed objects 812 --tolerate-failures-until-deadline=false: Configures `status-check` to tolerate failures until Skaffold's statusCheckDeadline duration or the deployments progressDeadlineSeconds Otherwise deployment failures skaffold encounters will immediately fail the deployment. Defaults to 'false' 813 --toot=false: Emit a terminal beep after the deploy is complete 814 --trigger='notify': How is change detection triggered? (polling, notify, or manual) 815 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 816 --wait-for-deletions=true: Wait for pending deletions to complete before a deployment 817 --wait-for-deletions-delay=2s: Delay between two checks for pending deletions 818 --wait-for-deletions-max=1m0s: Max duration to wait for pending deletions 819 -w, --watch-image=[]: Choose which artifacts to watch. Artifacts with image names that contain the expression will be watched only. Default is to watch sources for all artifacts 820 -i, --watch-poll-interval=1000: Interval (in ms) between two checks for file changes 821 822 Usage: 823 skaffold dev [options] 824 825 Use "skaffold options" for a list of global command-line options (applies to all commands). 826 827 828 ``` 829 Env vars: 830 831 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 832 * `SKAFFOLD_AUTO` (same as `--auto`) 833 * `SKAFFOLD_AUTO_BUILD` (same as `--auto-build`) 834 * `SKAFFOLD_AUTO_CREATE_CONFIG` (same as `--auto-create-config`) 835 * `SKAFFOLD_AUTO_DEPLOY` (same as `--auto-deploy`) 836 * `SKAFFOLD_AUTO_SYNC` (same as `--auto-sync`) 837 * `SKAFFOLD_BUILD_CONCURRENCY` (same as `--build-concurrency`) 838 * `SKAFFOLD_CACHE_ARTIFACTS` (same as `--cache-artifacts`) 839 * `SKAFFOLD_CACHE_FILE` (same as `--cache-file`) 840 * `SKAFFOLD_CHECK_CLUSTER_NODE_PLATFORMS` (same as `--check-cluster-node-platforms`) 841 * `SKAFFOLD_CLEANUP` (same as `--cleanup`) 842 * `SKAFFOLD_CLOUD_RUN_LOCATION` (same as `--cloud-run-location`) 843 * `SKAFFOLD_CLOUD_RUN_PROJECT` (same as `--cloud-run-project`) 844 * `SKAFFOLD_CONFIG` (same as `--config`) 845 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 846 * `SKAFFOLD_DETECT_MINIKUBE` (same as `--detect-minikube`) 847 * `SKAFFOLD_DIGEST_SOURCE` (same as `--digest-source`) 848 * `SKAFFOLD_DISABLE_MULTI_PLATFORM_BUILD` (same as `--disable-multi-platform-build`) 849 * `SKAFFOLD_ENABLE_PLATFORM_NODE_AFFINITY` (same as `--enable-platform-node-affinity`) 850 * `SKAFFOLD_FILENAME` (same as `--filename`) 851 * `SKAFFOLD_FORCE` (same as `--force`) 852 * `SKAFFOLD_HYDRATION_DIR` (same as `--hydration-dir`) 853 * `SKAFFOLD_INSECURE_REGISTRY` (same as `--insecure-registry`) 854 * `SKAFFOLD_ITERATIVE_STATUS_CHECK` (same as `--iterative-status-check`) 855 * `SKAFFOLD_KEEP_RUNNING_ON_FAILURE` (same as `--keep-running-on-failure`) 856 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 857 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 858 * `SKAFFOLD_LABEL` (same as `--label`) 859 * `SKAFFOLD_MODULE` (same as `--module`) 860 * `SKAFFOLD_MUTE_LOGS` (same as `--mute-logs`) 861 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 862 * `SKAFFOLD_NO_PRUNE` (same as `--no-prune`) 863 * `SKAFFOLD_NO_PRUNE_CHILDREN` (same as `--no-prune-children`) 864 * `SKAFFOLD_PLATFORM` (same as `--platform`) 865 * `SKAFFOLD_PORT_FORWARD` (same as `--port-forward`) 866 * `SKAFFOLD_PROFILE` (same as `--profile`) 867 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 868 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 869 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 870 * `SKAFFOLD_RESOURCE_SELECTOR_RULES_FILE` (same as `--resource-selector-rules-file`) 871 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 872 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 873 * `SKAFFOLD_SKIP_TESTS` (same as `--skip-tests`) 874 * `SKAFFOLD_STATUS_CHECK` (same as `--status-check`) 875 * `SKAFFOLD_STATUS_CHECK_SELECTORS` (same as `--status-check-selectors`) 876 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 877 * `SKAFFOLD_TAG` (same as `--tag`) 878 * `SKAFFOLD_TAIL` (same as `--tail`) 879 * `SKAFFOLD_TOLERATE_FAILURES_UNTIL_DEADLINE` (same as `--tolerate-failures-until-deadline`) 880 * `SKAFFOLD_TOOT` (same as `--toot`) 881 * `SKAFFOLD_TRIGGER` (same as `--trigger`) 882 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 883 * `SKAFFOLD_WAIT_FOR_DELETIONS` (same as `--wait-for-deletions`) 884 * `SKAFFOLD_WAIT_FOR_DELETIONS_DELAY` (same as `--wait-for-deletions-delay`) 885 * `SKAFFOLD_WAIT_FOR_DELETIONS_MAX` (same as `--wait-for-deletions-max`) 886 * `SKAFFOLD_WATCH_IMAGE` (same as `--watch-image`) 887 * `SKAFFOLD_WATCH_POLL_INTERVAL` (same as `--watch-poll-interval`) 888 889 ### skaffold diagnose 890 891 Run a diagnostic on Skaffold 892 893 ``` 894 895 896 Examples: 897 # Search for configuration issues and print the effective configuration 898 skaffold diagnose 899 900 # Print the effective skaffold.yaml configuration for given profile 901 skaffold diagnose --yaml-only --profile PROFILE 902 903 Options: 904 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 905 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 906 --enable-templating=false: Render supported templated fields with golang template engine 907 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 908 -m, --module=[]: Filter Skaffold configs to only the provided named modules 909 -o, --output='': File to write diagnose result 910 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 911 --profile-auto-activation=true: Set to false to disable profile auto activation 912 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 913 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 914 --sync-remote-cache='missing': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 915 --yaml-only=false: Only prints the effective skaffold.yaml configuration 916 917 Usage: 918 skaffold diagnose [options] 919 920 Use "skaffold options" for a list of global command-line options (applies to all commands). 921 922 923 ``` 924 Env vars: 925 926 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 927 * `SKAFFOLD_CONFIG` (same as `--config`) 928 * `SKAFFOLD_ENABLE_TEMPLATING` (same as `--enable-templating`) 929 * `SKAFFOLD_FILENAME` (same as `--filename`) 930 * `SKAFFOLD_MODULE` (same as `--module`) 931 * `SKAFFOLD_OUTPUT` (same as `--output`) 932 * `SKAFFOLD_PROFILE` (same as `--profile`) 933 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 934 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 935 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 936 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 937 * `SKAFFOLD_YAML_ONLY` (same as `--yaml-only`) 938 939 ### skaffold exec 940 941 Execute a custom action 942 943 ``` 944 945 946 Examples: 947 # Execute a defined action 948 skaffold exec <action-name> 949 950 # Execute a defined action that uses an image built from Skaffold. First, build the images 951 skaffold build --file-output=build.json 952 953 # Then use the built artifacts 954 skaffold exec <action-name> --build-artifacts=build.json 955 956 Options: 957 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 958 -a, --build-artifacts=: File containing pre-built images to use instead of rebuilding artifacts. A sample file looks like the following: 959 { 960 "builds":[ 961 { 962 "imageName":"registry/image1", 963 "tag":"registry/image1:tag" 964 },{ 965 "imageName":"registry/image2", 966 "tag":"registry/image2:tag" 967 }] 968 } 969 The build result from a previous 'skaffold build --file-output' run can be used here 970 -d, --default-repo='': Default repository value (overrides global config) 971 --docker-network='': Name of an existing docker network to use when running the verify tests. If not specified, Skaffold will create a new network to use of the form 'skaffold-network-<uuid>' 972 --env-file='': File containing env var key-value pairs that will be set in all verify container envs 973 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 974 -m, --module=[]: Filter Skaffold configs to only the provided named modules 975 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 976 --port-forward=off: Port-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods) 977 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 978 --profile-auto-activation=true: Set to false to disable profile auto activation 979 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 980 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 981 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 982 --rpc-port=: tcp port to expose the Skaffold API over gRPC 983 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 984 985 Usage: 986 skaffold exec [options] 987 988 Use "skaffold options" for a list of global command-line options (applies to all commands). 989 990 991 ``` 992 Env vars: 993 994 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 995 * `SKAFFOLD_BUILD_ARTIFACTS` (same as `--build-artifacts`) 996 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 997 * `SKAFFOLD_DOCKER_NETWORK` (same as `--docker-network`) 998 * `SKAFFOLD_ENV_FILE` (same as `--env-file`) 999 * `SKAFFOLD_FILENAME` (same as `--filename`) 1000 * `SKAFFOLD_MODULE` (same as `--module`) 1001 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 1002 * `SKAFFOLD_PORT_FORWARD` (same as `--port-forward`) 1003 * `SKAFFOLD_PROFILE` (same as `--profile`) 1004 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 1005 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 1006 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1007 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 1008 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 1009 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1010 1011 ### skaffold fix 1012 1013 Update old configuration to a newer schema version 1014 1015 ``` 1016 1017 1018 Examples: 1019 # Update "skaffold.yaml" in the current folder to the latest version 1020 skaffold fix 1021 1022 # Update "skaffold.yaml" in the current folder to version "skaffold/v1" 1023 skaffold fix --version skaffold/v1 1024 1025 # Update "skaffold.yaml" in the current folder in-place 1026 skaffold fix --overwrite 1027 1028 # Update "skaffold.yaml" and write the output to a new file 1029 skaffold fix --output skaffold.new.yaml 1030 1031 Options: 1032 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 1033 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 1034 -m, --module=[]: Filter Skaffold configs to only the provided named modules 1035 -o, --output='': File to write the changed config (instead of standard output) 1036 --overwrite=false: Overwrite original config with fixed config 1037 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 1038 --sync-remote-cache='missing': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 1039 --version='skaffold/v4beta11': Target schema version to upgrade to 1040 1041 Usage: 1042 skaffold fix [options] 1043 1044 Use "skaffold options" for a list of global command-line options (applies to all commands). 1045 1046 1047 ``` 1048 Env vars: 1049 1050 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 1051 * `SKAFFOLD_FILENAME` (same as `--filename`) 1052 * `SKAFFOLD_MODULE` (same as `--module`) 1053 * `SKAFFOLD_OUTPUT` (same as `--output`) 1054 * `SKAFFOLD_OVERWRITE` (same as `--overwrite`) 1055 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1056 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1057 * `SKAFFOLD_VERSION` (same as `--version`) 1058 1059 ### skaffold init 1060 1061 Generate configuration for deploying an application 1062 1063 ``` 1064 1065 1066 Options: 1067 --analyze=false: Print all discoverable Dockerfiles and images in JSON format to stdout 1068 -a, --artifact=[]: '='-delimited Dockerfile/image pair, or JSON string, to generate build artifact 1069 (example: --artifact='{"builder":"Docker","payload":{"path":"/web/Dockerfile.web"},"image":"gcr.io/web-project/image"}') 1070 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 1071 --compose-file='': Initialize from a docker-compose file 1072 --default-kustomization='': Default Kustomization overlay path (others will be added as profiles) 1073 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 1074 --force=false: Force the generation of the Skaffold config 1075 --generate-manifests=false: Allows skaffold to try and generate basic kubernetes resources to get your project started 1076 -k, --kubernetes-manifest=[]: A path or a glob pattern to kubernetes manifests (can be non-existent) to be added to the kubectl deployer (overrides detection of kubernetes manifests). Repeat the flag for multiple entries. E.g.: skaffold init -k pod.yaml -k k8s/*.yml 1077 -m, --module=[]: Filter Skaffold configs to only the provided named modules 1078 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 1079 --skip-build=false: Skip generating build artifacts in Skaffold config 1080 --skip-unreachable-dirs=false: Instead of erroring, it will skip the directories that cannot be accessed due to permissions 1081 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 1082 1083 Usage: 1084 skaffold init [options] 1085 1086 Use "skaffold options" for a list of global command-line options (applies to all commands). 1087 1088 1089 ``` 1090 Env vars: 1091 1092 * `SKAFFOLD_ANALYZE` (same as `--analyze`) 1093 * `SKAFFOLD_ARTIFACT` (same as `--artifact`) 1094 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 1095 * `SKAFFOLD_COMPOSE_FILE` (same as `--compose-file`) 1096 * `SKAFFOLD_DEFAULT_KUSTOMIZATION` (same as `--default-kustomization`) 1097 * `SKAFFOLD_FILENAME` (same as `--filename`) 1098 * `SKAFFOLD_FORCE` (same as `--force`) 1099 * `SKAFFOLD_GENERATE_MANIFESTS` (same as `--generate-manifests`) 1100 * `SKAFFOLD_KUBERNETES_MANIFEST` (same as `--kubernetes-manifest`) 1101 * `SKAFFOLD_MODULE` (same as `--module`) 1102 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1103 * `SKAFFOLD_SKIP_BUILD` (same as `--skip-build`) 1104 * `SKAFFOLD_SKIP_UNREACHABLE_DIRS` (same as `--skip-unreachable-dirs`) 1105 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1106 1107 ### skaffold options 1108 1109 1110 1111 ``` 1112 The following options can be passed to any command: 1113 1114 --color=34: Specify the default output color in ANSI escape codes 1115 --interactive=true: Allow user prompts for more information 1116 --timestamps=false: Print timestamps in logs 1117 --update-check=true: Check for a more recent version of Skaffold 1118 -v, --verbosity='warning': Log level: one of [panic fatal error warning info debug trace] 1119 1120 1121 ``` 1122 1123 ### skaffold render 1124 1125 Generate rendered Kubernetes manifests 1126 1127 ``` 1128 1129 1130 Examples: 1131 # Hydrate Kubernetes manifests without building the images, using digest resolved from tag in remote registry 1132 skaffold render --digest-source=remote 1133 1134 Options: 1135 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 1136 -a, --build-artifacts=: File containing pre-built images to use instead of rebuilding artifacts. A sample file looks like the following: 1137 { 1138 "builds":[ 1139 { 1140 "imageName":"registry/image1", 1141 "tag":"registry/image1:tag" 1142 },{ 1143 "imageName":"registry/image2", 1144 "tag":"registry/image2:tag" 1145 }] 1146 } 1147 The build result from a previous 'skaffold build --file-output' run can be used here 1148 --cache-artifacts=true: Set to false to disable default caching of artifacts 1149 -d, --default-repo='': Default repository value (overrides global config) 1150 --digest-source='': Set to 'remote' to skip builds and resolve the digest of images by tag from the remote registry. Set to 'local' to build images locally and use digests from built images. Set to 'tag' to use tags directly from the build. Set to 'none' to use tags directly from the Kubernetes manifests. If unspecified, defaults to 'remote' for remote clusters, and 'tag' for local clusters like kind or minikube. 1151 --enable-platform-node-affinity=false: If true, when deploying to a mixed node cluster, skaffold will add platform (os/arch) node affinity definition to rendered manifests based on the image platforms 1152 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 1153 --hydration-dir='.kpt-pipeline': The directory to where the (kpt) hydration takes place. Default to a hidden directory .kpt-pipeline. 1154 -i, --images=: A list of pre-built images to deploy, either tagged images or NAME=TAG pairs 1155 -l, --label=[]: Add custom labels to deployed objects. Set multiple times for multiple labels 1156 --loud=false: Show the build logs and output 1157 -m, --module=[]: Filter Skaffold configs to only the provided named modules 1158 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 1159 --offline=false: Do not connect to Kubernetes API server for manifest creation and validation. This is helpful when no Kubernetes cluster is available (e.g. GitOps model). No metadata.namespace attribute is injected in this case - the manifest content does not get changed. 1160 -o, --output='': File to write rendered manifests to 1161 --platform=[]: The platform to target for the build artifacts 1162 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 1163 --profile-auto-activation=true: Set to false to disable profile auto activation 1164 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 1165 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 1166 --resource-selector-rules-file='': Path to JSON file specifying the deny list of yaml objects for skaffold to NOT transform with 'image' and 'label' field replacements. NOTE: this list is additive to skaffold's default denylist and denylist has priority over allowlist 1167 --set=[]: overrides templated manifest fields by provided key-value pairs 1168 --set-value-file='': overrides templated manifest fields by a file containing key-value pairs in .env file format 1169 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 1170 -t, --tag='': The optional custom tag to use for images which overrides the current Tagger configuration 1171 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 1172 1173 Usage: 1174 skaffold render [options] 1175 1176 Use "skaffold options" for a list of global command-line options (applies to all commands). 1177 1178 1179 ``` 1180 Env vars: 1181 1182 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 1183 * `SKAFFOLD_BUILD_ARTIFACTS` (same as `--build-artifacts`) 1184 * `SKAFFOLD_CACHE_ARTIFACTS` (same as `--cache-artifacts`) 1185 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 1186 * `SKAFFOLD_DIGEST_SOURCE` (same as `--digest-source`) 1187 * `SKAFFOLD_ENABLE_PLATFORM_NODE_AFFINITY` (same as `--enable-platform-node-affinity`) 1188 * `SKAFFOLD_FILENAME` (same as `--filename`) 1189 * `SKAFFOLD_HYDRATION_DIR` (same as `--hydration-dir`) 1190 * `SKAFFOLD_IMAGES` (same as `--images`) 1191 * `SKAFFOLD_LABEL` (same as `--label`) 1192 * `SKAFFOLD_LOUD` (same as `--loud`) 1193 * `SKAFFOLD_MODULE` (same as `--module`) 1194 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 1195 * `SKAFFOLD_OFFLINE` (same as `--offline`) 1196 * `SKAFFOLD_OUTPUT` (same as `--output`) 1197 * `SKAFFOLD_PLATFORM` (same as `--platform`) 1198 * `SKAFFOLD_PROFILE` (same as `--profile`) 1199 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 1200 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 1201 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1202 * `SKAFFOLD_RESOURCE_SELECTOR_RULES_FILE` (same as `--resource-selector-rules-file`) 1203 * `SKAFFOLD_SET` (same as `--set`) 1204 * `SKAFFOLD_SET_VALUE_FILE` (same as `--set-value-file`) 1205 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1206 * `SKAFFOLD_TAG` (same as `--tag`) 1207 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 1208 1209 ### skaffold run 1210 1211 Run a pipeline 1212 1213 ``` 1214 1215 1216 Examples: 1217 # Build, test, deploy and tail the logs 1218 skaffold run --tail 1219 1220 # Run with a given profile 1221 skaffold run -p <profile> 1222 1223 Options: 1224 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 1225 --auto=false: Run with an auto-generated skaffold configuration. This will create a temporary `skaffold.yaml` file and kubernetes manifests necessary to run the application 1226 --auto-create-config=true: If true, skaffold will try to create a config for the user's run if it doesn't find one 1227 --build-concurrency=-1: Number of concurrently running builds. Set to 0 to run all builds in parallel. Doesn't violate build order among dependencies. 1228 -b, --build-image=[]: Only build artifacts with image names that contain the given substring. Default is to build sources for all artifacts 1229 --cache-artifacts=true: Set to false to disable default caching of artifacts 1230 --cache-file='': Specify the location of the cache file (default $HOME/.skaffold/cache) 1231 --check-cluster-node-platforms=true: When set to true, images are built for the target platforms matching the active kubernetes cluster node platforms. Enabled by default for `dev`, `debug` and `run` 1232 --cleanup=true: Delete deployments after dev or debug mode is interrupted 1233 --cloud-run-location='': The GCP Region to deploy Cloud Run services to 1234 --cloud-run-project='': The GCP Project ID or Project Number to deploy for Cloud Run 1235 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 1236 -d, --default-repo='': Default repository value (overrides global config) 1237 --detect-minikube=true: Use heuristics to detect a minikube cluster 1238 --digest-source='': Set to 'remote' to skip builds and resolve the digest of images by tag from the remote registry. Set to 'local' to build images locally and use digests from built images. Set to 'tag' to use tags directly from the build. Set to 'none' to use tags directly from the Kubernetes manifests. If unspecified, defaults to 'remote' for remote clusters, and 'tag' for local clusters like kind or minikube. 1239 --disable-multi-platform-build=false: When set to true, forces only single platform image builds even when multiple target platforms are specified. Enabled by default for `dev` and `debug` modes, to keep dev-loop fast 1240 --enable-platform-node-affinity=true: If true, when deploying to a mixed node cluster, skaffold will add platform (os/arch) node affinity definition to rendered manifests based on the image platforms 1241 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 1242 --force=false: Recreate Kubernetes resources if necessary for deployment, warning: might cause downtime! 1243 --hydration-dir='.kpt-pipeline': The directory to where the (kpt) hydration takes place. Default to a hidden directory .kpt-pipeline. 1244 --insecure-registry=[]: Target registries for built images which are not secure 1245 --iterative-status-check=true: Run `status-check` iteratively after each deploy step, instead of all-together at the end of all deploys (default). 1246 --kube-context='': Deploy to this Kubernetes context 1247 --kubeconfig='': Path to the kubeconfig file to use for CLI requests. 1248 -l, --label=[]: Add custom labels to deployed objects. Set multiple times for multiple labels 1249 -m, --module=[]: Filter Skaffold configs to only the provided named modules 1250 --mute-logs=[]: mute logs for specified stages in pipeline (build, deploy, status-check, none, all) 1251 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 1252 --no-prune=false: Skip removing images and containers built by Skaffold 1253 --no-prune-children=false: Skip removing layers reused by Skaffold 1254 --platform=[]: The platform to target for the build artifacts 1255 --port-forward=off: Port-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods) 1256 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 1257 --profile-auto-activation=true: Set to false to disable profile auto activation 1258 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 1259 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 1260 --resource-selector-rules-file='': Path to JSON file specifying the deny list of yaml objects for skaffold to NOT transform with 'image' and 'label' field replacements. NOTE: this list is additive to skaffold's default denylist and denylist has priority over allowlist 1261 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 1262 --rpc-port=: tcp port to expose the Skaffold API over gRPC 1263 --skip-tests=false: Whether to skip the tests after building 1264 --status-check=: Wait for deployed resources to stabilize 1265 --status-check-selectors='': File containing resource selectors for kubernetes resources status check. A sample file looks like the following: 1266 { 1267 "selectors":[ 1268 { 1269 "group":"my.domain", 1270 "kind":"MyCRD" 1271 } 1272 ] 1273 } 1274 The values of "group" and "kind" are regular expressions. 1275 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 1276 -t, --tag='': The optional custom tag to use for images which overrides the current Tagger configuration 1277 --tail=false: Stream logs from deployed objects 1278 --tolerate-failures-until-deadline=false: Configures `status-check` to tolerate failures until Skaffold's statusCheckDeadline duration or the deployments progressDeadlineSeconds Otherwise deployment failures skaffold encounters will immediately fail the deployment. Defaults to 'false' 1279 --toot=false: Emit a terminal beep after the deploy is complete 1280 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 1281 --wait-for-deletions=true: Wait for pending deletions to complete before a deployment 1282 --wait-for-deletions-delay=2s: Delay between two checks for pending deletions 1283 --wait-for-deletions-max=1m0s: Max duration to wait for pending deletions 1284 1285 Usage: 1286 skaffold run [options] 1287 1288 Use "skaffold options" for a list of global command-line options (applies to all commands). 1289 1290 1291 ``` 1292 Env vars: 1293 1294 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 1295 * `SKAFFOLD_AUTO` (same as `--auto`) 1296 * `SKAFFOLD_AUTO_CREATE_CONFIG` (same as `--auto-create-config`) 1297 * `SKAFFOLD_BUILD_CONCURRENCY` (same as `--build-concurrency`) 1298 * `SKAFFOLD_BUILD_IMAGE` (same as `--build-image`) 1299 * `SKAFFOLD_CACHE_ARTIFACTS` (same as `--cache-artifacts`) 1300 * `SKAFFOLD_CACHE_FILE` (same as `--cache-file`) 1301 * `SKAFFOLD_CHECK_CLUSTER_NODE_PLATFORMS` (same as `--check-cluster-node-platforms`) 1302 * `SKAFFOLD_CLEANUP` (same as `--cleanup`) 1303 * `SKAFFOLD_CLOUD_RUN_LOCATION` (same as `--cloud-run-location`) 1304 * `SKAFFOLD_CLOUD_RUN_PROJECT` (same as `--cloud-run-project`) 1305 * `SKAFFOLD_CONFIG` (same as `--config`) 1306 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 1307 * `SKAFFOLD_DETECT_MINIKUBE` (same as `--detect-minikube`) 1308 * `SKAFFOLD_DIGEST_SOURCE` (same as `--digest-source`) 1309 * `SKAFFOLD_DISABLE_MULTI_PLATFORM_BUILD` (same as `--disable-multi-platform-build`) 1310 * `SKAFFOLD_ENABLE_PLATFORM_NODE_AFFINITY` (same as `--enable-platform-node-affinity`) 1311 * `SKAFFOLD_FILENAME` (same as `--filename`) 1312 * `SKAFFOLD_FORCE` (same as `--force`) 1313 * `SKAFFOLD_HYDRATION_DIR` (same as `--hydration-dir`) 1314 * `SKAFFOLD_INSECURE_REGISTRY` (same as `--insecure-registry`) 1315 * `SKAFFOLD_ITERATIVE_STATUS_CHECK` (same as `--iterative-status-check`) 1316 * `SKAFFOLD_KUBE_CONTEXT` (same as `--kube-context`) 1317 * `SKAFFOLD_KUBECONFIG` (same as `--kubeconfig`) 1318 * `SKAFFOLD_LABEL` (same as `--label`) 1319 * `SKAFFOLD_MODULE` (same as `--module`) 1320 * `SKAFFOLD_MUTE_LOGS` (same as `--mute-logs`) 1321 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 1322 * `SKAFFOLD_NO_PRUNE` (same as `--no-prune`) 1323 * `SKAFFOLD_NO_PRUNE_CHILDREN` (same as `--no-prune-children`) 1324 * `SKAFFOLD_PLATFORM` (same as `--platform`) 1325 * `SKAFFOLD_PORT_FORWARD` (same as `--port-forward`) 1326 * `SKAFFOLD_PROFILE` (same as `--profile`) 1327 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 1328 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 1329 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1330 * `SKAFFOLD_RESOURCE_SELECTOR_RULES_FILE` (same as `--resource-selector-rules-file`) 1331 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 1332 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 1333 * `SKAFFOLD_SKIP_TESTS` (same as `--skip-tests`) 1334 * `SKAFFOLD_STATUS_CHECK` (same as `--status-check`) 1335 * `SKAFFOLD_STATUS_CHECK_SELECTORS` (same as `--status-check-selectors`) 1336 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1337 * `SKAFFOLD_TAG` (same as `--tag`) 1338 * `SKAFFOLD_TAIL` (same as `--tail`) 1339 * `SKAFFOLD_TOLERATE_FAILURES_UNTIL_DEADLINE` (same as `--tolerate-failures-until-deadline`) 1340 * `SKAFFOLD_TOOT` (same as `--toot`) 1341 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 1342 * `SKAFFOLD_WAIT_FOR_DELETIONS` (same as `--wait-for-deletions`) 1343 * `SKAFFOLD_WAIT_FOR_DELETIONS_DELAY` (same as `--wait-for-deletions-delay`) 1344 * `SKAFFOLD_WAIT_FOR_DELETIONS_MAX` (same as `--wait-for-deletions-max`) 1345 1346 ### skaffold schema 1347 1348 List JSON schemas used to validate skaffold.yaml configuration 1349 1350 ``` 1351 1352 1353 Available Commands: 1354 get Print a given skaffold.yaml's json schema 1355 1356 Use "skaffold <command> --help" for more information about a given command. 1357 1358 1359 ``` 1360 1361 ### skaffold schema get 1362 1363 Print a given skaffold.yaml's json schema 1364 1365 ``` 1366 1367 1368 Examples: 1369 # Print the schema in version `skaffold/v1` 1370 skaffold schema get skaffold/v1 1371 1372 Usage: 1373 skaffold schema get [options] 1374 1375 Use "skaffold options" for a list of global command-line options (applies to all commands). 1376 1377 1378 ``` 1379 1380 ### skaffold survey 1381 1382 Opens a web browser to fill out the Skaffold survey 1383 1384 ``` 1385 1386 1387 Options: 1388 --id='hats': Survey ID for survey command to open. 1389 1390 Usage: 1391 skaffold survey [options] 1392 1393 Use "skaffold options" for a list of global command-line options (applies to all commands). 1394 1395 1396 ``` 1397 Env vars: 1398 1399 * `SKAFFOLD_ID` (same as `--id`) 1400 1401 ### skaffold test 1402 1403 Run tests against your built application images 1404 1405 ``` 1406 1407 1408 Examples: 1409 # Build the artifacts and collect the tags into a file 1410 skaffold build --file-output=tags.json 1411 1412 # Run test against images previously built by Skaffold into a 'tags.json' file 1413 skaffold test --build-artifacts=tags.json 1414 1415 Options: 1416 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 1417 -a, --build-artifacts=: File containing pre-built images to use instead of rebuilding artifacts. A sample file looks like the following: 1418 { 1419 "builds":[ 1420 { 1421 "imageName":"registry/image1", 1422 "tag":"registry/image1:tag" 1423 },{ 1424 "imageName":"registry/image2", 1425 "tag":"registry/image2:tag" 1426 }] 1427 } 1428 The build result from a previous 'skaffold build --file-output' run can be used here 1429 -c, --config='': File for global configurations (defaults to $HOME/.skaffold/config) 1430 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 1431 -i, --images=: A list of pre-built images to deploy, either tagged images or NAME=TAG pairs 1432 -m, --module=[]: Filter Skaffold configs to only the provided named modules 1433 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 1434 --profile-auto-activation=true: Set to false to disable profile auto activation 1435 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 1436 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 1437 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 1438 --rpc-port=: tcp port to expose the Skaffold API over gRPC 1439 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 1440 --wait-for-connection=false: Blocks ending execution of skaffold until the /v2/events gRPC/HTTP endpoint is hit 1441 1442 Usage: 1443 skaffold test [options] 1444 1445 Use "skaffold options" for a list of global command-line options (applies to all commands). 1446 1447 1448 ``` 1449 Env vars: 1450 1451 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 1452 * `SKAFFOLD_BUILD_ARTIFACTS` (same as `--build-artifacts`) 1453 * `SKAFFOLD_CONFIG` (same as `--config`) 1454 * `SKAFFOLD_FILENAME` (same as `--filename`) 1455 * `SKAFFOLD_IMAGES` (same as `--images`) 1456 * `SKAFFOLD_MODULE` (same as `--module`) 1457 * `SKAFFOLD_PROFILE` (same as `--profile`) 1458 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 1459 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 1460 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1461 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 1462 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 1463 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1464 * `SKAFFOLD_WAIT_FOR_CONNECTION` (same as `--wait-for-connection`) 1465 1466 ### skaffold verify 1467 1468 Run verification tests against skaffold deployments 1469 1470 ``` 1471 1472 1473 Examples: 1474 # Deploy with skaffold and then verify deployments 1475 skaffold deploy -q | skaffold verify 1476 1477 Options: 1478 --assume-yes=false: If true, skaffold will skip yes/no confirmation from the user and default to yes 1479 -a, --build-artifacts=: File containing pre-built images to use instead of rebuilding artifacts. A sample file looks like the following: 1480 { 1481 "builds":[ 1482 { 1483 "imageName":"registry/image1", 1484 "tag":"registry/image1:tag" 1485 },{ 1486 "imageName":"registry/image2", 1487 "tag":"registry/image2:tag" 1488 }] 1489 } 1490 The build result from a previous 'skaffold build --file-output' run can be used here 1491 -d, --default-repo='': Default repository value (overrides global config) 1492 --docker-network='': Name of an existing docker network to use when running the verify tests. If not specified, Skaffold will create a new network to use of the form 'skaffold-network-<uuid>' 1493 --env-file='': File containing env var key-value pairs that will be set in all verify container envs 1494 -f, --filename='skaffold.yaml': Path or URL to the Skaffold config file 1495 -m, --module=[]: Filter Skaffold configs to only the provided named modules 1496 -n, --namespace='': Runs deployments in the specified namespace. When used with 'render' command, renders manifests contain the namespace 1497 --port-forward=off: Port-forward exposes service ports and container ports within pods and other resources (off, user, services, debug, pods) 1498 -p, --profile=[]: Activate profiles by name (prefixed with `-` to disable a profile) 1499 --profile-auto-activation=true: Set to false to disable profile auto activation 1500 --propagate-profiles=true: Setting '--propagate-profiles=false' disables propagating profiles set by the '--profile' flag across config dependencies. This mean that only profiles defined directly in the target 'skaffold.yaml' file are activated. 1501 --remote-cache-dir='': Specify the location of the remote cache (default $HOME/.skaffold/remote-cache) 1502 --rpc-http-port=: tcp port to expose the Skaffold API over HTTP REST 1503 --rpc-port=: tcp port to expose the Skaffold API over gRPC 1504 --status-check=: Wait for deployed resources to stabilize 1505 --sync-remote-cache='always': Controls how Skaffold manages the remote config cache (see `remote-cache-dir`). One of `always` (default), `missing`, or `never`. `always` syncs remote repositories to latest on access. `missing` only clones remote repositories if they do not exist locally. `never` means the user takes responsibility for updating remote repositories. 1506 1507 Usage: 1508 skaffold verify [options] 1509 1510 Use "skaffold options" for a list of global command-line options (applies to all commands). 1511 1512 1513 ``` 1514 Env vars: 1515 1516 * `SKAFFOLD_ASSUME_YES` (same as `--assume-yes`) 1517 * `SKAFFOLD_BUILD_ARTIFACTS` (same as `--build-artifacts`) 1518 * `SKAFFOLD_DEFAULT_REPO` (same as `--default-repo`) 1519 * `SKAFFOLD_DOCKER_NETWORK` (same as `--docker-network`) 1520 * `SKAFFOLD_ENV_FILE` (same as `--env-file`) 1521 * `SKAFFOLD_FILENAME` (same as `--filename`) 1522 * `SKAFFOLD_MODULE` (same as `--module`) 1523 * `SKAFFOLD_NAMESPACE` (same as `--namespace`) 1524 * `SKAFFOLD_PORT_FORWARD` (same as `--port-forward`) 1525 * `SKAFFOLD_PROFILE` (same as `--profile`) 1526 * `SKAFFOLD_PROFILE_AUTO_ACTIVATION` (same as `--profile-auto-activation`) 1527 * `SKAFFOLD_PROPAGATE_PROFILES` (same as `--propagate-profiles`) 1528 * `SKAFFOLD_REMOTE_CACHE_DIR` (same as `--remote-cache-dir`) 1529 * `SKAFFOLD_RPC_HTTP_PORT` (same as `--rpc-http-port`) 1530 * `SKAFFOLD_RPC_PORT` (same as `--rpc-port`) 1531 * `SKAFFOLD_STATUS_CHECK` (same as `--status-check`) 1532 * `SKAFFOLD_SYNC_REMOTE_CACHE` (same as `--sync-remote-cache`) 1533 1534 ### skaffold version 1535 1536 Print the version information 1537 1538 ``` 1539 1540 1541 Options: 1542 -o, --output={{.Version}} 1543 : Format output with go-template. For full struct documentation, see https://godoc.org/github.com/GoogleContainerTools/skaffold/v2/pkg/skaffold/version#Info 1544 1545 Usage: 1546 skaffold version [options] 1547 1548 Use "skaffold options" for a list of global command-line options (applies to all commands). 1549 1550 1551 ``` 1552 Env vars: 1553 1554 * `SKAFFOLD_OUTPUT` (same as `--output`)