Update

Update the control plane and server agents safely, with rollback guidance.

One update, one click. From Settings -> Deplo -> Updates, Deplo updates the panel, restarts it, and then brings every connected server to the agent that version is paired with, on its own, one server at a time.

  • The control plane (this panel) goes first.
  • The server agents - one per host - follow once the panel is back.
  • Database migrations run automatically at startup.

Every Deplo version is paired with one agent version. You never pick an agent version, and agents only ever move forward: there is no downgrade path.

Release history

Settings -> Deplo -> Updates shows the installed version, available releases, release notes, and agent versions across the fleet.

  • Check now refreshes the release list. It is always there.
  • The installed release is marked Installed.
  • The page shows which agents are behind, and where each update stands.

When the panel and every agent are current, the page says Everything is up to date and shows no update button at all. A button only appears when there is something to install, or a failed update to retry.

Update the control plane

Click the Update button

It names the version it will install. Confirm, and the machine Deplo runs on pulls the new image and restarts the panel.

If an offline server runs an agent the new version no longer supports, the confirmation names it: edge-2 is offline on v0.3.0 and will be unusable until its agent updates.

Wait about a minute

The page reloads itself when Deplo answers again on the new version.

Watch the servers follow

The Server agents card counts them as they come up to date. Nothing to click.

Three things happen around it that are worth knowing:

  • A pg_dump of the panel's database lands in /opt/deplo/backups first, and the newest three are kept.
  • Secrets are never rotated, and no setting is reset.
  • If the new version does not come up, the previous one is put back automatically. The panel says so instead of leaving you on a spinner.

Your apps keep running throughout

They are containers on hosts, not part of the control plane. A panel that's down means you can't deploy or read logs for a minute, it does not mean your sites are down.

If the panel cannot update itself

On the machine Deplo runs on:

deplo update

It follows the Canary releases switch (Settings -> Deplo -> Advanced): on, it takes the newest release, canary or not; off, only stable ones. It never installs a version older than the one running, so turning canaries off does not move a canary panel back to stable.

Without the deplo command, run the installer instead:

curl -fsSL https://deplo.build/install.sh | bash

The existing /opt/deplo/.env switches the installer to update mode.

To pin a version rather than take the newest:

curl -fsSL https://deplo.build/install.sh | \
  DEPLO_VERSION=0.1.0 bash

The agents follow on their own

Once the panel is back, Deplo walks the fleet by itself: remote servers first, the machine Deplo runs on last, one at a time. The Server agents card on the Updates tab counts them down, and every agent it updates is recorded in Activity under your name.

An update can fail for a server without holding up the others:

  • A deploy is running on it. An update restarts the agent, which would drop the build.
  • It is unreachable right now.
  • Its agent is too old to update itself.

Deplo retries a failed server on its own: after 1 minute, then 2, 4, 8, up to once an hour, for 24 hours from the first failure. The card shows each one, for example Update failed, retrying in 4 min.

If a server takes the new agent and does not come back, Deplo stops updating the rest until that one recovers. A broken agent release reaches one server, not all of them.

Retry an update by hand

The Retry now button appears only once an update has failed, on the server's page and on its row in the Server agents card. It is for instance admins.

  • It runs an attempt at once and cancels the retry that was scheduled.
  • It is disabled while an attempt is running, so two never run on one server.
  • If it fails too, the automatic retries carry on. The 24 hours do not start again.
  • After the 24 hours, Deplo stops retrying and the button is the way to try again. A server that was offline gets one more automatic attempt when it comes back.

When a server is unusable

Each Deplo version supports agents down to a minimum. A server whose agent is older than that is unusable until its agent updates:

  • Deploys, logs, the console, backups and every other action on it are refused with This server is being updated. Deplo retries on its own; an instance admin can retry it now.
  • The apps on it keep running. Nothing is stopped.
  • Instance admins see a banner across the dashboard, and the Server unusable until it updates alert goes to your notification channels.

The fix is the agent update itself: automatic, or Retry now. An agent newer than the one Deplo is paired with is fine and left alone.

Before you update again

  • Agents cannot be downgraded. An agent newer than the panel's own is left as it is.
  • Some features need a newer agent. When one is missing, Deplo says so rather than silently doing something else.
  • Re-running the installer is safe. It is what the button does, so running it by hand is never a workaround.
  • Read the release notes for a minor bump. During 0.x, minor means something you notice: a feature, changed behavior, a database migration, or a newer agent required.
  • Back up before a big jump. Migrations apply at boot and are not reversed by rolling the image back.

Troubleshooting

Panel that won't come back after an update, an image that won't pull, or an agent update that fails: see Servers and agents troubleshooting.

Next steps

Did this page help you?

On this page