tailnet_join
Join a server to the Tailscale tailnet using its public address, generating a one-time key and confirming the node is online. For servers already set up but logged out or never joined.
Instructions
Join a server to the tailnet over its public address (hosts..bootstrap in fleet.yaml): for a machine that is already set up but logged out of Tailscale or never joined. The key is a fresh one-time key from the Tailscale API (TAILSCALE_API_KEY), made only on apply and passed through the environment — never in the plan or journal; without the API it falls back to TAILSCALE_AUTH_KEY. Runs tailscale up --reset --ssh --hostname node-<name> (+ exit node like the fleet), then verifies the node shows up online.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| host | Yes | inventory host with bootstrap.address | |
| apply | No | false (default) = dry run: show what will happen on which hosts and a planHash. true = run it; needs planHash | |
| install | No | install Tailscale first when it is missing (official install script), for a fresh server set up without node_bootstrap | |
| sshPort | No | ||
| sshUser | No | ssh user on the public address (default: bootstrap.user, else root) | |
| exitNode | No | --advertise-exit-node, as every fleet node does | |
| planHash | No | planHash from the dry run of the very same call, good for one apply; refused if targets or their state changed since |