Files
go-skeleton/atlas.hcl
T

96 lines
1.9 KiB
HCL

data "external_schema" "gorm_postgres" {
program = ["go", "-C", "tools/atlas-loader", "run", ".", "--dialect", "postgres"]
}
data "external_schema" "gorm_mysql" {
program = ["go", "-C", "tools/atlas-loader", "run", ".", "--dialect", "mysql"]
}
data "external_schema" "gorm_sqlite" {
program = ["go", "-C", "tools/atlas-loader", "run", ".", "--dialect", "sqlite"]
}
env "local_postgres" {
src = data.external_schema.gorm_postgres.url
dev = getenv("DATABASE_DEV_URL")
url = getenv("DATABASE_URL")
migration {
dir = "file://migrations/postgres"
}
format {
migrate {
diff = "{{ sql . \" \" }}"
}
}
dev_url_clean = true
}
env "production_postgres" {
src = data.external_schema.gorm_postgres.url
url = getenv("DATABASE_URL")
migration {
dir = "file://migrations/postgres"
}
format {
migrate {
diff = "{{ sql . \" \" }}"
}
}
}
env "local_mysql" {
src = data.external_schema.gorm_mysql.url
dev = getenv("DATABASE_DEV_URL")
url = getenv("DATABASE_URL")
migration {
dir = "file://migrations/mysql"
}
format {
migrate {
diff = "{{ sql . \" \" }}"
}
}
dev_url_clean = true
}
env "production_mysql" {
src = data.external_schema.gorm_mysql.url
url = getenv("DATABASE_URL")
migration {
dir = "file://migrations/mysql"
}
format {
migrate {
diff = "{{ sql . \" \" }}"
}
}
}
env "local_sqlite" {
src = data.external_schema.gorm_sqlite.url
dev = getenv("DATABASE_DEV_URL")
url = getenv("DATABASE_URL")
migration {
dir = "file://migrations/sqlite"
}
format {
migrate {
diff = "{{ sql . \" \" }}"
}
}
dev_url_clean = true
}
env "production_sqlite" {
src = data.external_schema.gorm_sqlite.url
url = getenv("DATABASE_URL")
migration {
dir = "file://migrations/sqlite"
}
format {
migrate {
diff = "{{ sql . \" \" }}"
}
}
}