mirror of
https://github.com/ebean-orm/ebean.git
synced 2026-11-12 22:41:35 +00:00
Yugabyte - ebean-test support via ebean.test.platform=yugabyte
This commit is contained in:
1 parent
530a75b591
commit
6d0f5aea82
3 files changed
+53
-5
No files matched your search
@@ -35,18 +35,14 @@ public class PlatformAutoConfig {
|
||||
KNOWN_PLATFORMS.put("cockroach", new CockroachSetup());
|
||||
KNOWN_PLATFORMS.put("hana", new HanaSetup());
|
||||
KNOWN_PLATFORMS.put("db2", new Db2Setup());
|
||||
KNOWN_PLATFORMS.put("yugabyte", new YugabyteSetup());
|
||||
}
|
||||
|
||||
private final DatabaseConfig config;
|
||||
|
||||
private final Properties properties;
|
||||
|
||||
private String db;
|
||||
|
||||
private String platform;
|
||||
|
||||
private PlatformSetup platformSetup;
|
||||
|
||||
private String databaseName;
|
||||
|
||||
public PlatformAutoConfig(String db, DatabaseConfig config) {
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package io.ebean.test.config.platform;
|
||||
|
||||
import java.util.Properties;
|
||||
|
||||
class YugabyteSetup implements PlatformSetup {
|
||||
|
||||
@Override
|
||||
public Properties setup(Config config) {
|
||||
int defaultPort = config.isUseDocker() ? 6433 : 5433;
|
||||
config.ddlMode("dropCreate");
|
||||
config.setDefaultPort(defaultPort);
|
||||
config.setUsernameDefault();
|
||||
config.setPasswordDefault();
|
||||
config.setUrl("jdbc:postgresql://${host}:${port}/${databaseName}");
|
||||
String schema = config.getSchema();
|
||||
if (schema != null && !schema.equals(config.getUsername())) {
|
||||
config.urlAppend("?currentSchema=" + schema);
|
||||
}
|
||||
config.setDriver("org.postgresql.Driver");
|
||||
config.datasourceDefaults();
|
||||
return dockerProperties(config);
|
||||
}
|
||||
|
||||
private Properties dockerProperties(Config config) {
|
||||
if (!config.isUseDocker()) {
|
||||
return new Properties();
|
||||
}
|
||||
config.setDockerVersion("2.11.2.0-b89");
|
||||
config.setExtensions("pgcrypto");
|
||||
return config.getDockerProperties();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setupExtraDbDataSource(Config config) {
|
||||
int defaultPort = config.isUseDocker() ? 6433 : 5433;
|
||||
config.setDefaultPort(defaultPort);
|
||||
config.setExtraUsernameDefault();
|
||||
config.setExtraDbPasswordDefault();
|
||||
config.setUrl("jdbc:postgresql://${host}:${port}/${databaseName}");
|
||||
config.setDriver("org.postgresql.Driver");
|
||||
config.extraDatasourceDefaults();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isLocal() {
|
||||
return false;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,3 @@
|
||||
ebean.test.platform=yugabyte
|
||||
datasource.default=yugabyte
|
||||
ebean.test.dbName=unit
|
||||
Reference in new issue
Block a user