S Technologies's Logo

Color

Green
Teal
Indigo
Blue
Purple
Red
Rose

Mode

Light

Compute

Deploy and run every application that is not a front end, on the compute service.

stechbd compute is the group for everything that is not a front end: services that run in a container of their own. It runs the same pipeline as stechbd edge, and the panel decides whether a build is static or runtime from what it produced, not from the word typed. The two groups differ in billing. edge is the service a static site or an SSR front end is billed on, and compute is the service for everything else.

Every verb below takes the same options as its edge counterpart. For what each option does and when to use it, see the edge page. The only option that differs is --allow-major on deploy, deploy:prod and rollback, which exists for compute only.

CommandWhat it does
stechbd compute deployPack this directory, upload it, and release it to production
stechbd compute deploy:prodThe same as deploy, spelled so nobody can mistake what it does
stechbd compute deploy:previewBuild this directory beside production, under a name, with --domain if wanted
stechbd compute lsList deployments, newest first, with where each went
stechbd compute inspectShow one deployment in full, the newest when none is named
stechbd compute logsPrint a build’s output, following it to the end if it is still running
stechbd compute tailFollow what the running application prints, from now
stechbd compute containersList the containers behind the application, for tail --container
stechbd compute rollbackPut an earlier production release back, the previous one by default
stechbd compute promotePut a preview into production, as the same artifact
stechbd compute cancelStop a deployment that has not finished
stechbd compute startStart the application without deploying
stechbd compute stopStop the application, so it serves nothing until started
stechbd compute restartRestart the application without deploying
stechbd compute redeployBuild the application’s git remote again, uploading nothing
stechbd compute stackShow the stack this application runs: each service, its pinned image and its role
stechbd compute service:restartRestart one service of the stack in place, leaving the others running
stechbd compute service:logsFollow what one service of the stack prints, from now
stechbd compute port:requestAsk for a raw TCP or UDP host port; nothing opens until an operator grants it
stechbd compute port:lsList requested and granted host ports and whether each is open
stechbd compute port:rmWithdraw a port request; a granted port can only be revoked by an operator

Examples

bash
# Release a service to production, from a directory linked with project link
stechbd compute deploy

# Follow the build, then check the release
stechbd compute logs
stechbd compute ls --limit 5
bash
# Roll back, allowing a major-version bump of a stateful stack service
stechbd compute rollback --allow-major
bash
# Watch one container of a service after a release
stechbd compute containers
stechbd compute tail --container worker

stechbd compute stack

Shows the stack this application runs: each service, the image it is pinned to, and its role. Use it to see what a stack deployment is made of before restarting or reading the logs of one service. It takes no arguments.

bash
stechbd compute stack [--app <app>]
OptionDescription
--app <app>The application whose stack is shown. An id, or the slug in the linked project.
bash
stechbd compute stack

stechbd compute service:restart

Restarts one service of the stack in place. The other services keep running. Use it when one service is wedged and the rest of the stack is correct.

bash
stechbd compute service:restart <name> [--app <app>]
OptionDescription
<name>The service to restart, as named in the stack. Required
--app <app>The application that owns the service. An id, or the slug in the linked project.
bash
stechbd compute service:restart worker

stechbd compute service:logs

Follows what one service of the stack prints, starting now. It does not show earlier output. Use it to watch one service after a restart or a release, without the output of the others.

bash
stechbd compute service:logs <name> [--app <app>]
OptionDescription
<name>The service whose output is followed. Required
--app <app>The application that owns the service. An id, or the slug in the linked project.
bash
stechbd compute service:logs worker

stechbd compute port:request

Asks for a raw TCP or UDP host port that reaches one service of the stack. A request is not a port: nothing is published until an operator grants it. The panel refuses reserved ports, and its message is printed as it is.

bash
stechbd compute port:request <hostPort> --service <name> [--protocol <tcp|udp>] [--container-port <n>] [--note <text>] [--app <app>]
OptionDescription
<hostPort>The host port to request, from 1 to 65535. Required
--service <name>The service of the stack the port reaches. Required
--protocol <tcp|udp>The protocol. tcp when omitted
--container-port <n>The port inside the container, from 1 to 65535
--note <text>A note attached to the request
--app <app>The application that owns the service. An id, or the slug in the linked project.
bash
# Request a host port for the postgres service
stechbd compute port:request 5432 --service postgres

# Request a UDP port, with a note for the operator
stechbd compute port:request 5353 --service dns --protocol udp --note "internal resolver"

stechbd compute port:ls

Lists the requested and granted host ports for the application, and whether each one is open. Use it to find the id to pass to port:rm, or to check whether a granted port is open.

bash
stechbd compute port:ls [--app <app>]
OptionDescription
--app <app>The application whose ports are listed. An id, or the slug in the linked project.
bash
stechbd compute port:ls

stechbd compute port:rm

Withdraws a port request by its id. A granted port is not removed by this command, because only an operator can revoke one. The command asks first, unless --yes is given.

bash
stechbd compute port:rm <id> [--yes] [--app <app>]
OptionDescription
<id>The port request to withdraw, from port:ls. Required
--yesSkip the confirmation prompt
--app <app>The application that owns the request. An id, or the slug in the linked project.
bash
stechbd compute port:ls
stechbd compute port:rm 12 --yes