Skip to content

Latest commit

 

History

History
76 lines (59 loc) · 3.36 KB

File metadata and controls

76 lines (59 loc) · 3.36 KB
title CLI overview
sidebar
icon
square-terminal
description Install and configure the fuse operator CLI

fuse is the operator CLI for the Fuse orchestrator, built with Cobra. It lives in the repo's cli/ package.

Install

brew install --cask folsomintel/fuse/fuse

Upgrade with brew upgrade --cask folsomintel/fuse/fuse, and check the installed version with fuse --version. On Linux without Homebrew, take the fuse-cli_Linux_*.tar.gz archive from the latest release.

:::warning[Always use the fully qualified name] Homebrew's own cask repo has an unrelated fuse (Fuse Studio, from fuse-open.github.io). A bare brew install --cask fuse or brew upgrade --cask fuse resolves to that project, not this CLI, even once you have tapped folsomintel/fuse. Qualify it as folsomintel/fuse/fuse every time. An install left on the bare name silently stops receiving updates, which is how a machine ends up pinned to an old CLI missing newer commands. :::

To build from a checkout instead, for local development:

go build -o bin/fuse ./cli

Global flags

These apply to every command:

Flag Purpose
-o, --output Output format: table (default) or json.
--context Context to use for this invocation, overriding the active context.
--config Path to the config file (default: $XDG_CONFIG_HOME/fuse/config.yaml, or ~/.config/fuse/config.yaml).

Config file

CLI state, orchestrator contexts (base URL + token) and each context's active host selection, persists to a YAML file:

$XDG_CONFIG_HOME/fuse/config.yaml     # or ~/.config/fuse/config.yaml

The file is written with 0600 permissions (it holds bearer tokens) inside a 0700 directory, created automatically on first fuse connect.

Command groups

Command Purpose
fuse quickstart Guided first-time setup: connect an orchestrator and register a host. See fuse quickstart.
fuse connect / fuse context Add and switch between orchestrator contexts. See Contexts.
fuse hosts / fuse host Manage compute hosts. See Hosts.
fuse environment Manage environments (VMs) directly. See Environments.
fuse up Compile a Fusefile and create an environment from it. See fuse up.
fuse build Run a Fusefile's setup phase once and snapshot the result. See fuse build.
fuse validate Check a Fusefile offline, without creating anything. See fuse validate.
fuse init Scaffold an example Fusefile. See fuse init.
fuse compile Print what a Fusefile compiles into, without creating anything. See fuse compile.
fuse snapshot Manage VM snapshots. See Snapshots.
fuse apikeys Manage orchestrator-global API keys. See API keys.
fuse metrics Print fleet-wide Prometheus metrics. See fuse metrics.

Most commands print human-readable tables by default; pass -o json for machine-readable output, which is the same shape returned by the HTTP API.