YugabyteDB graduates from beta to GA. The ysql:// driver is supported across the Atlas CLI and the Atlas Kubernetes Operator, including automatic dev-database provisioning with the yugabytedb/yugabyte image.
YugabyteDB is a distributed SQL database with a PostgreSQL-compatible YSQL API. Atlas support for it graduates from beta to GA: the ysql:// driver is now a first-class target across both the Atlas CLI and the Atlas Kubernetes Operator.
CLI: the ysql:// Driver
Use the ysql:// scheme to point any Atlas command at a YugabyteDB YSQL endpoint. Inspect an existing database:
atlas schema inspect \-u "ysql://yugabyte@localhost:5433/yugabyte?search_path=public&sslmode=disable"
Plan a declarative migration against the same database, with a YugabyteDB dev database provisioned via docker://ysql/latest:
atlas schema apply \-u "ysql://yugabyte@localhost:5433/yugabyte?search_path=public&sslmode=disable" \--to file://schema.hcl \--dev-url "docker://ysql/latest"
Versioned workflows (atlas migrate diff, atlas migrate apply) work against the same URL. See the YugabyteDB guide for an end-to-end walkthrough of declarative and versioned migrations.
Kubernetes Operator: AtlasSchema for YSQL
The Atlas Operator now reconciles AtlasSchema and AtlasMigration resources against YugabyteDB. The CRD shape is unchanged from PostgreSQL: point urlFrom at a secret holding a ysql:// URL, mount a schema.sql ConfigMap, and the operator handles the rest:
apiVersion: db.atlasgo.io/v1alpha1kind: AtlasSchemametadata:name: ysqlspec:urlFrom:secretKeyRef:name: db-credskey: urlcloud:tokenFrom:secretKeyRef:name: atlas-tokenkey: ATLAS_TOKENschema:configMapKeyRef:name: ysql-schemakey: schema.sql
When the operator detects a YSQL URL it provisions a dev database from the yugabytedb/yugabyte image automatically, so no extra configuration is needed to plan migrations inside the cluster.
Next Steps
Read the Automatic YugabyteDB Schema Migrations guide to set up Atlas against a local or remote YugabyteDB cluster.