Idk why, but testcontainers is borked on Discovery
This commit is contained in:
parent
7d385e48de
commit
8ba5e98c50
1 changed files with 28 additions and 32 deletions
|
@ -1,19 +1,15 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"flag"
|
||||
"time"
|
||||
|
||||
"git.mstar.dev/mstar/goutils/other"
|
||||
"github.com/rs/zerolog/log"
|
||||
"github.com/testcontainers/testcontainers-go"
|
||||
postgresContainer "github.com/testcontainers/testcontainers-go/modules/postgres"
|
||||
"github.com/testcontainers/testcontainers-go/wait"
|
||||
"gorm.io/driver/postgres"
|
||||
"gorm.io/gen"
|
||||
"gorm.io/gorm"
|
||||
|
||||
"git.mstar.dev/mstar/linstrom/config"
|
||||
"git.mstar.dev/mstar/linstrom/shared"
|
||||
"git.mstar.dev/mstar/linstrom/storage-new/models"
|
||||
)
|
||||
|
@ -36,36 +32,36 @@ func main() {
|
|||
other.SetupFlags()
|
||||
flag.Parse()
|
||||
other.ConfigureLogging(nil)
|
||||
// config.ReadAndWriteToGlobal(*shared.FlagConfigFile)
|
||||
config.ReadAndWriteToGlobal(*shared.FlagConfigFile)
|
||||
|
||||
// Set up a temporary postgres container for gorm-gen to do its thing
|
||||
log.Info().Msg("Starting temporary postgres container")
|
||||
pgContainer, err := postgresContainer.Run(
|
||||
context.Background(),
|
||||
"postgres:16.4-alpine",
|
||||
postgresContainer.WithDatabase(dbName),
|
||||
postgresContainer.WithUsername(dbUser),
|
||||
postgresContainer.WithPassword(dbPass),
|
||||
testcontainers.WithWaitStrategyAndDeadline(
|
||||
time.Minute,
|
||||
wait.ForLog("database system is ready to accept connections").
|
||||
WithOccurrence(2).
|
||||
WithStartupTimeout(time.Second*5),
|
||||
),
|
||||
)
|
||||
if err != nil {
|
||||
log.Fatal().Err(err).Msg("Failed to setup temporary postgres container")
|
||||
}
|
||||
log.Info().Msg("Temporary postgres container started")
|
||||
defer func() {
|
||||
if err := testcontainers.TerminateContainer(pgContainer); err != nil {
|
||||
log.Fatal().Err(err).Msg("Failed to terminate temporary postgres container")
|
||||
}
|
||||
log.Info().Msg("Temporary postgres container stopped")
|
||||
}()
|
||||
// log.Info().Msg("Starting temporary postgres container")
|
||||
// pgContainer, err := postgresContainer.Run(
|
||||
// context.Background(),
|
||||
// "postgres:16.4-alpine",
|
||||
// postgresContainer.WithDatabase(dbName),
|
||||
// postgresContainer.WithUsername(dbUser),
|
||||
// postgresContainer.WithPassword(dbPass),
|
||||
// testcontainers.WithWaitStrategyAndDeadline(
|
||||
// time.Minute,
|
||||
// wait.ForLog("database system is ready to accept connections").
|
||||
// WithOccurrence(2).
|
||||
// WithStartupTimeout(time.Second*5),
|
||||
// ),
|
||||
// )
|
||||
// if err != nil {
|
||||
// log.Fatal().Err(err).Msg("Failed to setup temporary postgres container")
|
||||
// }
|
||||
// log.Info().Msg("Temporary postgres container started")
|
||||
// defer func() {
|
||||
// if err := testcontainers.TerminateContainer(pgContainer); err != nil {
|
||||
// log.Fatal().Err(err).Msg("Failed to terminate temporary postgres container")
|
||||
// }
|
||||
// log.Info().Msg("Temporary postgres container stopped")
|
||||
// }()
|
||||
db, err := gorm.Open(
|
||||
// postgres.Open(config.GlobalConfig.Storage.BuildPostgresDSN()),
|
||||
postgres.Open(pgContainer.MustConnectionString(context.Background())),
|
||||
postgres.Open(config.GlobalConfig.Storage.BuildPostgresDSN()),
|
||||
// postgres.Open(pgContainer.MustConnectionString(context.Background())),
|
||||
&gorm.Config{
|
||||
PrepareStmt: false,
|
||||
Logger: shared.NewGormLogger(log.Logger),
|
||||
|
|
Loading…
Reference in a new issue