Merge pull request #172 from frogfather/fix-pgsql-version-number
Postgresql version change from 9.3 to 10
diff --git a/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlNode.java b/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlNode.java
index ae05ce4..7b368dc 100644
--- a/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlNode.java
+++ b/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlNode.java
@@ -52,7 +52,7 @@
public interface PostgreSqlNode extends SoftwareProcess, HasShortName, DatastoreCommon, DatabaseNode {
@SetFromFlag("version")
- ConfigKey<String> SUGGESTED_VERSION = ConfigKeys.newConfigKeyWithDefault(SoftwareProcess.SUGGESTED_VERSION, "9.3-3");//"9.1-4");
+ ConfigKey<String> SUGGESTED_VERSION = ConfigKeys.newConfigKeyWithDefault(SoftwareProcess.SUGGESTED_VERSION, "10-10-2");//"9.1-4");
@SetFromFlag("configFileUrl")
ConfigKey<String> CONFIGURATION_FILE_URL = ConfigKeys.newStringConfigKey(
diff --git a/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlSshDriver.java b/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlSshDriver.java
index d23b636..8389c2e 100644
--- a/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlSshDriver.java
+++ b/software/database/src/main/java/org/apache/brooklyn/entity/database/postgresql/PostgreSqlSshDriver.java
@@ -106,15 +106,16 @@
*/
@Override
public void install() {
- String version = getEntity().getConfig(SoftwareProcess.SUGGESTED_VERSION);
- String majorMinorVersion = version.substring(0, version.lastIndexOf("-"));
- String shortVersion = majorMinorVersion.replace(".", "");
+ String version = getEntity().getConfig(SoftwareProcess.SUGGESTED_VERSION); //10-10-2
+ String majorMinorVersion = version.substring(0, version.lastIndexOf("-")); //10-10
+ String shortVersion = majorMinorVersion.substring(0, majorMinorVersion.lastIndexOf("-")); //10
String altTarget = "/opt/brooklyn/postgres/";
String altInstallDir = Urls.mergePaths(altTarget, "install/"+majorMinorVersion);
Iterable<String> pgctlLocations = ImmutableList.of(
altInstallDir+"/bin",
+ "/usr/pgsql-"+shortVersion+"/bin",
"/usr/lib/postgresql/"+majorMinorVersion+"/bin/",
"/opt/local/lib/postgresql"+shortVersion+"/bin/",
"/usr/pgsql-"+majorMinorVersion+"/bin",
@@ -132,7 +133,7 @@
.append("which pg_ctl")
.appendAll(Iterables.transform(pgctlLocations, StringFunctions.formatter("test -x %s/pg_ctl")))
.append(installPackage(ImmutableMap.of(
- "yum", "postgresql"+shortVersion+" postgresql"+shortVersion+"-server",
+ "yum", "postgresql"+shortVersion+" postgresql"+shortVersion+"-server postgresql"+shortVersion+"-contrib postgresql"+shortVersion+"-libs" ,
"apt", "postgresql-"+majorMinorVersion,
"port", "postgresql"+shortVersion+" postgresql"+shortVersion+"-server"
), null))
@@ -218,7 +219,7 @@
if (Strings.isBlank(osMajorVersion)) {
if (osName.equals("fedora")) osMajorVersion = "20";
- else osMajorVersion = "6";
+ else osMajorVersion = "7";
log.warn("Insuffient OS version information '"+getMachine().getOsDetails().getVersion()+"' for "+getMachine()+"when installing "+getEntity()+" (yum repos); treating as "+osMajorVersion);
} else {
if (osMajorVersion.indexOf(".")>0)
@@ -227,9 +228,9 @@
return chainGroup(
sudo(commandToDownloadUrlAs(
- format("http://yum.postgresql.org/%s/redhat/rhel-%s-%s/pgdg-%s%s-%s.noarch.rpm", majorMinorVersion, osMajorVersion, arch, osName, shortVersion, version),
- "pgdg.rpm")),
- sudo("rpm -Uvh pgdg.rpm")
+ format("https://download.postgresql.org/pub/repos/yum/%s/redhat/rhel-%s-%s/pgdg-centos%s.noarch.rpm", shortVersion, osMajorVersion, arch, version),
+ "pgrepo.rpm")),
+ sudo("rpm -Uvh pgrepo.rpm")
);
}