Class WaitTillCloudFormationStackUsableLifecycleHook
- java.lang.Object
-
- org.craftercms.deployer.impl.lifecycle.AbstractLifecycleHook
-
- org.craftercms.deployer.impl.lifecycle.aws.WaitTillCloudFormationStackUsableLifecycleHook
-
- All Implemented Interfaces:
TargetLifecycleHook
,InitializableByConfigBean
public class WaitTillCloudFormationStackUsableLifecycleHook extends AbstractLifecycleHook
TargetLifecycleHook
that waits until a CloudFormation stack is usable, and then maps the outputs of the stack to target configuration properties.- Author:
- avasquez
-
-
Field Summary
Fields Modifier and Type Field Description protected AwsClientBuilderConfigurer
builderConfigurer
protected static String
CONFIG_KEY_OUTPUT_MAPPINGS
protected static String
CONFIG_KEY_SECONDS_BEFORE_CHECKING_STATUS
protected static String
CONFIG_KEY_STACK_NAME
static int
DEFAULT_SECONDS_BEFORE_CHECKING_STATUS
protected Map<String,String>
outputMappings
protected int
secondsBeforeCheckingStatus
protected static String[]
STACK_STATUS_CODES_IN_PROGRESS
protected static String[]
STACK_STATUS_CODES_USABLE
protected String
stackName
protected org.apache.commons.configuration2.Configuration
targetConfig
-
Fields inherited from class org.craftercms.deployer.impl.lifecycle.AbstractLifecycleHook
CONFIG_KEY_DISABLED, disabled, logger
-
-
Constructor Summary
Constructors Constructor Description WaitTillCloudFormationStackUsableLifecycleHook()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
doExecute(Target target)
void
doInit(org.apache.commons.configuration2.Configuration config)
protected boolean
isStackUsable(com.amazonaws.services.cloudformation.AmazonCloudFormation cloudFormation)
protected boolean
isTargetDeleted(Target target)
protected void
mapOutputsToConfig(List<com.amazonaws.services.cloudformation.model.Output> outputs)
void
setTargetConfig(org.apache.commons.configuration2.Configuration targetConfig)
-
Methods inherited from class org.craftercms.deployer.impl.lifecycle.AbstractLifecycleHook
execute, init
-
-
-
-
Field Detail
-
DEFAULT_SECONDS_BEFORE_CHECKING_STATUS
public static final int DEFAULT_SECONDS_BEFORE_CHECKING_STATUS
- See Also:
- Constant Field Values
-
STACK_STATUS_CODES_USABLE
protected static final String[] STACK_STATUS_CODES_USABLE
-
STACK_STATUS_CODES_IN_PROGRESS
protected static final String[] STACK_STATUS_CODES_IN_PROGRESS
-
CONFIG_KEY_STACK_NAME
protected static final String CONFIG_KEY_STACK_NAME
- See Also:
- Constant Field Values
-
CONFIG_KEY_OUTPUT_MAPPINGS
protected static final String CONFIG_KEY_OUTPUT_MAPPINGS
- See Also:
- Constant Field Values
-
CONFIG_KEY_SECONDS_BEFORE_CHECKING_STATUS
protected static final String CONFIG_KEY_SECONDS_BEFORE_CHECKING_STATUS
- See Also:
- Constant Field Values
-
targetConfig
protected org.apache.commons.configuration2.Configuration targetConfig
-
builderConfigurer
protected AwsClientBuilderConfigurer builderConfigurer
-
stackName
protected String stackName
-
secondsBeforeCheckingStatus
protected int secondsBeforeCheckingStatus
-
-
Method Detail
-
setTargetConfig
public void setTargetConfig(org.apache.commons.configuration2.Configuration targetConfig)
-
doInit
public void doInit(org.apache.commons.configuration2.Configuration config) throws org.craftercms.commons.config.ConfigurationException
- Specified by:
doInit
in classAbstractLifecycleHook
- Throws:
org.craftercms.commons.config.ConfigurationException
-
doExecute
public void doExecute(Target target) throws DeployerException
- Specified by:
doExecute
in classAbstractLifecycleHook
- Throws:
DeployerException
-
isStackUsable
protected boolean isStackUsable(com.amazonaws.services.cloudformation.AmazonCloudFormation cloudFormation) throws DeployerException
- Throws:
DeployerException
-
mapOutputsToConfig
protected void mapOutputsToConfig(List<com.amazonaws.services.cloudformation.model.Output> outputs)
-
isTargetDeleted
protected boolean isTargetDeleted(Target target)
-
-