Before you begin
You need:- A Verglas Cloud account at verglas.dev.
- Git and a Rust toolchain for the current source installation.
- A shell on macOS, Linux, or Windows.
1
Install the CLI
Clone the repository and install the
verglas command:2
Log in
Start the browser authorization flow:The command opens an authorization page and completes through a loopback redirect. A successful login prints the account, tenant, bucket, warehouse, and non-secret credential file paths.Use the device flow on a headless machine:Use an API key in automation without putting the key in shell history:Login verifies authorization before it writes any file. It stores the control-plane token and scoped lakehouse credentials under
~/.verglas/credentials/, with mode 0600, and updates ~/.verglas/config.toml.3
Confirm cloud access
List workers in the tenant:An empty list confirms authentication when the tenant has no workers yet. Add
--json before the subcommand for machine-readable output:4
Store the worker secret
Store an upstream API key. Verglas never returns the stored value:Worker specifications refer to this value as
@secret:ORDERS_API_KEY.5
Create a worker specification
Save the following file as
orders-worker.toml. The filled example runs every five minutes, targets analytics.orders_raw, and requests 0.25 vCPU with 256 MiB of memory.orders-worker.toml
This manifest demonstrates the current portable packaging contract. Use the TypeScript or Rust worker SDK for production table reads and commits. The SDK guides include filled worker code.
6
Create and run the worker
Create the cloud worker, dispatch one run, and inspect its logs:The
run command dispatches the worker once. The cron trigger continues to dispatch runs on the configured schedule.Develop locally, then push
The same manifest can register on a local server:push copies the portable worker specification and bundled files to the cloud. Secret values never travel with the worker. Create each referenced secret in the destination plane before the first run.
Next steps
- Read Workers before implementing retries or backfills.
- Use the TypeScript SDK to define a fetch-capable worker.
- Deploy a service image with Containers.