Skip to content

feat(bastion): static GCE bastion for running the eval harness#35

Open
pradeepvrd wants to merge 1 commit into
refactor/gemini-capabilitiesfrom
feat/eval-bastion
Open

feat(bastion): static GCE bastion for running the eval harness#35
pradeepvrd wants to merge 1 commit into
refactor/gemini-capabilitiesfrom
feat/eval-bastion

Conversation

@pradeepvrd

@pradeepvrd pradeepvrd commented Jun 23, 2026

Copy link
Copy Markdown
Owner

Adds a reusable, harness-agnostic GCE bastion so the eval harness (and the oc binary, which runs locally) can run on a VM reached over IAP SSH instead of a laptop. The bastion runs as the service account the secret-rotation stack already references.

  • tf/modules/bastion + tf/prebuilt/bastion: a plain Compute Engine VM (Ubuntu 24.04, runs as a configurable SA with provisioning IAM) plus an IAP-SSH firewall; startup.sh installs the toolchain (OpenTofu, gcloud + gke-gcloud-auth-plugin, kubectl, Node 22, openclaw, gke-mcp).
  • scripts/bastion/: sync-to-bastion.sh pushes the working tree to the VM over IAP (with an opt-in gcpnode SSH override); vm-setup.sh builds the venv, installs the package, and seeds bench.env.
  • docs/bastion.md: architecture + provision/sync/run/teardown guide.

Net-new infrastructure (no prior implementation); a plain Compute VM is used rather than Cloud Workstations.

@pradeepvrd pradeepvrd force-pushed the refactor/gemini-capabilities branch from b66af88 to 030b34c Compare June 23, 2026 06:09
@pradeepvrd pradeepvrd force-pushed the refactor/gemini-capabilities branch from 030b34c to 5d8e551 Compare June 23, 2026 06:37
@pradeepvrd pradeepvrd force-pushed the refactor/gemini-capabilities branch from 5d8e551 to 6b298b2 Compare June 23, 2026 07:53
@pradeepvrd pradeepvrd force-pushed the refactor/gemini-capabilities branch from 6b298b2 to d4fbeae Compare June 23, 2026 08:22
@pradeepvrd pradeepvrd force-pushed the refactor/gemini-capabilities branch from d4fbeae to d0a67cd Compare June 23, 2026 18:30
@pradeepvrd pradeepvrd force-pushed the refactor/gemini-capabilities branch from d0a67cd to 9b39991 Compare June 23, 2026 18:35
Adds a reusable, harness-agnostic GCE bastion so the eval harness (and the `oc` binary, which runs locally) can run on a VM reached over IAP SSH instead of a laptop. The bastion runs as the service account the secret-rotation stack already references.

- `tf/modules/bastion` + `tf/prebuilt/bastion`: a plain Compute Engine VM (Ubuntu 24.04, runs as a configurable SA with provisioning IAM) plus an IAP-SSH firewall; `startup.sh` installs the toolchain (OpenTofu, gcloud + gke-gcloud-auth-plugin, kubectl, Node 22, openclaw, gke-mcp).
- `scripts/bastion/`: `sync-to-bastion.sh` pushes the working tree to the VM over IAP (with an opt-in gcpnode SSH override); `vm-setup.sh` builds the venv, installs the package, and seeds `bench.env`.
- `docs/bastion.md`: architecture + provision/sync/run/teardown guide.

Net-new infrastructure (no prior implementation); a plain Compute VM is used rather than Cloud Workstations.
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