__  __    _    ___ _   _ _____ ____      _    __  __ _____
|  \/  |  / \  |_ _| \ | |  ___|  _ \    / \  |  \/  | ____|
| |\/| | / _ \  | ||  \| | |_  | |_) |  / _ \ | |\/| |  _|
| |  | |/ ___ \ | || |\  |  _| |  _ <  / ___ \| |  | | |___
|_|  |_/_/   \_\___|_| \_|_|   |_| \_\/_/   \_\_|  |_|_____|

── SECURE OPERATOR TERMINAL ── AUTHORIZED USE ONLY

PRESS ENTER TO LOGON █

 MAINFRAME/OS 
NODE —
—
OPER —

SETTINGS

PALETTE · T CYCLES

—
GROUP
GROUP
NOTES

              
MOUNT BUNDLE
DEPLOY PLAN
JOB OUTPUT

                  
INSTALLED APPS
BUNDLE FORMAT

An archive with your files and an optional app.json at the top.

{
  "name": "myapp",           // unit app-myapp.service
  "version": "v1.2.0",
  "kind": "binary",          // or "static"
  "exec": "myapp",           // linux binary in bundle
  "path": "/myapp",          // URL path on the site
  "health": "/healthz",      // checked after start
  "env": { "LOG_LEVEL": "info" }
}

The app gets ADDR, PORT, BASE_PATH and DATA_DIR. Listen on ADDR; serve under BASE_PATH.

Secrets: load a secrets.env in the deploy plan, never in the bundle.

Static site: "kind": "static", "static_dir": "dist".

— CPU — MEM — SWAP — DISK — READY █

 CONFIRM