Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.ilyama.golain.io/llms.txt

Use this file to discover all available pages before exploring further.

Just-in-Time Registration (JITR) lets Omega enroll with Golain before the first MQTT connection. The platform returns a device certificate and broker URL; Omega stores them locally and connects with mTLS.

When to use JITR

ScenarioApproach
Factory provisioning with bootstrap certJITR
Manual device in console + MQTT passwordConnect with username/password
Dev laptop against local stackJITR with vm-edge bootstrap cert or auth bypass

Configuration

Enable under connection.jitr in client YAML (see clients/ilyama-edge.yaml):
FieldDescription
api_base_urlPlatform API (for example https://api.ilyama.golain.io)
bootstrap_cert_pathFleet bootstrap PEM from operator
cert_dirStorage for issued device.crt / device.key
org_id, project_id, fleet_id, device_nameMust match console registration
Environment overrides use *_env suffix fields for each value.

Flow

  1. Register device name in console or platform-tui devices create.
  2. Deploy Omega built with CLIENT=ilyama-edge (or custom YAML with JITR block).
  3. On startup Omega calls POST /core/api/v1/devices/jitr with bootstrap mTLS.
  4. Platform returns MQTT broker URL and device certificate.
  5. Omega patches connection.server_url and connects with issued cert.

Idempotency

Enrollment sends a stable Idempotency-Key derived from org_id|fleet_id|device_name. Safe to retry on network failure.

Example

make build-client CLIENT=ilyama-edge GOOS=linux GOARCH=arm64
export OMEGA_AUTH_TOKEN=...
# bootstrap cert mounted at path configured in YAML
./omega-linux-arm64

Troubleshooting

IssueCheck
404 / not foundDevice name registered in correct fleet?
Cert rejectedBootstrap cert matches fleet? Clock skew?
Wrong brokerAPI base URL points to same stack as console?
Edge data sync for SQLite replication after connect