|
|
|
@ -15,7 +15,6 @@ import (
|
|
|
|
|
"github.com/jackc/pgx/v4/pgxpool"
|
|
|
|
|
"go.uber.org/dig"
|
|
|
|
|
"google.golang.org/grpc"
|
|
|
|
|
"google.golang.org/grpc/credentials/insecure"
|
|
|
|
|
|
|
|
|
|
_ "git.vdhsn.com/barretthousen/barretthousen/src/runner/internal/domain/liveauctioneers"
|
|
|
|
|
)
|
|
|
|
@ -32,6 +31,8 @@ type (
|
|
|
|
|
|
|
|
|
|
var (
|
|
|
|
|
migrate = flag.Bool("migrate", false, "migrates postgres db")
|
|
|
|
|
client = flag.String("client", "", "Runs this service in client mode, to invoke sync job. Takes GRPC endpoint")
|
|
|
|
|
target = flag.String("target", "", "To be used with client mode. The target to sync")
|
|
|
|
|
|
|
|
|
|
//go:embed internal/data/postgres/migrations/*.sql
|
|
|
|
|
dbMigrateScript embed.FS
|
|
|
|
@ -48,6 +49,11 @@ func main() {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (app *runnerApp) Start(ctx context.Context) error {
|
|
|
|
|
if *client != "" {
|
|
|
|
|
kernel.InfoLog.Printf("Client mode: %s - target: %s", *client, *target)
|
|
|
|
|
return nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if *migrate {
|
|
|
|
|
kernel.InfoLog.Printf("running db migrations on %v", app.DB_Migrate)
|
|
|
|
|
if err := kernel.MigrateDB(ctx, app.DB_Migrate, dbMigrateScript, "runner"); err != nil {
|
|
|
|
@ -81,15 +87,13 @@ func (app *runnerApp) Start(ctx context.Context) error {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
conn, err := grpc.Dial(app.CatalogEndpoint, grpc.WithTransportCredentials(
|
|
|
|
|
insecure.NewCredentials(),
|
|
|
|
|
))
|
|
|
|
|
if err != nil {
|
|
|
|
|
if err = ioc.Provide(func() (grpc.ClientConnInterface, error) {
|
|
|
|
|
return kernel.DialGRPC(app.CatalogEndpoint)
|
|
|
|
|
}); err != nil {
|
|
|
|
|
return err
|
|
|
|
|
}
|
|
|
|
|
defer conn.Close()
|
|
|
|
|
|
|
|
|
|
if err = ioc.Provide(func() domain.CatalogService {
|
|
|
|
|
if err = ioc.Provide(func(conn grpc.ClientConnInterface) domain.CatalogService {
|
|
|
|
|
return capi.NewCatalogServiceClient(conn)
|
|
|
|
|
}); err != nil {
|
|
|
|
|
return err
|
|
|
|
@ -116,9 +120,6 @@ func (app *runnerApp) Start(ctx context.Context) error {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (app *runnerApp) OnStop(ctx context.Context) {
|
|
|
|
|
if err := kernel.StopGRPCServer(); err != nil {
|
|
|
|
|
kernel.ErrorLog.Printf("could not gracefully stop GRPC server: %v", err)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (app *runnerApp) GetLogLevel() kernel.LogLevel { return app.LogLevel }
|
|
|
|
|