feat(manage-server): add --airgap-prep + install-airgap.sh/export-airgap-bundle.sh #21

Merged
amiryahaya merged 2 commits from feat/769-airgap-installer-sync into main 2026-08-18 09:28:39 +02:00
Owner

Summary

Syncs the finished, reviewed air-gap installer work from triton's
scripts/deploy/manage-server/ (triton#769, Tasks 1-3) into this
distribution repo, which is where get.sh --airgap-prep actually
fetches these files from at runtime via curl.

  • Adds manage-server/install-airgap.sh — installs manage-server on
    an air-gapped host from a pre-exported bundle, no network access
    required.
  • Adds manage-server/export-airgap-bundle.sh — packages container
    images + installer files on a connected staging machine.
  • Modifies root get.sh — new --airgap-prep mode that stages the
    installer + air-gap files on a connected machine, then exits before
    installing anything (mirrors install-airgap.sh's own
    no-auto-install stance).

install-airgap.sh and export-airgap-bundle.sh are byte-identical
copies of the reviewed source in triton. The get.sh change is the
same diff applied identically to the file scripts/deploy/get.sh was
originally copied from — verified via diff against this repo's
pre-sync get.sh that no unrelated drift existed.

Related: triton#769

Test plan

  • bash -n get.sh — no output
  • bash -n manage-server/install-airgap.sh — no output
  • bash -n manage-server/export-airgap-bundle.sh — no output
  • cmp confirms install-airgap.sh and export-airgap-bundle.sh
    are byte-identical to the reviewed triton source
  • diff against pre-sync get.sh shows only the expected
    --airgap-prep additions, no unrelated changes lost
## Summary Syncs the finished, reviewed air-gap installer work from `triton`'s `scripts/deploy/manage-server/` (triton#769, Tasks 1-3) into this distribution repo, which is where `get.sh --airgap-prep` actually fetches these files from at runtime via `curl`. - Adds `manage-server/install-airgap.sh` — installs manage-server on an air-gapped host from a pre-exported bundle, no network access required. - Adds `manage-server/export-airgap-bundle.sh` — packages container images + installer files on a connected staging machine. - Modifies root `get.sh` — new `--airgap-prep` mode that stages the installer + air-gap files on a connected machine, then exits before installing anything (mirrors `install-airgap.sh`'s own no-auto-install stance). `install-airgap.sh` and `export-airgap-bundle.sh` are byte-identical copies of the reviewed source in `triton`. The `get.sh` change is the same diff applied identically to the file `scripts/deploy/get.sh` was originally copied from — verified via `diff` against this repo's pre-sync `get.sh` that no unrelated drift existed. Related: triton#769 ## Test plan - [x] `bash -n get.sh` — no output - [x] `bash -n manage-server/install-airgap.sh` — no output - [x] `bash -n manage-server/export-airgap-bundle.sh` — no output - [x] `cmp` confirms `install-airgap.sh` and `export-airgap-bundle.sh` are byte-identical to the reviewed `triton` source - [x] `diff` against pre-sync `get.sh` shows only the expected `--airgap-prep` additions, no unrelated changes lost
Syncs the finished, reviewed air-gap installer work from triton's
scripts/deploy/manage-server/ (Tasks 1-3) into this distribution repo:

- manage-server/install-airgap.sh — installs manage-server on an
  air-gapped host from a pre-exported bundle (no network access needed)
- manage-server/export-airgap-bundle.sh — packages container images +
  installer files on a connected staging machine
- get.sh — new --airgap-prep mode that stages the installer + air-gap
  files on a connected machine, then exits before installing anything

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Updates the reference copies to match the post-final-review content in
the triton repo: podman save -m fix (Critical - avoids silently mistagging
postgres as an extra tag of the manage-server image on podman 4.x),
corrected upgrade guidance in install-airgap.sh's existing-container
warning, get.sh's --airgap-prep now warns on discarded flags, and get.sh
mode set to executable for consistency with the other installer scripts.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
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
primatekuntech/triton-install!21
No description provided.