@aramb-ai/aramb
v1.0.0-beta16
Published
aramb CLI - cloud deployment and management tool
Readme
aramb
The aramb CLI for deploying and managing applications.
Installation
npm install -g @aramb-ai/arambInstall a specific version:
npm install -g @aramb-ai/[email protected]Authentication
aramb login # log in via OAuth
aramb logout # log out and remove stored credentials
aramb whoami # show current userFor non-interactive use, set aramb_api_token in ~/.aramb/config.json:
{
"aramb_api_token": "your-token"
}Projects
aramb projects list
aramb projects create
aramb projects get
aramb projects update
aramb projects deleteApplications
aramb applications list
aramb applications create
aramb applications get
aramb applications update
aramb applications deleteEnvironments
aramb environments list
aramb environments create
aramb environments get
aramb environments update
aramb environments deleteServices
aramb services list
aramb services create [--from-toml <file>]
aramb services get
aramb services update
aramb services deleteProjects, applications, and services can be declared in an aramb.toml and created in bulk:
aramb services create --from-toml aramb.tomlEach resource has a uniqueIdentifier. Use it to associate resources with each other (e.g. application = 10) and to reference outputs across services (e.g. "${100.outputs.IMAGE_URL}").
project:
[[project]]
uniqueIdentifier = 1
name = "My Project"
tags = ["nodejs"]application:
[[application]]
uniqueIdentifier = 10
name = "My Application"
project = 1service:
[[services]]
uniqueIdentifier = 101
name = "backend-api"
type = "backend"
application = 10
[services.configuration.settings]
image = "${100.outputs.IMAGE_URL}"
publicNet = true
cmd = "npm start"
containerPort = 3000
[[services.configuration.vars]]
key = "NODE_ENV"
value = "production"Secrets
aramb secrets list # list secret key names
aramb secrets get # get key=value pairs
aramb secrets add KEY=value [...] # add or update keys
aramb secrets create KEY=value [...] # create/overwrite all secrets
aramb secrets remove KEY [...] # remove specific keys
aramb secrets delete # delete all secretsBuild
Produce and optionally push a build artifact. aramb build never triggers a
deployment — use aramb deploy for that.
aramb build [path]| Flag | Description |
|------|-------------|
| --service, -s | Target service (slug or UUID) |
| --tag, -t | Additional image tag (defaults to short git SHA) |
| --name, -n | Image name override |
| --push / --no-push | Push the artifact to the registry after building |
| --type | Force frontend (source-pack) or backend (Docker/Railpack); auto-detected when unset |
Frontend services source-pack on --push: the source tree is tarred and pushed
as a frontend-source OCI artifact, and narnia-workers compiles at deploy time
with resolved env vars.
Deploy
aramb deploy [--service <id>] [--from-toml <file>] # trigger a deploy run
aramb deploy --service <id> --image <REF> [--commit-sha <SHA>] \ # report build success
[--branch <B>] [--image-digest <D>] # (build-type service)
aramb deploy --service <id> --error "<msg>" # report build failure
# (build-type service)
aramb deploy --service <id> --image <REF> # update settings.image + deploy
# (non-build service)
aramb deploy status [--loop]
aramb deploy history
aramb deploy details--image dispatches by service type. For a build service it reports build
success via POST /api/v1/services/{id}/complete-build. For any other service
type it keeps the legacy behavior: updates settings.image then triggers a
fresh deploy. --image and --error are mutually exclusive; --error is
build-type only.
CI sequence for build-type services
aramb build --push --service my-build-svc --tag $GITHUB_SHA
aramb deploy --service my-build-svc \
--image registry.example.com/myapp/my-build-svc:$GITHUB_SHA \
--commit-sha $GITHUB_SHA \
--branch $GITHUB_REF_NAME
# on failure:
aramb deploy --service my-build-svc --error "build failed; see job logs"Logs
aramb logs stream # stream live logs
aramb logs history # view historical logsHarbor
Run a browser/SOCKS proxy tunnel session:
aramb harbor [--services <list>] [--public]Expose
Expose local services via a public URL:
aramb expose list
aramb expose create
aramb expose update <name>
aramb expose delete <name>
aramb expose run [client-name]Agent
Manage local agent connections:
aramb agent connect <agent-id>
aramb agent disconnect <agent-id> [--teardown]
aramb agent status <agent-id>
aramb agent prunearamb update # update CLI to latest version