Adios Docs

adios.yaml Reference

adios.yaml describes how Adios builds, runs, connects, and publishes your application.

App and Runtime

name: api
region: de
replicas: 2

build_cmd:
  - go build -o /app/api .

start_cmd:
  - /app/api

runtime:
  port: 8080
  cpu: "0.5"
  memory_mb: 512
  disk_mb: 2048
  health_path: /healthz

Command fields use argv-list format. If you need shell behavior, call the shell explicitly:

build_cmd:
  - pnpm install
  - pnpm build

Managed Resources

requires:
  - db
  - cache
  - queue

The requires field links your application to managed resources like databases, caches, and queues. These resources should be created first via the CLI or Web IDE. Supported resource families include Postgres, Redis, RabbitMQ, MongoDB, and MySQL.

When a resource is linked via requires, connection details are automatically injected into your application's environment.

Secrets and Config

env:
  PUBLIC_APP_URL: https://dashboard.example.com

secrets:
  DATABASE_URL: secret://DATABASE_URL
  STRIPE_SECRET_KEY: secret://STRIPE_SECRET_KEY

Use secrets for credentials and private configuration. Runtime config can also include feature flags, environment variables, volumes, and deployment settings managed from the workspace.

Versions, Replicas, and Routing

name: web
region: de
replicas: 2
routable: true

Each deployment creates a runtime version. Adios can keep older versions inspectable and wakeable while routing traffic to the promoted current release. Replicas can run regionally, and public traffic can be served through generated routes, custom domains, CDN, and anycast-backed entry points.

Source and Workspaces

build:
  excludes:
    - node_modules
    - .next

Source artifacts let the Web IDE open the code that produced a deployed app. From a workspace you can edit files, use Git, run previews, inspect logs, and deploy the current version.