forked from testcontainers/testcontainers-scala
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMilvusContainer.scala
36 lines (28 loc) · 1.11 KB
/
MilvusContainer.scala
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.dimafeng.testcontainers
import org.testcontainers.milvus.{MilvusContainer => JavaMilvusIOContainer}
import org.testcontainers.utility.DockerImageName
case class MilvusContainer(
dockerImageName: DockerImageName = DockerImageName.parse(MilvusContainer.defaultDockerImageName),
etcdEndpoint: Option[String] = None
) extends SingleContainer[JavaMilvusIOContainer] {
override val container: JavaMilvusIOContainer = {
val c = new JavaMilvusIOContainer(dockerImageName)
etcdEndpoint.foreach(c.withEtcdEndpoint)
c
}
def endpoint: String = container.getEndpoint
}
object MilvusContainer {
val defaultImage = "milvusdb/milvus"
val defaultTag = "v2.4.4"
val defaultDockerImageName = s"$defaultImage:$defaultTag"
case class Def(
dockerImageName: DockerImageName = DockerImageName.parse(MilvusContainer.defaultDockerImageName),
etcdEndpoint: Option[String] = None
) extends ContainerDef {
override type Container = MilvusContainer
override def createContainer(): MilvusContainer = {
new MilvusContainer(dockerImageName, etcdEndpoint)
}
}
}