Ajay Yadav
Initial deployment of da-discovery-dev
442299c
package com.dalab.discovery.sd.config;
import java.util.Collections;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.testcontainers.containers.JdbcDatabaseContainer;
import org.testcontainers.containers.MySQLContainer;
import org.testcontainers.containers.output.Slf4jLogConsumer;
public class MysqlTestContainer implements ISqlTestContainer {
private static final Logger log = LoggerFactory.getLogger(MysqlTestContainer.class);
private MySQLContainer<?> mysqlContainer;
@Override
public void destroy() {
if (null != mysqlContainer && mysqlContainer.isRunning()) {
mysqlContainer.stop();
}
}
@Override
public void afterPropertiesSet() {
if (null == mysqlContainer) {
mysqlContainer = new MySQLContainer<>("mysql:8.2.0")
.withDatabaseName("DGCrawler")
.withTmpFs(Collections.singletonMap("/testtmpfs", "rw"))
.withLogConsumer(new Slf4jLogConsumer(log))
.withReuse(true);
}
if (!mysqlContainer.isRunning()) {
mysqlContainer.start();
}
}
@Override
public JdbcDatabaseContainer<?> getTestContainer() {
return mysqlContainer;
}
@Override
public String getDriverClassName() {
return "com.mysql.cj.jdbc.Driver";
}
}