Use when a team wants declarative, Terraform-style database schema management or migration linting beyond Flyway and Liquibase: Atlas schema apply, migrate diff against a dev database, migrate lint for destructive or locking changes, and migrate hash, across a dozen databases.
92%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
Passed
No findings from the security scan
Atlas accepts the desired schema as SQL (most common) or as HCL,
Atlas's own schema DSL. Both are desired-state inputs to the same
atlas schema apply and atlas migrate diff commands (Steps 3-4),
passed via --to file://<schema-file>.
The users table from Step 2's SQL example, expressed in HCL:
table "users" {
schema = schema.public
column "id" {
null = false
type = serial
}
column "email" {
null = false
type = varchar(255)
}
primary_key { columns = [column.id] }
index "unique_email" { unique = true; columns = [column.email] }
}Either representation produces the same versioned migrations once
diffed against the --dev-url scratch DB.