Repository navigation
Run fresh installs through the shared start - #724
Merged
Merged
Conversation
This comment has been minimized.
This comment has been minimized.
SaladDay
force-pushed
the
run-fresh-installs-through-the-shared-start
branch
from
October 15, 2026 13:10
c8693da to
29b48c8
Compare
Fresh installs now run init, check-config and up like oac apply. Refusals from init and check-config are reported as themselves, a failed start names the services that are not healthy with their log command, and Ctrl-C prints that the installer can be rerun. Docker children ignore OAC_* and COMPOSE_* variables of the caller's shell. Output adds pull and start progress, the effective console origin and, only on a fresh install, the Core key.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
apply(init → check-config → up). The fresh path no longer skips check-config.upfailure saysstartup failed; data retained, rerun the installerand now lists the services that are not healthy plusdocker compose -f <dir>/compose.yaml logs --tail 50 <services>.oac applygets the same, ending in "run oac apply again".oac initprints its final error as a plain stderr line (audit 6).Interrupted; rerun the installer to continue.(oac <cmd>for other commands). The stage is removed and the lock directory reused, pinned by a test that reruns after an interrupt.dockerEnv()helper stripsOAC_*andCOMPOSE_*from every Docker child (compose runner anddockerOutput).Pulling <image>…,Starting services (up to 3 minutes)….--host/--web-port/--public-url:Ignored …; edit .env and run <dir>/oac apply.Core key: <dir>/oac core-key --show; console origin read fromcompose config --format json(web'sOAC_PUBLIC_URL, so it works with any compose default); the "Browsers must open exactly …" hint when a fresh install chose the origin itself (replaces the localhost-only hint).oac applyandrotate-core-keyconfirm; an unknown command prints usage once and works outside an installation; flag errors print once.Why
audit-core findings 5(i), 6, 7 (install.go part), 2; P2 d, e, f, g, h, i, j, m (c, e covered here); probes-mx 4.
Findings found wrong
OAC_REPOSITORYhas callers:deploy/install.shandinstall.ps1read it for the binary download, andoacmust read the same variable or a fork's installer would fetch upstream's compose. Kept.Verification
go vet ./...clean;go test -count=1 ./services/core/cmd/oac/ok;python3 scripts/check-names.pyok;node --test website/tests/translations.test.mjs: tests 1-2 pass.Skipped
make check, real Docker run (all docker calls go through the fake runner).Need help on this PR? Tag
@codesmith-botwith what you need.