@Generated(value="jsii-pacmak/1.58.0 (build f8ba112)",
date="2022-05-20T22:19:58.782Z")
public interface ApplyCloudFormationInitOptions
Example:
Vpc vpc; InstanceType instanceType; IMachineImage machineImage; Instance.Builder.create(this, "Instance") .vpc(vpc) .instanceType(instanceType) .machineImage(machineImage) // Showing the most complex setup, if you have simpler requirements // you can use `CloudFormationInit.fromElements()`. .init(CloudFormationInit.fromConfigSets(ConfigSetProps.builder() .configSets(Map.of( // Applies the configs below in this order "default", List.of("yumPreinstall", "config"))) .configs(Map.of( "yumPreinstall", new InitConfig(List.of(InitPackage.yum("git"))), "config", new InitConfig(List.of(InitFile.fromObject("/etc/stack.json", Map.of( "stackId", Stack.of(this).getStackId(), "stackName", Stack.of(this).getStackName(), "region", Stack.of(this).getRegion())), InitGroup.fromName("my-group"), InitUser.fromName("my-user"), InitPackage.rpm("http://mirrors.ukfast.co.uk/sites/dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/r/rubygem-git-1.5.0-2.el8.noarch.rpm"))))) .build())) .initOptions(ApplyCloudFormationInitOptions.builder() // Optional, which configsets to activate (['default'] by default) .configSets(List.of("default")) // Optional, how long the installation is expected to take (5 minutes by default) .timeout(Duration.minutes(30)) // Optional, whether to include the --url argument when running cfn-init and cfn-signal commands (false by default) .includeUrl(true) // Optional, whether to include the --role argument when running cfn-init and cfn-signal commands (false by default) .includeRole(true) .build()) .build();
Modifier and Type | Interface and Description |
---|---|
static class |
ApplyCloudFormationInitOptions.Builder
A builder for
ApplyCloudFormationInitOptions |
static class |
ApplyCloudFormationInitOptions.Jsii$Proxy
An implementation for
ApplyCloudFormationInitOptions |
Modifier and Type | Method and Description |
---|---|
static ApplyCloudFormationInitOptions.Builder |
builder() |
default java.util.List<java.lang.String> |
getConfigSets()
ConfigSet to activate.
|
default java.lang.Boolean |
getEmbedFingerprint()
Force instance replacement by embedding a config fingerprint.
|
default java.lang.Boolean |
getIgnoreFailures()
Don't fail the instance creation when cfn-init fails.
|
default java.lang.Boolean |
getIncludeRole()
Include --role argument when running cfn-init and cfn-signal commands.
|
default java.lang.Boolean |
getIncludeUrl()
Include --url argument when running cfn-init and cfn-signal commands.
|
default java.lang.Boolean |
getPrintLog()
Print the results of running cfn-init to the Instance System Log.
|
default Duration |
getTimeout()
Timeout waiting for the configuration to be applied.
|
default java.util.List<java.lang.String> getConfigSets()
Default: ['default']
default java.lang.Boolean getEmbedFingerprint()
If true
(the default), a hash of the config will be embedded into the
UserData, so that if the config changes, the UserData changes.
userDataCausesReplacement
is set, this will cause the instance to be
replaced and the new configuration to be applied.userDataCausesReplacement
is not
set, the change of UserData will make the instance restart but not be
replaced, and the configuration will not be applied automatically.
If false
, no hash will be embedded, and if the CloudFormation Init
config changes nothing will happen to the running instance. If a
config update introduces errors, you will not notice until after the
CloudFormation deployment successfully finishes and the next instance
fails to launch.
Default: true
default java.lang.Boolean getIgnoreFailures()
You can use this to prevent CloudFormation from rolling back when instances fail to start up, to help in debugging.
Default: false
default java.lang.Boolean getIncludeRole()
This will be the IAM instance profile attached to the EC2 instance
Default: false
default java.lang.Boolean getIncludeUrl()
This will be the cloudformation endpoint in the deployed region e.g. https://cloudformation.us-east-1.amazonaws.com
Default: false
default java.lang.Boolean getPrintLog()
By default, the output of running cfn-init is written to a log file
on the instance. Set this to true
to print it to the System Log
(visible from the EC2 Console), false
to not print it.
(Be aware that the system log is refreshed at certain points in time of the instance life cycle, and successful execution may not always show up).
Default: true
default Duration getTimeout()
Default: Duration.minutes(5)
static ApplyCloudFormationInitOptions.Builder builder()