Skip to content

Latest commit

 

History

6 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Orbit Agent

The on-host agent for Orbit — Byte8's zero-downtime deployment automation for Magento 2.

This repository hosts the public installer + release binaries. The agent sits on your deploy host, pulls deployment tasks from the Orbit server, and executes them with Capistrano-style atomic releases, automatic rollback, and real-time status streaming back to the dashboard.

Install

One-liner — auto-detects OS + arch, installs to /usr/local/bin (root) or ~/.local/bin (non-root):

curl -fsSL https://get.byte8.io/orbit-agent | sh

Install and run orbit-agent init in one shot (greenfield or migrating from a single-dir Magento install):

curl -fsSL https://get.byte8.io/orbit-agent | sh -s -- \
  --token=obt_... \
  --server-url=https://orbit.byte8.io \
  --deploy-path=/var/www/your-store

Get a token by creating an environment in the Orbit dashboard at orbit.byte8.io → environment detail → Add Token.

Manual install

If you'd rather skip curl | sh, grab a release tarball directly from the Releases page and extract the orbit-agent binary onto your path. Each release publishes:

  • orbit-agent-x86_64-unknown-linux-musl.tar.gz (x86_64, static — runs on any Linux)
  • orbit-agent-x86_64-unknown-linux-gnu.tar.gz (x86_64, glibc 2.35+)
  • orbit-agent-aarch64-unknown-linux-musl.tar.gz (ARM64, static — runs on any Linux)
  • orbit-agent-aarch64-unknown-linux-gnu.tar.gz (ARM64, glibc 2.35+)

The installer defaults to the musl (static) build, which has no glibc dependency and runs on older distros too. Override with ORBIT_LIBC=gnu only if you specifically want the glibc build and know your host's glibc is 2.35 or newer. Each tarball ships with its own .sha256 for verification.

What the agent does

  • Clones your repo on each deploy, builds in releases/<timestamp>/, swaps the current symlink atomically when the build is healthy.
  • Reuses the previous release's generated/ and pub/static/ via hardlink-copy when fingerprints match (~50 s saved per skipped phase).
  • Detects new themes / modules and runs setup:upgrade only when needed.
  • Auto-rolls back if the post-deploy health check fails or any command errors.
  • Streams stdout / stderr line-by-line to the dashboard for live progress.

Configuration

All configuration lives in the Orbit dashboard — per-environment fields for SSH target, deploy path, shared files / dirs, Magento themes, locales, hooks, build optimization, etc. The agent fetches it from the server on every deploy poll, so there's nothing to edit in orbit-agent.env beyond the bootstrap credentials (server URL + token + environment ID).

Source code

The agent's Rust source lives in a private monorepo. Binaries published here are cross-compiled in CI on tag push (orbit-agent-v*). If you want to audit the install script before piping it to your shell, read it first:

curl -fsSL https://get.byte8.io/orbit-agent

Support

License

MIT — see LICENSE.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages