This commit is contained in:
Simon Vieille 2024-03-16 15:23:47 +01:00
parent 3e1f057064
commit 1398fd28e6
Signed by untrusted user: deblan
GPG key ID: 579388D585F70417
2 changed files with 32 additions and 15 deletions

17
app/app.go Normal file
View file

@ -0,0 +1,17 @@
package app
import (
"database/sql"
"fmt"
"gitnet.fr/deblan/database-anonymizer/config"
)
type App struct {
}
func (a *App) Run(db *sql.DB, schema config.SchemaConfig) error {
fmt.Printf("%+v\n", db)
fmt.Printf("%+v\n", schema)
return nil
}

30
main.go
View file

@ -1,43 +1,43 @@
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
_ "github.com/lib/pq"
"github.com/urfave/cli/v2"
"gitnet.fr/deblan/database-anonymizer/app"
"gitnet.fr/deblan/database-anonymizer/config"
"log"
"gitnet.fr/deblan/database-anonymizer/logger"
"os"
)
func main() {
app := &cli.App{
Flags: []cli.Flag{
&cli.StringFlag{
Name: "type",
Value: "",
Usage: "type of database (eg: mysql)",
},
&cli.StringFlag{
Name: "dsn",
Value: "",
Usage: "DSN (eg: mysql://user:pass@host/dbname)",
},
&cli.StringFlag{
Name: "config",
Value: "config.yaml",
Name: "schema",
Value: "schema.yaml",
Usage: "Configuration file",
},
},
Action: func(c *cli.Context) error {
err, databaseConfig := config.LoadDatabaseConfig(c)
databaseConfig, err := config.LoadDatabaseConfig(c.String("dsn"))
logger.LogFatalExitIf(err)
if err != nil {
log.Fatalf(err.Error())
os.Exit(1)
}
db, err := sql.Open(databaseConfig.Type, databaseConfig.Dsn)
logger.LogFatalExitIf(err)
fmt.Printf("%+v\n", databaseConfig)
schema, err := config.LoadSchemaConfigFromFile(c.String("schema"))
logger.LogFatalExitIf(err)
return nil
app := app.App{}
return app.Run(db, schema)
},
}