Skip to content

CLI: every deployment method, placement, workspaces, databases, services, servers, domains - #2

Merged
DJTJ21 merged 1 commit into
mainfrom
feat/cli-full-ui
Oct 19, 2026
Merged

DJTJ21 merged 1 commit into
mainfrom
feat/cli-full-ui

Conversation

@DJTJ21

@DJTJ21 DJTJ21 commented Oct 19, 2026

Copy link
Copy Markdown
Collaborator

Follows #1: most of what the iDeploy UI does, from the terminal.

Deploy (all the methods)

idem deploy this folder
--git <url> [--branch] [--base-dir] a Git repository
--image <ref> [--tag] [--registry-user] a registry image (password in IDEM_REGISTRY_PASSWORD, never on the command line)
--compose <file> your own stack, as a service (created then started)
--template <name> a catalogue service
  • Placement of a new workspace: IDEM's infrastructure (--region when the plan allows it) or one of your servers (--server). On a terminal, the CLI asks.
  • Build settings: --install, --build, --start, --port, --publish-dir.
  • An application that deploys from Git or from an image is rebuilt from its source. --upload sends the folder instead.

New commands

  • Applications: start, stop, destroy (asks to type the name), deployments, domains ls/add/rm (DNS and HTTPS state, record to create).
  • Workspaces: ls, create --server/--region, show (what runs, internal addresses), rm.
  • Databases (9 engines): db ls/create/show/start/stop/restart/backup/rm. show --reveal gives the credentials.
  • Services: ls/start/stop/restart/rm, templates [search].
  • Your servers: servers ls/add/check/setup/rm. add generates the SSH key (or uses yours), shows the authorized_keys line, checks the server, then installs Docker and the proxy.
  • The idem menu is extended, and the README is updated.

Checks

Done in a Node 20 container: tsc --noEmit, build, --help and the error paths (two sources at once, not signed in).

- deploy: this folder, --git (branch, sub-folder), --image (private
  registry), --compose (a service), --template (catalogue); a new
  workspace on IDEM's infrastructure (--region) or on your server
  (--server); build settings; an application from Git or an image is
  rebuilt from its source (--upload sends the folder instead).
- servers: add (SSH key generated or yours, readiness checks, Docker and
  proxy installed), check, setup, rm.
- workspaces: ls, create (--server / --region), show (what runs, how it
  is reached), rm.
- db: ls, create (+ start), show (address, credentials; --reveal),
  start/stop/restart, backup, rm — the 9 engines.
- services: ls, start/stop/restart, rm; templates [search].
- domains: ls (DNS/HTTPS state), add (DNS record to create), rm.
- start, stop, destroy, deployments; menu extended.
@DJTJ21
DJTJ21 merged commit 309e1c7 into main Oct 19, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant