Skip to main content

Automation

Aether CLI works well in automation when you keep configuration explicit and treat mounts as ephemeral workflow state.

Automation principles

  • Set the service endpoint explicitly.
  • Set cache paths explicitly.
  • Use machine-readable logging when needed.
  • Keep mount directories deterministic.
  • Clean up mounts and local runtime state when the task is finished.

Example shell wrapper

#!/usr/bin/env bash
set -euo pipefail

export AFS_AETHER_SERVER_ENDPOINT='https://grpc.aetherfs.io'
export AFS_AUTH_TOKEN='Bearer <tenant-uuid>:<principal>'
export AFS_AETHER_LOG_FORMAT='json'
export AFS_AETHER_LOG='info'
export AFS_AETHER_CACHE_DIR="${HOME}/.cache/aether-ci"

SESSION_ID="$1"
MOUNT_DIR="$2"

aether mount --session-id "$SESSION_ID" --mount-dir "$MOUNT_DIR"

CI considerations

For CI or batch workers:

  • Use a dedicated cache directory.
  • Keep logs in JSON if another system will parse them.
  • Expose metrics on a local address only if you intend to scrape them.
  • Use short-lived sessions or short-lived workers where possible.

Useful commands for scripts

  • aether mount --session-id ... --mount-dir ...
  • aether stop --session-id ...
  • aether doctor
  • aether metrics show
  • aether logs tail
  • aether config

When not to automate the mount path

If you only need control-plane actions such as creating sessions, approvals, checkpoints, or metadata workflows, prefer the HTTP API rather than launching a local mount.

Use Aether CLI in automation when a local filesystem view is the actual requirement.