feat: 完善后端脚手架基础能力
This commit is contained in:
@@ -1,19 +1,21 @@
|
||||
data "external_schema" "gorm" {
|
||||
program = [
|
||||
"go",
|
||||
"run",
|
||||
"-mod=mod",
|
||||
"atlas_loader.go",
|
||||
]
|
||||
data "external_schema" "gorm_postgres" {
|
||||
program = ["go", "-C", "tools/atlas-loader", "run", ".", "--dialect", "postgres"]
|
||||
}
|
||||
|
||||
env "local" {
|
||||
src = data.external_schema.gorm.url
|
||||
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")
|
||||
exclude = []
|
||||
migration {
|
||||
dir = "file://migrations"
|
||||
dir = "file://migrations/postgres"
|
||||
}
|
||||
format {
|
||||
migrate {
|
||||
@@ -23,12 +25,11 @@ env "local" {
|
||||
dev_url_clean = true
|
||||
}
|
||||
|
||||
env "production" {
|
||||
src = data.external_schema.gorm.url
|
||||
env "production_postgres" {
|
||||
src = data.external_schema.gorm_postgres.url
|
||||
url = getenv("DATABASE_URL")
|
||||
exclude = []
|
||||
migration {
|
||||
dir = "file://migrations"
|
||||
dir = "file://migrations/postgres"
|
||||
}
|
||||
format {
|
||||
migrate {
|
||||
@@ -37,12 +38,58 @@ env "production" {
|
||||
}
|
||||
}
|
||||
|
||||
variable "DATABASE_URL" {
|
||||
type = string
|
||||
default = ""
|
||||
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
|
||||
}
|
||||
|
||||
variable "DATABASE_DEV_URL" {
|
||||
type = string
|
||||
default = ""
|
||||
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 . \" \" }}"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user