Repository: incubator-brooklyn Updated Branches: refs/heads/master 6467a91d7 -> d2a5d4b09
VanillaWindowsProcess CatalogConfig: add priority Re-orders the config keys into a sensible order, and adds priority to the CatalogConfig. Removes the default from LAUNCH_COMMAND. Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/b81c72c5 Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/b81c72c5 Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/b81c72c5 Branch: refs/heads/master Commit: b81c72c58ad674db25d727ef5dc2ff0f9cac77fe Parents: 6467a91 Author: Aled Sage <[email protected]> Authored: Wed Oct 7 17:41:07 2015 +0100 Committer: Aled Sage <[email protected]> Committed: Wed Oct 7 17:41:07 2015 +0100 ---------------------------------------------------------------------- .../software/base/VanillaWindowsProcess.java | 72 ++++++++++++-------- 1 file changed, 43 insertions(+), 29 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/b81c72c5/software/base/src/main/java/org/apache/brooklyn/entity/software/base/VanillaWindowsProcess.java ---------------------------------------------------------------------- diff --git a/software/base/src/main/java/org/apache/brooklyn/entity/software/base/VanillaWindowsProcess.java b/software/base/src/main/java/org/apache/brooklyn/entity/software/base/VanillaWindowsProcess.java index 71fccfc..b08e990 100644 --- a/software/base/src/main/java/org/apache/brooklyn/entity/software/base/VanillaWindowsProcess.java +++ b/software/base/src/main/java/org/apache/brooklyn/entity/software/base/VanillaWindowsProcess.java @@ -38,52 +38,66 @@ public interface VanillaWindowsProcess extends AbstractVanillaProcess { ConfigKey<Collection<Integer>> REQUIRED_OPEN_LOGIN_PORTS = ConfigKeys.newConfigKeyWithDefault( SoftwareProcess.REQUIRED_OPEN_LOGIN_PORTS, ImmutableSet.of(5985, 3389)); + + @CatalogConfig(label = "Install PowerShell command", priority=5.5) + ConfigKey<String> INSTALL_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("install.powershell.command", + "powershell command to run during the install phase"); + + @CatalogConfig(label = "Install Command", priority=5) + ConfigKey<String> INSTALL_COMMAND = VanillaSoftwareProcess.INSTALL_COMMAND; + + @CatalogConfig(label = "Customize PowerShell command", priority=4.5) + ConfigKey<String> CUSTOMIZE_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("customize.powershell.command", + "powershell command to run during the customization phase"); + + @CatalogConfig(label = "Customize command", priority=4) + ConfigKey<String> CUSTOMIZE_COMMAND = VanillaSoftwareProcess.CUSTOMIZE_COMMAND; + + @CatalogConfig(label = "Launch PowerShell command", priority=3.5) + ConfigKey<String> LAUNCH_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("launch.powershell.command", + "command to run to launch the process"); + + @CatalogConfig(label = "Launch Command", priority=3) + ConfigKey<String> LAUNCH_COMMAND = ConfigKeys.newConfigKeyWithDefault(VanillaSoftwareProcess.LAUNCH_COMMAND, null); + + @CatalogConfig(label = "Check-running PowerShell Command", priority=2.5) + ConfigKey<String> CHECK_RUNNING_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("checkRunning.powershell.command", + "command to determine whether the process is running"); + + @CatalogConfig(label = "Check-running Command", priority=2) + ConfigKey<String> CHECK_RUNNING_COMMAND = VanillaSoftwareProcess.CHECK_RUNNING_COMMAND; + + @CatalogConfig(label = "Stop PowerShell Command", priority=1.5) + ConfigKey<String> STOP_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("stop.powershell.command", + "command to run to stop the process"); + + @CatalogConfig(label = "Stop Command", priority=1) + ConfigKey<String> STOP_COMMAND = VanillaSoftwareProcess.STOP_COMMAND; + ConfigKey<String> PRE_INSTALL_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("pre.install.powershell.command", "powershell command to run during the pre-install phase"); + ConfigKey<String> POST_INSTALL_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("post.install.powershell.command", "powershell command to run during the post-install phase"); + ConfigKey<String> PRE_LAUNCH_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("pre.launch.powershell.command", "powershell command to run during the pre-launch phase"); + ConfigKey<String> POST_LAUNCH_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("post.launch.powershell.command", "powershell command to run during the post-launch phase"); + ConfigKey<Boolean> PRE_INSTALL_REBOOT_REQUIRED = ConfigKeys.newBooleanConfigKey("pre.install.reboot.required", "indicates that a reboot should be performed after the pre-install command is run", false); + ConfigKey<Boolean> INSTALL_REBOOT_REQUIRED = ConfigKeys.newBooleanConfigKey("install.reboot.required", "indicates that a reboot should be performed after the install command is run", false); + ConfigKey<Boolean> CUSTOMIZE_REBOOT_REQUIRED = ConfigKeys.newBooleanConfigKey("customize.reboot.required", "indicates that a reboot should be performed after the customize command is run", false); - @CatalogConfig(label = "Launch Command") - ConfigKey<String> LAUNCH_COMMAND = VanillaSoftwareProcess.LAUNCH_COMMAND; - - @CatalogConfig(label = "Launch PowerShell command") - ConfigKey<String> LAUNCH_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("launch.powershell.command", - "command to run to launch the process"); - - @CatalogConfig(label = "Check Running Command") - ConfigKey<String> CHECK_RUNNING_COMMAND = VanillaSoftwareProcess.CHECK_RUNNING_COMMAND; - - @CatalogConfig(label = "Check Running PowerShell Command") - ConfigKey<String> CHECK_RUNNING_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("checkRunning.powershell.command", - "command to determine whether the process is running"); - - @CatalogConfig(label = "Stop PowerShell Command") - ConfigKey<String> STOP_COMMAND = VanillaSoftwareProcess.STOP_COMMAND; - - @CatalogConfig(label = "Stop Command") - ConfigKey<String> STOP_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("stop.powershell.command", - "command to run to stop the process"); - ConfigKey<String> CUSTOMIZE_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("customize.powershell.command", - "powershell command to run during the customization phase"); - - @CatalogConfig(label = "Install Command") - ConfigKey<String> INSTALL_COMMAND = VanillaSoftwareProcess.INSTALL_COMMAND; - - @CatalogConfig(label = "Install PowerShell command") - ConfigKey<String> INSTALL_POWERSHELL_COMMAND = ConfigKeys.newStringConfigKey("install.powershell.command", - "powershell command to run during the install phase"); ConfigKey<Duration> REBOOT_BEGUN_TIMEOUT = ConfigKeys.newDurationConfigKey("reboot.begun.timeout", "duration to wait whilst waiting for a machine to begin rebooting, and thus become unavailable", Duration.TWO_MINUTES); + // TODO If automatic updates are enabled and there are updates waiting to be installed, thirty minutes may not be sufficient... ConfigKey<Duration> REBOOT_COMPLETED_TIMEOUT = ConfigKeys.newDurationConfigKey("reboot.completed.timeout", "duration to wait whilst waiting for a machine to finish rebooting, and thus to become available again", Duration.minutes(30));
