Point vmup at another VM
Saved profiles, a default profile, and one-shot SSH config aliases.
One config file can hold several hosts. Each profile is a named block under [profiles.<name>]. The default profile is used when you pass neither -p nor --ssh-host.
vmup profilesConfig: /Users/you/.config/vmup/config.toml
Default: default
default: ubuntu@192.168.1.10 remote=~/vmup
lab: ssh_host=lab remote=~/vmupUse a saved profile
vmup -p work shot.png
vmup check -p work
VMUP_PROFILE=work vmup shot.pngPrecedence for which profile: --profile flag → VMUP_PROFILE → default_profile in the file → default.
Add profiles with Run init again, or edit the TOML. Full keys: config.toml.
Two connection styles
Direct (host + user + key + port):
[profiles.work]
host = "192.168.1.10"
user = "ubuntu"
key = "~/.ssh/id_ed25519"
port = 22
remote_dir = "~/vmup"
ttl_minutes = 5vmup passes -p, -i, BatchMode=yes, and StrictHostKeyChecking=accept-new to ssh / scp.
SSH config alias (ssh_host):
[profiles.lab]
ssh_host = "lab"
remote_dir = "~/vmup"
ttl_minutes = 5vmup runs ssh lab … and scp … lab:…. User, key, and port come from ~/.ssh/config. vmup does not add -i or -p in this mode.
A profile with ssh_host set uses alias mode even if host is also present. Direct SSH vs ssh_host explains the tradeoff.
One-shot alias (no profile)
vmup --ssh-host lab shot.pngSame as alias mode. The printed profile name is ssh:lab. VMUP_SSH_HOST does the same thing.
--profile and --ssh-host together throw:
Use either --profile or --ssh-host, not bothChange the default
In config.toml:
default_profile = "work"Or, when vmup init creates a new profile, answer yes to “Make this the default profile?” Overwrite flows do not ask.
Environment overrides
VMUP_HOST, VMUP_USER, VMUP_KEY, VMUP_PORT, VMUP_REMOTE_DIR overlay the resolved profile. Useful in CI. They do not create a profile on disk. See Environment variables.