Files
query-orchestration/internal/test/network.go
T
Michael McGuinness 721ca8a6e6 Merged in feature/dockerfileintest (pull request #130)
Dockerfile in Test

* dockerfile

* network

* const
2025-05-03 11:29:10 +00:00

42 lines
871 B
Go

package test
import (
"context"
"fmt"
"log/slog"
"sync"
"testing"
"github.com/docker/docker/api/types/network"
"github.com/docker/docker/client"
"github.com/stretchr/testify/require"
)
const (
networkName = "queryorchestration_test"
)
var (
networkOnce sync.Once
)
func GetNetwork(t testing.TB, ctx context.Context) string {
networkOnce.Do(func() {
cli, err := client.NewClientWithOpts(client.FromEnv, client.WithAPIVersionNegotiation())
require.NoError(t, err)
_, err = cli.NetworkCreate(ctx, networkName, network.CreateOptions{
Driver: network.NetworkBridge,
})
conflictErrorMsg := fmt.Sprintf("Error response from daemon: network with name %s already exists", networkName)
if err != nil && err.Error() != conflictErrorMsg {
require.NoError(t, err)
}
slog.Info("created network", "name", networkName)
})
return networkName
}