Skip to content

provision.sh is provision-gcp.sh - #57

Merged
andrin-n-dream merged 1 commit into
masterfrom
workmachine
Sep 18, 2026
Merged

andrin-n-dream merged 1 commit into
masterfrom
workmachine

Conversation

@andrin-n-dream

Copy link
Copy Markdown
Contributor

Nearly all of the script is Google's — the network, firewall, static address,
snapshot schedule, audit log and even the ssh are gcloud. The machine itself is
already in cloud-config.yaml and setup.sh, which any cloud takes. So a second
provider becomes provision-hetzner.sh beside this one rather than a --provider
flag threaded through every function; the name says which cloud this is and
leaves room for the next.

The shared pieces (password prompt, user-name and domain checks) stay put until a
second script exists to share them — a seam named for a caller that does not
exist yet is a guess about its shape.

Renamed outright, no forwarding stub: the README's curl URL is a day old.

Also fixes --help under curl | sh, which opened with sed: can't read sh
because the verbs are printed from the file's own header and a piped script has
no file.

curl -fsSL https://raw.githubusercontent.com/AirConsole/switchboard-ide/master/cloud/provision-gcp.sh \
  | sh -s -- create mybox --project my-project

🤖 Generated with Claude Code

The network, the firewall, the static address, the snapshot schedule, the audit
log and even the ssh are gcloud. What is not -- the machine itself -- is already
in cloud-config.yaml and setup.sh, beside it, and any cloud takes those. So a
second provider is a second script next to this one, provision-hetzner.sh, not a
--provider flag threaded through every function here; the name says which
cloud this one is, and leaves room for the next.

The pieces two scripts would share -- the password prompt, the checks on a user
name and a domain -- stay where they are until there is a second script to
share them with. A seam named for a caller that does not exist yet is a guess
about its shape.

Renamed outright rather than behind a forwarding stub: the curl URL in the
README is a day old, and a stub is a second file to keep for as long as anyone
might have saved the first.

Also: `--help` under `curl | sh` opened with "sed: can't read sh", because the
verbs are printed from the file's own header and a piped script has no file --
$0 is the shell's name. The README's own one-liner produced it. With no file,
the verbs are said inline.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@andrin-n-dream
andrin-n-dream merged commit 0294465 into master Sep 18, 2026
1 check passed
@andrin-n-dream
andrin-n-dream deleted the workmachine branch September 18, 2026 16:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant