Ship a .sc.yml and document the detected deploy defaults #8

Merged
geusebio merged 1 commit from feature/deployment-per-branch into main 2026-08-03 07:39:18 +00:00
Owner

The reference project for sc deploy now carries the .sc.yml it is the reference for, and DEPLOYING.md documents the new resolution order.

Pairs with someones.computer_agent#7 — merge that first.

What changed

  • .sc.yml — sets app: example-app, with every other key present and commented so the file doubles as the worked example.
  • .dockerignore — excludes it. It is deploy-tool config the image never needs, and a token: in it would otherwise be packed into the build context and uploaded. Verified: the packed context's content address changes when the line is removed, so the exclusion is really applied.
  • DEPLOYING.md — a new Configuration section covering flag > environment > .sc.yml > detected default, the directory/branch defaults, and the token-in-the-context warning. --deployment and --config join the flag reference, which now maps each flag to its .sc.yml key. The sc deploy examples lose their --app since it is no longer needed here.

Known-gaps table

  • Dropped the .someones.toml row — it never shipped, and .sc.yml is what landed instead.
  • Added a row for the deployment name: sc sends it, and it is stored once the platform PR lands.

Verification

sc deploy --dry-run in this directory, with no other arguments:

Application:  example-app  (from .sc.yml)
Compose:      clean — 2 service(s), 1 build context(s)
  build app              .  sha256:…  (17.5 KiB)

dry-run: packaged but not uploaded

No Deployment: line there because a freshly initialised submodule sits on a detached HEAD — which is itself documented, since it is the normal state for anyone who just ran git submodule update.

Please read the "How this was verified" diff. The upload transcripts in this file are still the original 2026-07-29 live-stack run; only their header lines were updated to the current output format, and the file now says so explicitly rather than implying everything was re-executed.

The reference project for `sc deploy` now carries the `.sc.yml` it is the reference for, and `DEPLOYING.md` documents the new resolution order. Pairs with [someones.computer_agent#7](https://git.grey.ooo/Grey.ooo/someones.computer_agent/pulls/7) — merge that first. ## What changed - **`.sc.yml`** — sets `app: example-app`, with every other key present and commented so the file doubles as the worked example. - **`.dockerignore`** — excludes it. It is deploy-tool config the image never needs, and a `token:` in it would otherwise be packed into the build context and uploaded. Verified: the packed context's content address changes when the line is removed, so the exclusion is really applied. - **`DEPLOYING.md`** — a new *Configuration* section covering `flag > environment > .sc.yml > detected default`, the directory/branch defaults, and the token-in-the-context warning. `--deployment` and `--config` join the flag reference, which now maps each flag to its `.sc.yml` key. The `sc deploy` examples lose their `--app` since it is no longer needed here. ## Known-gaps table - Dropped the `.someones.toml` row — it never shipped, and `.sc.yml` is what landed instead. - Added a row for the deployment name: `sc` sends it, and it is stored once the platform PR lands. ## Verification `sc deploy --dry-run` in this directory, with no other arguments: ``` Application: example-app (from .sc.yml) Compose: clean — 2 service(s), 1 build context(s) build app . sha256:… (17.5 KiB) dry-run: packaged but not uploaded ``` No `Deployment:` line there because a freshly initialised submodule sits on a detached HEAD — which is itself documented, since it is the normal state for anyone who just ran `git submodule update`. **Please read the "How this was verified" diff.** The upload transcripts in this file are still the original 2026-07-29 live-stack run; only their header lines were updated to the current output format, and the file now says so explicitly rather than implying everything was re-executed.
sc can now take every parameter from a project file, and infers the rest from
the checkout, so `sc deploy` needs no arguments here. Adds the .sc.yml this
project is the reference for, documents the four-way resolution order and the
directory/branch defaults, and folds the new --deployment/--config flags into
the flag reference.

The file is excluded via .dockerignore: it is deploy-tool config the image
never needs, and a token in it would otherwise ship inside the build context.

Also drops the .someones.toml entry from the known gaps — it never shipped and
.sc.yml is what landed instead — and records what was and wasn't re-verified,
since the upload transcripts are still the original live-stack run.
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
Grey.ooo/someones.computer_example_app!8
No description provided.