Skip to main content

furyctl apply

Apply the configuration to create, update, or upgrade a battle-tested SIGHUP Distribution cluster

Usage

furyctl apply [flags]

Examples

  furyctl apply                                     Apply all the configuration to the cluster using the default configuration file name
furyctl apply --config mycluster.yaml Apply a custom configuration file
furyctl apply --phase distribution Apply a single phase, for example the distribution phase
furyctl apply --post-apply-phases distribution Apply all the phases, and repeat the distribution phase afterwards

Options

  -b, --bin-path string                 Path to the folder where all the dependencies' binaries are downloaded
-c, --config string Path to the configuration file (default "furyctl.yaml")
--distro-location string Location where to download schemas, defaults, and the distribution manifests from. It can either be a local path (eg: /path/to/distribution) or a remote URL (eg: git::git@github.com:sighupio/distribution?depth=1&ref=BRANCH_NAME). Any format supported by hashicorp/go-getter can be used
--distro-patches string Location where the distribution's user-made patches can be downloaded from. This can be either a local path (eg: /path/to/distro-patches) or a remote URL (eg: git::git@github.com:your-org/distro-patches?depth=1&ref=BRANCH_NAME). Any format supported by hashicorp/go-getter can be used. Patches within this location must be in a folder named after the distribution version (eg: v1.29.0) and must have the same structure as the distribution's repository
--dry-run Allows to inspect what resources will be created before applying them
--force strings WARNING: furyctl won't ask for confirmation and will proceed applying upgrades and migrations. Options are: all, upgrades, migrations, pods-running-check
-h, --help help for apply
-p, --phase string Limit the execution to a specific phase. Options are: infrastructure, kubernetes, distribution, plugins
--pod-running-check-timeout int Timeout for the pod running check after the worker nodes upgrade, expressed in seconds (default 300)
--post-apply-phases strings Comma separated list of phases to run after the apply command. Options are: infrastructure, kubernetes, distribution, plugins
--skip-deps-download Skip downloading the distribution modules, installers and binaries
--skip-deps-validation Skip validating dependencies
--skip-nodes-upgrade On kind OnPremises, this will skip the upgrade of the nodes upgrading only the control-plane
--skip-vpn-confirmation When set will not wait for user confirmation that the VPN is connected
--start-from string Start the execution from a specific phase and continue with the following phases. Options are: infrastructure, kubernetes, distribution, plugins, pre-infrastructure, post-infrastructure, pre-kubernetes, post-kubernetes, pre-distribution, post-distribution
--timeout int Timeout for the whole cluster creation process, expressed in seconds (default 3600)
--upgrade When set will run the upgrade scripts, allowing to upgrade from one version to another one in the supported upgrade paths. See available target versions with 'get upgrade-paths'
--upgrade-node string On kind OnPremises, this will upgrade one specific node passed as parameter
--upgrade-path-location string Set to use a custom location for the upgrade scripts instead of the embedded ones
--vpn-auto-connect When set will automatically connect to the created VPN by the infrastructure phase (requires OpenVPN installed in the system)

Options inherited from parent commands

  -D, --debug                       Enables furyctl debug output. This will greatly increase the verbosity. Debug logs and additional logs are also always written to the log file. See the --log flag.
-d, --disable-analytics Disable analytics
-g, --git-protocol git-protocol Download repositories using the given protocol. Use when SSH traffic is being blocked or when SSH client has not been configured
set the GITHUB_TOKEN environment variable with your token to use authentication while downloading, for example for private repositories.
Options are: ssh, https (default https)
-H, --https DEPRECATED: by default furyctl uses https protocol to download repositories. See --git-protocol flag (default true)
-l, --log string Path to a file or folder where to write logs to. Set to 'stdout' write to standard output. Target path will be created if it does not exists. Path is relative to --workdir. Default is '<outdir>/.furyctl/furyctl.<timestamp>-<random number>.log'
-T, --no-tty Disable TTY making furyctl's output more friendly to non-interactive shells by disabling animations and colors
-o, --outdir string Path where to create the ".furyctl" data directory. Default is the user's home. Path is relative to --workdir
-w, --workdir string Switch to a different working directory before executing the given subcommand. NOTE: this will affect all the paths passed, including other flags like outdir and log, for example

See Also

  • furyctl - The Swiss Army knife for the SIGHUP Distribution