Repository: incubator-brooklyn Updated Branches: refs/heads/master a850f450a -> 26f667707
DETECT_MACHINE_DETAILS SshMachineLocation config Adds new configkey for controlling automatic detection of machine details. Defaults to true (matching previous behaviour); setting to false stops SshMachineLocation opening up an SSH channel and running commands. Useful in situations where the application requires strict control over the use of SSH. Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/9b91b4fa Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/9b91b4fa Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/9b91b4fa Branch: refs/heads/master Commit: 9b91b4faa39c62b11d598f29ee0981689a03f388 Parents: c563e65 Author: Richard Downer <[email protected]> Authored: Thu Jan 22 13:32:37 2015 +0000 Committer: Richard Downer <[email protected]> Committed: Thu Jan 22 14:06:43 2015 +0000 ---------------------------------------------------------------------- .../main/java/brooklyn/location/basic/SshMachineLocation.java | 7 +++++++ .../main/java/brooklyn/location/jclouds/JcloudsLocation.java | 3 ++- 2 files changed, 9 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9b91b4fa/core/src/main/java/brooklyn/location/basic/SshMachineLocation.java ---------------------------------------------------------------------- diff --git a/core/src/main/java/brooklyn/location/basic/SshMachineLocation.java b/core/src/main/java/brooklyn/location/basic/SshMachineLocation.java index c7b202a..2b7d8b1 100644 --- a/core/src/main/java/brooklyn/location/basic/SshMachineLocation.java +++ b/core/src/main/java/brooklyn/location/basic/SshMachineLocation.java @@ -135,6 +135,9 @@ public class SshMachineLocation extends AbstractLocation implements MachineLocat MachineDetails.class, "machineDetails"); + public static final ConfigKey<Boolean> DETECT_MACHINE_DETAILS = ConfigKeys.newBooleanConfigKey("detectMachineDetails", + "Attempt to detect machine details automatically. Works with SSH-accessible Linux instances.", true); + @SetFromFlag protected String user; @@ -896,6 +899,10 @@ public class SshMachineLocation extends AbstractLocation implements MachineLocat } protected MachineDetails inferMachineDetails() { + boolean detectionEnabled = getConfig(DETECT_MACHINE_DETAILS); + if (!detectionEnabled) + return new BasicMachineDetails(new BasicHardwareDetails(-1, -1), new BasicOsDetails("UNKNOWN", "UNKNOWN", "UNKNOWN")); + Tasks.setBlockingDetails("Waiting for machine details"); try { return BasicMachineDetails.forSshMachineLocation(this); http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9b91b4fa/locations/jclouds/src/main/java/brooklyn/location/jclouds/JcloudsLocation.java ---------------------------------------------------------------------- diff --git a/locations/jclouds/src/main/java/brooklyn/location/jclouds/JcloudsLocation.java b/locations/jclouds/src/main/java/brooklyn/location/jclouds/JcloudsLocation.java index a5f32a0..ec9215e 100644 --- a/locations/jclouds/src/main/java/brooklyn/location/jclouds/JcloudsLocation.java +++ b/locations/jclouds/src/main/java/brooklyn/location/jclouds/JcloudsLocation.java @@ -1588,7 +1588,8 @@ public class JcloudsLocation extends AbstractCloudMachineProvisioningLocation im .configure("node", node) .configureIfNotNull(CLOUD_AVAILABILITY_ZONE_ID, nodeAvailabilityZone) .configureIfNotNull(CLOUD_REGION_ID, nodeRegion) - .configure(CALLER_CONTEXT, setup.get(CALLER_CONTEXT))); + .configure(CALLER_CONTEXT, setup.get(CALLER_CONTEXT)) + .configure(SshMachineLocation.DETECT_MACHINE_DETAILS, setup.get(SshMachineLocation.DETECT_MACHINE_DETAILS))); } else { LOG.warn("Using deprecated JcloudsSshMachineLocation constructor because "+this+" is not managed"); return new JcloudsSshMachineLocation(MutableMap.builder()
