You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f95c6a5
Browse filesBrowse the repository at this point in the historyBrowse files
scripts/fleet.py: six pieces, each one AWS call shape with tab-separated
lines: listzipversions (the snapshot, once), listgerps, listzipfnsconf
--gerp, status (the join), update (one UpdateFunctionCode per behind
line), push. deploy.sh fleet is the laptop's composition; the yaml's is to
be the same pipe. deploy.py loses push --all and image --all. No script
learns where it runs.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: AGENTS.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -146,7 +146,7 @@ for the http API surface, `tests/server/per_customer/` IS the per_customer stack
146
146
## commands
147
147
148
148
-`bash scripts/test.sh` — run every module's local-mode suite; `--module <name>`, `--name <substring>`, `--env integ`, `--logs` available. see `tests/AGENTS.md` for authoring conventions
149
-
- `bash scripts/deploy.sh status|push [--gerp <gerp_id>]` — artifact deploys (TF owns shape, S3 owns bytes), **no terraform anywhere in the push path**: the builder is `if package.json → zip the dir; elif .py → zip the dir + its transitively-resolved local imports; else exit 1` — **the import graph IS the bundle manifest** (shared `_helpers`/`*_rules`/vendored trees resolve off the code itself; no recipe files, no `archive_file` — those blocks are deleted). Bespoke needs are `match src_dir:` cases in `build_artifact` (scripts/deploy.py) that *do things first* — prune, stage — then call `build_node`/`build_py`; it's a build script, explicit cases at any count are fine. `status` = the `gerp:src-dir` tag query × live `CodeSha256` × artifact checksums (~12s, direction-aware); `push [--dirs …] [--notes …]` = deterministic zips → versioned artifacts + `provenance`/`release` annotations (operator-profile writes; org read) → `update-function-code` at the pinned version (tenant profile); `--deploy` builds and puts nothing, so the functions and the BFF take the artifacts already in the bucket (what `zip.sh lambda` + `upload.sh lambda` put); `--all` pushes every active gerp through its own `gerp-<id>` profile, whose region picks the bucket, and the BFF once. deployed state is never recorded — it's one `get-function` away. **functions SOURCE code from the bucket** (`data "aws_s3_object"` pins latest per function), so ANY applier — codebuild's bundled snapshot, a stale checkout — deploys bucket truth, never its local tree; a NEW function is push-then-apply (the data source fails the plan until its artifact exists). post-push, a plan shows function updates until the next apply — that's the state's `s3_object_version` pointer re-syncing FORWARD to the version the push already deployed (AWS doesn't expose code source, so state can't refresh it); the apply is a same-bytes no-op
149
+
- `bash scripts/deploy.sh status|push [--gerp <gerp_id>]`, `deploy.sh fleet [--report]` (every gerp at once, scripts/fleet.py's pieces) — artifact deploys (TF owns shape, S3 owns bytes), **no terraform anywhere in the push path**: the builder is `if package.json → zip the dir; elif .py → zip the dir + its transitively-resolved local imports; else exit 1` — **the import graph IS the bundle manifest** (shared `_helpers`/`*_rules`/vendored trees resolve off the code itself; no recipe files, no `archive_file` — those blocks are deleted). Bespoke needs are `match src_dir:` cases in `build_artifact` (scripts/deploy.py) that *do things first* — prune, stage — then call `build_node`/`build_py`; it's a build script, explicit cases at any count are fine. `status` = the `gerp:src-dir` tag query × live `CodeSha256` × artifact checksums (~12s, direction-aware); `push [--dirs …] [--notes …]` = deterministic zips → versioned artifacts + `provenance`/`release` annotations (operator-profile writes; org read) → `update-function-code` at the pinned version (tenant profile); `--deploy` builds and puts nothing, so the functions and the BFF take the artifacts already in the bucket (what `zip.sh lambda` + `upload.sh lambda` put); `--all` pushes every active gerp through its own `gerp-<id>` profile, whose region picks the bucket, and the BFF once. deployed state is never recorded — it's one `get-function` away. **functions SOURCE code from the bucket** (`data "aws_s3_object"` pins latest per function), so ANY applier — codebuild's bundled snapshot, a stale checkout — deploys bucket truth, never its local tree; a NEW function is push-then-apply (the data source fails the plan until its artifact exists). post-push, a plan shows function updates until the next apply — that's the state's `s3_object_version` pointer re-syncing FORWARD to the version the push already deployed (AWS doesn't expose code source, so state can't refresh it); the apply is a same-bytes no-op
150
150
-`bash scripts/deploy.sh image` — the agent-container deploy: build → push (auto-incremented immutable `vNN` tag) → CLI-update a gerp's runtime to the new digest, from the copy ECR replication makes in the gerp's own region, once it has arrived (FULL config carried — UpdateAgentRuntime replaces wholesale) → wait READY → re-pin the named endpoint (DEFAULT auto-tracks). The gerp is gradienterp by default (the dogfood takes an image first), `--gerp <id>` for another, `--all` for every active gerp — a fleet push is said, never implied; `--no-build` moves the named gerps onto the image already at the top of ECR, or `--no-build --tag vNN` onto that one. No terraform: the runtime tf reads `data.aws_ecr_image``most_recent`, so a post-deploy plan is ALREADY clean (AgentCore exposes its config, unlike lambda code). No `agent_image_tag` var exists anymore; no fake gateway-target churn — routine image deploys change zero tf
151
151
-`bash scripts/docker.sh --build|--run|--stop|--push <ecr-uri>` — the underlying agent-container build/run primitives (`deploy.sh image` drives build/push; use directly for local container smoke)
152
152
-`bash scripts/local-dev.sh --install` — once per clone: creates `.venv` (python3.12), installs the tests', the agent container's and the local servers' python deps, and runs `npm ci` in each Node lambda. Every script that runs `.venv/bin/python` (`test.sh`, `deploy.sh`, `investigate.sh`) needs it
Copy file name to clipboardExpand all lines: modules/agent/AGENTS.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -171,7 +171,7 @@ westwood's runtime moved onto it, one tool-calling turn through `scripts/chat.sh
171
171
posted on the pull request; then westwood back onto the latest `vNN` and the `pr-` tag deleted,
172
172
since the runtime's terraform pins the newest image in ECR and a `pr-` tag must never be it. The
173
173
environment, its secret and the deploy role's subject stay in place for it. Merge, then
174
-
`bash scripts/deploy.sh image --all` from main moves the fleet onto the next `vNN`.
174
+
`bash scripts/deploy.sh image --gerp <id>`moves one gerp onto the next `vNN`; the fleet at once is deploy.yaml's `runtimes` job (`-f image=build`), until the image × runtime loop joins scripts/fleet.py.
0 commit comments