Skip to content

tools: remove setup-gcp and hack/teardown.sh - #3505

Merged
Eitan Yarmush (EItanya) merged 2 commits into
agent-substrate:mainfrom
MushuEE:dev/remove-setup-gcp-rebased
Nov 2, 2026
Merged

Eitan Yarmush (EItanya) merged 2 commits into
agent-substrate:mainfrom
MushuEE:dev/remove-setup-gcp-rebased

Conversation

@MushuEE

Copy link
Copy Markdown
Collaborator

Supersedes #3396 by Steven Shriver (@stshrive), rebased onto current main. The commit keeps his authorship and sign-off.

The GKE provisioning and teardown tooling now lives in https://github.com/ai-on-gke/substrate-gke under tools/setup-gcp, so core no longer carries a copy. Docs and comments that pointed at the removed files now point at substrate-gke. go mod tidy drops the GCP client modules only setup-gcp used, and vendor/ and _LICENSES/ are regenerated to match.

Covers #3390, except that hack/teardown.sh is removed here as well; substrate-gke's tools/setup-gcp/teardown.sh replaces it.

Part of #2304

Rebase notes

Conflicts were mostly from the Hugo docsite move (#1974):

  • tools/setup-gcp/cloud-sql.md: deleted, as in the original PR.
  • docs/guides/operator-install.md, docs/guides/postgres.md: the original edits, re-applied at the new paths.
  • docs/guides/observability.md: kept main's version, since Add Hugo Docsite #1974 already removed the Dashboards section the original PR edited.
  • cmd/kubectl-ate/README.md: kept main's stub that points to docs/reference/kubectl-ate.md. That page no longer has the setup-gcp line, so the edit had nowhere to go.

Comment thread hack/ate-dev-env.sh.example Outdated
@@ -25,12 +25,13 @@ export NETWORK=default
export SUBNETWORK=default

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the goal is to make the default kind for this

For our GKE deps in ai-on-gke, we can copy paste this to https://github.com/ai-on-gke/substrate-gke instead and take the dependency there rather than on main

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just not sure how we want to handle the gcs bucket issue here... should we remove gcs bucket across the default installation path?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kind normally uses a local rustfs bucket and the kind scripts spend most of their time trying to undo ate-dev-env.sh

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the problem is installing with ate-setup on something that isn't kind ...

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there still an action needed to resolve this?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done in 9bc807d. hack/ate-dev-env.sh.example is now kind-only: ATE_INSTALL_KIND, the kind cluster and registry names, KO_DOCKER_REPO pointing at the local registry, the credential provider and the ingress allowlist. Nothing GCP or GCS is left in it, so the GCS bucket question doesn't apply to it anymore. The GKE version lives in substrate-gke (tools/setup-gcp/ate-dev-env.sh.example), and the README's GKE quickstart fetches it from there.

Tested on a fresh kind cluster. In a clean shell I sourced only the example, ran hack/create-kind-cluster.sh, then ate-setup deploy ate-system with no flags and deploy demo counter. A counter actor resumed and kept its counts across two requests through kubectl ate proxy.

@thockin

Copy link
Copy Markdown
Collaborator

What is the status on this? I see conflicts and comments, I need a clean PR by EOD Monday - is it possible?

@MushuEE

Copy link
Copy Markdown
Collaborator Author

Rebased onto current main to resolve conflicts with the #2092 merge (microvm-deps ported to Go). Also pointed the new go run ./tools/setup-gcp references that landed since the last rebase at substrate-gke.

@thockin Tim Hockin (thockin) left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just want us to strip out as much GCP-specifc text and stuff as possible. A lot of these changes are related to installing on GCE for scale tests and the like, so ...fine. But some of it just feels unnecessary

Comment thread cmd/ate-setup/commands.md Resolved
Comment thread cmd/ate-setup/differences.md Outdated
Comment on lines 297 to 310

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is very GCP-centric - do we need it here?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed the Cloud SQL DSN paragraph in 9bc807d.

Comment thread docs/dev/best-practices/metrics.md Resolved
Comment thread hack/ate-dev-env.sh.example Outdated
@@ -25,12 +25,13 @@ export NETWORK=default
export SUBNETWORK=default

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there still an action needed to resolve this?

The GKE provisioning and teardown tooling now lives in
https://github.com/ai-on-gke/substrate-gke under tools/setup-gcp, so core
no longer carries a copy. Docs and comments that pointed at the removed
files now point at substrate-gke. go mod tidy drops the GCP client
modules only setup-gcp used, and vendor/ and _LICENSES/ are regenerated
to match.

hack/teardown.sh is removed here as well;
substrate-gke's tools/setup-gcp/teardown.sh replaces it.

Signed-off-by: Steven Shriver <[email protected]>
hack/ate-dev-env.sh.example now targets a local kind cluster only. The
GKE version lives in substrate-gke, and the README's GKE quickstart
fetches it from there. The 1.36 support notes go with it, since GKE
1.37+ serves the PodCertificate APIs by default.

Also drop GCP-specific text from cmd/ate-setup/commands.md,
cmd/ate-setup/differences.md (Cloud SQL DSN paragraph),
docs/dev/best-practices/metrics.md (Dashboards section) and
docs/guides/egress-credential-injection.md.

Signed-off-by: Grant McCloskey <[email protected]>
@MushuEE

Copy link
Copy Markdown
Collaborator Author

Tim Hockin (@thockin) rebased onto current main and addressed the review in 9bc807d (replies inline). Summary:

  • hack/ate-dev-env.sh.example is kind-only and tested end to end on a fresh kind cluster. The GKE example lives in substrate-gke. The 1.36 notes are gone; GKE 1.37+ serves the PodCertificate APIs by default.
  • Removed the GCP-specific text you flagged in commands.md, differences.md, metrics.md and egress-credential-injection.md.
  • The remaining substrate-gke references in docs and comments go in a documentation follow-up, as agreed with Anna Pendleton (@annapendleton).

@MushuEE

Copy link
Copy Markdown
Collaborator Author

Note: we plan to fast follow with a proper docs purge. I think there may still be some lingering things but we decided to allow docs to be part of follow-up last week. Tried to clean as I went here as well though

@EItanya
Eitan Yarmush (EItanya) added this pull request to the merge queue Nov 2, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Nov 2, 2026
@EItanya
Eitan Yarmush (EItanya) added this pull request to the merge queue Nov 2, 2026
Merged via the queue into agent-substrate:main with commit b66e16a Nov 2, 2026
7 checks passed
Grant McCloskey (MushuEE) added a commit to MushuEE/substrate that referenced this pull request Nov 2, 2026
Supersedes agent-substrate#3396 by @stshrive, rebased onto current `main`. The commit
keeps his authorship and sign-off.

The GKE provisioning and teardown tooling now lives in
https://github.com/ai-on-gke/substrate-gke under tools/setup-gcp, so
core no longer carries a copy. Docs and comments that pointed at the
removed files now point at substrate-gke. go mod tidy drops the GCP
client modules only setup-gcp used, and vendor/ and _LICENSES/ are
regenerated to match.

Covers agent-substrate#3390, except that hack/teardown.sh is removed here as well;
substrate-gke's tools/setup-gcp/teardown.sh replaces it.

Part of agent-substrate#2304

### Rebase notes
Conflicts were mostly from the Hugo docsite move (agent-substrate#1974):
- `tools/setup-gcp/cloud-sql.md`: deleted, as in the original PR.
- `docs/guides/operator-install.md`, `docs/guides/postgres.md`: the
original edits, re-applied at the new paths.
- `docs/guides/observability.md`: kept main's version, since agent-substrate#1974
already removed the Dashboards section the original PR edited.
- `cmd/kubectl-ate/README.md`: kept main's stub that points to
`docs/reference/kubectl-ate.md`. That page no longer has the setup-gcp
line, so the edit had nowhere to go.

---------

Signed-off-by: Steven Shriver <[email protected]>
Signed-off-by: Grant McCloskey <[email protected]>
Co-authored-by: Steven Shriver <[email protected]>
(cherry picked from commit b66e16a)
Dmitry Berkovich (dberkov) pushed a commit that referenced this pull request Nov 3, 2026
Bring `release-1.0` up to `main` at
5a5b192 with the 19 changes merged
since the previous batch in #3536. The final tree matches that commit
exactly.

**Please use Rebase and merge to preserve the individual commits and
author attribution.** All 19 applied cleanly in upstream order. Original
authors, author dates, co-author and sign-off trailers, and `-x` source
references are retained.

Upgrade notes:

- #3533: old gVisor MEMORY snapshots, including goldens, no longer
restore. Recreate them after upgrading. MicroVM MEMORY snapshots still
resume with their old mounts until recreated. `/tmp` is now always
tmpfs; ROOTFS snapshots no longer preserve its contents, and
image-provided files there are hidden. MicroVM `/tmp` counts against
actor memory and is capped at half the guest's memory. gVisor `/dev/shm`
is now a 64 MiB tmpfs. Mount a `durableDir` at either path when
persistence or more space is needed. `/run` now comes from the image
rootfs.
- #3447: remove `--actor-jwt-jwks-file` from custom credential-exchange
sidecar configs. Set `--actor-jwt-issuer-ca-file` only when the issuer
uses a private CA other than the service DNS CA.

- #3450: do not reuse a deleted atespace name. See the updated atespace
name-reuse guidance.

Includes #3505, which overlaps the open backport in #3547. GKE
provisioning and teardown now live in
[substrate-gke](https://github.com/ai-on-gke/substrate-gke) rather than
this repository.

<details>
<summary>Included PRs, in cherry-pick order</summary>

1. #3500: demos/{sandbox,jupyter,multi-template}: fix tutorial
prerequisites, walkthroughs, and counter volume
2. #3498: demos/counter: inline gVisor walkthrough and fix setup
commands
3. #3511: e2e tests: Extend the existing tests to cover tag actor.
4. #2775: Generate API reference documentation and publish it on
Substrate website
5. #3119: Document how people, pods and CI jobs should authenticate to
ate-api
6. #3505: tools: remove setup-gcp and hack/teardown.sh
7. #3147: e2e: resume fidelity after SandboxConfig version edits
8. #3370: ate-setup: reconcile ate-api-server ConfigMaps and roll out on
config changes
9. #1607: hack: reject breaking proto changes across each proto package
10. #3415: docs: update and add security diagrams
11. #3485: Resuming a microVM actor on the same node no longer reads its
rootfs upper back from disk
12. #3447: Verify actor JWTs in the credential exchange through OIDC
discovery
13. #3533: ocispec: mount tmpfs at /dev/shm, and /tmp on both runtimes
14. #3450: docs: Document that atespace names must not be reused
15. #3410: Document using more than one egress credential provider
16. #3486: atelet: register the device plugin on a new socket each time
17. #3553: ate-setup: wait for the demo namespace in delete demo
18. #3560: Fix multiple issues in claude-code-multiplex demo
19. #3517: docs: remove inaccurate early-stage architecture
documentation

</details>

Validation: every intermediate tree matches its upstream source commit,
all 19 authorship records and original attribution trailers are
preserved, and `git diff --check` passes. The original 18 backport
commits are unchanged.

AI use: AI-assisted cherry-picking, attribution checks, and review.

- [ ] Tests pass
- [x] Docs updated

---------

Signed-off-by: Mofi Rahman <[email protected]>
Signed-off-by: Eitan Yarmush <[email protected]>
Signed-off-by: Nayana Bidari <[email protected]>
Signed-off-by: Julian Gutierrez Oschmann <[email protected]>
Signed-off-by: Max Thompson <[email protected]>
Signed-off-by: Steven Shriver <[email protected]>
Signed-off-by: Grant McCloskey <[email protected]>
Signed-off-by: Shrutiya <[email protected]>
Signed-off-by: Haiyan Meng <[email protected]>
Signed-off-by: Greg Castle <[email protected]>
Signed-off-by: Benjamin Elder <[email protected]>
Signed-off-by: Anish Ramasekar <[email protected]>
Signed-off-by: Shruti Nair <[email protected]>
Signed-off-by: Haven Xia <[email protected]>
Co-authored-by: Mofi Rahman <[email protected]>
Co-authored-by: nybidari <[email protected]>
Co-authored-by: Julian Gutierrez Oschmann <[email protected]>
Co-authored-by: Max Thompson <[email protected]>
Co-authored-by: Grant McCloskey <[email protected]>
Co-authored-by: Steven Shriver <[email protected]>
Co-authored-by: shrutiyam-glitch <[email protected]>
Co-authored-by: haiyanmeng <[email protected]>
Co-authored-by: Greg Castle <[email protected]>
Co-authored-by: Benjamin Elder <[email protected]>
Co-authored-by: Anish Ramasekar <[email protected]>
Co-authored-by: Shruti Nair <[email protected]>
Co-authored-by: Haven Xia <[email protected]>
Co-authored-by: Adam Wathieu <[email protected]>
Dmitry Berkovich (dberkov) pushed a commit that referenced this pull request Nov 3, 2026
Supersedes #3396 by @stshrive, rebased onto current `main`. The commit
keeps his authorship and sign-off.

The GKE provisioning and teardown tooling now lives in
https://github.com/ai-on-gke/substrate-gke under tools/setup-gcp, so
core no longer carries a copy. Docs and comments that pointed at the
removed files now point at substrate-gke. go mod tidy drops the GCP
client modules only setup-gcp used, and vendor/ and _LICENSES/ are
regenerated to match.

Covers #3390, except that hack/teardown.sh is removed here as well;
substrate-gke's tools/setup-gcp/teardown.sh replaces it.

Part of #2304

### Rebase notes
Conflicts were mostly from the Hugo docsite move (#1974):
- `tools/setup-gcp/cloud-sql.md`: deleted, as in the original PR.
- `docs/guides/operator-install.md`, `docs/guides/postgres.md`: the
original edits, re-applied at the new paths.
- `docs/guides/observability.md`: kept main's version, since #1974
already removed the Dashboards section the original PR edited.
- `cmd/kubectl-ate/README.md`: kept main's stub that points to
`docs/reference/kubectl-ate.md`. That page no longer has the setup-gcp
line, so the edit had nowhere to go.

---------

Signed-off-by: Steven Shriver <[email protected]>
Signed-off-by: Grant McCloskey <[email protected]>
Co-authored-by: Steven Shriver <[email protected]>
(cherry picked from commit b66e16a)
Signed-off-by: Eitan Yarmush <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/dev-infra kind/cleanup Small fixes that are not bugs, for example a typo in a code comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants