2019-03-03 17:54:43 +01:00
|
|
|
|
package main
|
|
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
|
"flag"
|
|
|
|
|
|
"fmt"
|
2019-06-05 17:56:24 +02:00
|
|
|
|
"github.com/go-jet/jet/generator"
|
2019-03-03 17:54:43 +01:00
|
|
|
|
"os"
|
|
|
|
|
|
)
|
|
|
|
|
|
|
2019-05-24 13:13:13 +02:00
|
|
|
|
var (
|
|
|
|
|
|
host string
|
|
|
|
|
|
port string
|
|
|
|
|
|
user string
|
|
|
|
|
|
password string
|
|
|
|
|
|
sslmode string
|
|
|
|
|
|
params string
|
|
|
|
|
|
dbName string
|
|
|
|
|
|
schemaName string
|
|
|
|
|
|
|
|
|
|
|
|
destDir string
|
|
|
|
|
|
)
|
2019-03-03 17:54:43 +01:00
|
|
|
|
|
|
|
|
|
|
func init() {
|
2019-05-24 13:13:13 +02:00
|
|
|
|
flag.StringVar(&host, "host", "", "Database host path (Example: localhost)")
|
|
|
|
|
|
flag.StringVar(&port, "port", "", "Database port")
|
|
|
|
|
|
flag.StringVar(&user, "user", "", "Database user")
|
|
|
|
|
|
flag.StringVar(&password, "password", "", "The user’s password")
|
|
|
|
|
|
flag.StringVar(&sslmode, "sslmode", "disable", "Whether or not to use SSL")
|
|
|
|
|
|
flag.StringVar(¶ms, "params", "", "Additional connection string parameters.")
|
|
|
|
|
|
|
|
|
|
|
|
flag.StringVar(&dbName, "dbname", "", "name of the database")
|
2019-03-03 17:54:43 +01:00
|
|
|
|
flag.StringVar(&schemaName, "schema", "public", "Database schema name.")
|
|
|
|
|
|
|
2019-05-24 13:13:13 +02:00
|
|
|
|
flag.StringVar(&destDir, "path", "", "Destination dir for generated files.")
|
|
|
|
|
|
|
2019-03-03 17:54:43 +01:00
|
|
|
|
flag.Parse()
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
|
|
2019-05-24 13:13:13 +02:00
|
|
|
|
genData := generator.GeneratorData{
|
|
|
|
|
|
Host: host,
|
|
|
|
|
|
Port: port,
|
|
|
|
|
|
User: user,
|
|
|
|
|
|
Password: password,
|
|
|
|
|
|
SslMode: sslmode,
|
|
|
|
|
|
Params: params,
|
|
|
|
|
|
|
2019-06-11 12:47:35 +02:00
|
|
|
|
DBName: dbName,
|
2019-05-24 13:13:13 +02:00
|
|
|
|
SchemaName: schemaName,
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
fmt.Println(destDir, genData)
|
2019-03-03 17:54:43 +01:00
|
|
|
|
|
2019-05-24 13:13:13 +02:00
|
|
|
|
err := generator.Generate(destDir, genData)
|
2019-03-03 17:54:43 +01:00
|
|
|
|
|
|
|
|
|
|
if err != nil {
|
|
|
|
|
|
fmt.Println(err.Error())
|
|
|
|
|
|
os.Exit(-1)
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
fmt.Println("SUCCESS")
|
|
|
|
|
|
}
|