Skip to content

deployments

These three commands form the deployment workflow. Run them in order the first time; after that, deploy and promote are the only ones you need regularly.


Link the current directory to a web app. This saves .bentocloud.json locally so that deploy and promote know where to send your code.

konigle cloud link --computer my-server --webapp my-app

If you omit --computer or --webapp, the CLI fetches the available options from the API and prompts you to choose.

konigle cloud link
# → Use computer "my-server"? [Y/n]:
# → Use webapp "my-app"? [Y/n]:

Options

Option Required Description
--computer No Computer name. Prompted interactively if omitted
--webapp No Web app name. Prompted interactively if omitted

Example output

Resolving uat space... done
Linked to:
  Computer:     my-server
  WebApp:       my-app
  UAT space ID: 12345

Saved to .bentocloud.json

!!! tip Add .bentocloud.json to your .gitignore — it is local configuration that should not be committed.


deploy

Package the current directory and upload it to the uat space.

konigle cloud deploy

Deploys from a different directory:

konigle cloud deploy --path /path/to/app

Options

Option Required Description
--path No Directory to deploy. Defaults to .
--name No Human-readable label for this deployment
--detach, -d No Print deployment ID and exit without waiting

Prerequisites

Your project root must contain:

  • bentocloud.toml — defines the processes your app runs
  • Dockerfile — used to build the container image

Packaging behaviour

  • Git repository — the CLI runs git archive HEAD to package exactly what is committed. Your working tree must be clean (no uncommitted changes).
  • Non-git directory — the CLI walks the filesystem and excludes patterns from .bentocloudignore (or a built-in default list if that file is absent).

Default exclusions when not in a git repo:

.git, __pycache__, *.pyc, *.pyo, .bentocloud.json, .env, node_modules, .DS_Store

Example output

Deploying from: ./
  Computer: my-server
  WebApp:   my-app
  Space:    uat  (id: 12345)
Packaging... (42 KB, git mode)
Uploading... done
Deployment queued (job: ghi-789)
Waiting for deployment...
Deployed successfully.

promote

Copy the live uat image to production. No re-upload or rebuild required.

konigle cloud promote

Options

Option Required Description
--detach, -d No Print job ID and exit without waiting

Example output

Promoting "my-app" uat → production...
Promotion queued (job: jkl-012)
Waiting...
Production updated.

job status

Check the status of any async job by its ID. Useful when you used --detach on a previous command.

konigle cloud job status <job-id>

Example output

Job:    abc-123
Task:   provision_computer
Status: success
Done:   2024-01-15T10:30:00+00:00

Exits with code 1 if the job has failed, so it can be used in scripts:

konigle cloud job status <job-id> || echo "Job failed"