Skip to content

Commit

Permalink
Vagrant box creation: Created Database config classes. Merged liquiba…
Browse files Browse the repository at this point in the history
…se-sdk module into main liquibase-core
  • Loading branch information
nvoxland committed Jan 14, 2014
1 parent 64ced03 commit 2e6a880
Show file tree
Hide file tree
Showing 39 changed files with 612 additions and 201 deletions.
16 changes: 15 additions & 1 deletion liquibase-core/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,23 @@
</properties>

<dependencies>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
<version>1.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
<scope>compile</scope>
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
<scope>compile</scope>
</dependency>

<dependency>
Expand Down Expand Up @@ -184,6 +197,7 @@
<descriptors>
<!-- create the distribution archives -->
<descriptor>src/main/resources/assembly/bin.xml</descriptor>
<descriptor>src/main/resources/assembly/sdk-bin.xml</descriptor>
</descriptors>
<!--<archive>
<manifestFile>../liquibase-core/src/main/resources/META-INF/MANIFEST.MF</manifestFile>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

import java.util.Arrays;
import java.util.Set;

public class DB2ConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "db2";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getUrl() {
return "jdbc:db2://"+ getHostname() +":50000/lqbase";
}

@Override
public String getVagrantBoxName() {
return "linux.centos.6_4";
}

@Override
public Set<String> getRequiredPackages(String vagrantBoxName) {
Set<String> requiredPackages = super.getRequiredPackages(vagrantBoxName);
requiredPackages.addAll(Arrays.asList("compat-libstdc++-33", "pam.i686", "numactl"));

return requiredPackages;
}

@Override
public String getPuppetInit(String box) {
return "Package <| |> -> Exec['unzip db2']\n" +
"\n" +
"exec {'unzip db2':\n" +
" command => '/bin/tar xfzv /install/db2/*expc.tar.gz',\n"+
" cwd => '/install/db2/',\n" +
" creates => '/install/db2/expc/',\n" +
" path => ['/usr/bin', '/usr/sbin', '/bin'],\n" +
"}\n" +
"\n" +
"exec {'/install/db2/expc/db2setup -r /install/db2/db2expc.rsp':\n"+
" require => [Exec['unzip db2'], User['liquibase'],\n"+
" cwd => '/install/db2/expc',\n"+
" creates => '/opt/ibm/db2/',\n" +
" path => ['/usr/bin', '/usr/sbin', '/bin'],\n" +
"}\n";
}

// @Override
// public Set<String> getRequiredPackages() {
// Set<String> requiredPackages = super.getRequiredPackages();
// requiredPackages.addAll(Arrays.asList("lib32stdc++6"));
//
// return requiredPackages;
// }

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

public class DerbyConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "derby";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getUrl() {
return "jdbc:derby:liquibase;create=true";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

public class FirebirdConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "firebird";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getUrl() {
return "jdbc:firebirdsql:"+ getDatabaseShortName() +"/3050:c:\\firebird\\liquibase.fdb";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

public class H2ConfigStandard extends ConnectionConfiguration {

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getDatabaseShortName() {
return "h2";
}

@Override
public String getUrl() {
return "jdbc:h2:mem:liquibase";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

public class HsqlConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "hsqldb";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getUrl() {
return "jdbc:hsqldb:mem:liquibase";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

public class InformixConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "informix";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getUrl() {
return "jdbc:informix-sqli://" + getHostname() + ":9088/liquibase:informixserver=ol_ids_1150_1";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

public class MSSQLConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "mssql";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getVagrantBoxName() {
return "windows";
}

@Override
public String getUrl() {
return "jdbc:sqlserver://"+ getHostname() +":1433;databaseName=liquibase";
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
package liquibase.database.core.config;

import liquibase.sdk.supplier.database.ConnectionConfiguration;

import java.util.Set;

public class MySQLConfigStandard extends ConnectionConfiguration {
@Override
public String getDatabaseShortName() {
return "mysql";
}

@Override
public String getConfigurationName() {
return NAME_STANDARD;
}

@Override
public String getUrl() {
return "jdbc:mysql://"+ getHostname() +"/liquibase";
}

@Override
public Set<String> getPuppetModules() {
Set<String> modules = super.getPuppetModules();
modules.add("puppetlabs/mysql");
return modules;
}

@Override
public Set<String> getRequiredPackages(String vagrantBoxName) {
return super.getRequiredPackages(vagrantBoxName);
}

@Override
public String getPuppetInit(String box) {
return "class { '::mysql::server':\n" +
" root_password => 'root',\n"+
(getVersion() == null ? "" : " package_ensure => '"+getVersion()+"',\n")+
" override_options => { 'mysqld' => { 'bind_address' => '0.0.0.0' } }, \n" +
"}\n" +
"\n" +
"mysql::db { '"+getPrimaryCatalog()+"':\n" +
" user => '"+ getDatabaseUsername()+"',\n" +
" password => '"+ getDatabasePassword()+"',\n" +
" host => '%',\n" +
" grant => ['all'],\n" +
"}\n" +
"\n" +
"mysql::db { '"+getAlternateCatalog()+"':\n" +
" user => '"+ getAlternateUsername()+"',\n" +
" password => '"+ getAlternateUserPassword()+"',\n" +
" host => '%',\n" +
" grant => ['all'],\n" +
"}\n";

}
}
Loading

0 comments on commit 2e6a880

Please sign in to comment.