amikos-tech/chroma-go

Move to Testcontainers instead of minikube

Closed this issue · 5 comments

//chromaContainer, err := tc.RunContainer(context.Background(), testcontainers.WithImage("chromadb/chroma:0.4.22"))
//if err != nil && strings.Contains(err.Error(), "Cannot connect to the Docker daemon") {
// t.Skip("Docker not available")
//}
//require.NoError(t, err)
//t.Cleanup(func() {
// require.NoError(t, chromaContainer.Terminate(context.Background()))
//})

@tazarov What's the benifit of test containers?

@bjwswang, makes it a bit easier to configure and work with as you can manage the external dependencies you need (e.g. Chroma server) programmatically, which makes CI a little easier (your mileage may vary)

my experience shows that if you have tests that rely on infra setup via external tooling/CI scripts, tests often get flaky and may fail because of tooling or scripts started failing for some reason.

@mdelapenya, we are making the jump :)

Great! Let's us know if we can be of any help