Don't rely on sketchy `OsDetails.isLinux()` method. Project: http://git-wip-us.apache.org/repos/asf/brooklyn-library/repo Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-library/commit/195cb9d2 Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-library/tree/195cb9d2 Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-library/diff/195cb9d2
Branch: refs/heads/0.6.0 Commit: 195cb9d211cbc8be1b37c9b8715bc30117efe314 Parents: 256a70f Author: Alasdair Hodge <alasdair.ho...@cloudsoftcorp.com> Authored: Mon Nov 11 15:33:38 2013 +0000 Committer: Alasdair Hodge <alasdair.ho...@cloudsoftcorp.com> Committed: Mon Nov 11 15:33:38 2013 +0000 ---------------------------------------------------------------------- .../entity/database/mariadb/MariaDbSshDriver.java | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/brooklyn-library/blob/195cb9d2/software/database/src/main/java/brooklyn/entity/database/mariadb/MariaDbSshDriver.java ---------------------------------------------------------------------- diff --git a/software/database/src/main/java/brooklyn/entity/database/mariadb/MariaDbSshDriver.java b/software/database/src/main/java/brooklyn/entity/database/mariadb/MariaDbSshDriver.java index 5c85903..327bda2 100644 --- a/software/database/src/main/java/brooklyn/entity/database/mariadb/MariaDbSshDriver.java +++ b/software/database/src/main/java/brooklyn/entity/database/mariadb/MariaDbSshDriver.java @@ -45,16 +45,22 @@ public class MariaDbSshDriver extends AbstractSoftwareProcessSshDriver implement public String getOsTag() { OsDetails os = getLocation().getOsDetails(); + // NOTE: cannot rely on OsDetails.isLinux() to return true for all linux flavours, so + // explicitly test for unsupported OSes, otherwise assume generic linux. if (os == null) return "linux-i686"; - if (os.isLinux()) return "linux-" + (os.is64bit() ? "x86_64" : "i686"); - throw new UnsupportedOperationException("only support linux versions just now"); + if (os.isWindows() || os.isMac()) + throw new UnsupportedOperationException("only support linux versions just now; OS details: " + os); + return "linux-" + (os.is64bit() ? "x86_64" : "i686"); } public String getDownloadParentDir() { + // NOTE: cannot rely on OsDetails.isLinux() to return true for all linux flavours, so + // explicitly test for unsupported OSes, otherwise assume generic linux. OsDetails os = getLocation().getOsDetails(); if (os == null) return "kvm-bintar-hardy-x86"; - if (os.isLinux()) return "kvm-bintar-hardy-" + (os.is64bit() ? "amd64" : "x86"); - throw new UnsupportedOperationException("only support linux versions just now"); + if (os.isWindows() || os.isMac()) + throw new UnsupportedOperationException("only support linux versions just now; OS details: " + os); + return "kvm-bintar-hardy-" + (os.is64bit() ? "amd64" : "x86"); } public String getMirrorUrl() {