UserData Class
Instance User Data.
Example
ts
declare const cluster: eks.Cluster;
const userData = ec2.UserData.forLinux();
userData.addCommands(
'set -o xtrace',
`/etc/eks/bootstrap.sh ${cluster.clusterName}`,
);
const lt = new ec2.CfnLaunchTemplate(this, 'LaunchTemplate', {
launchTemplateData: {
imageId: 'some-ami-id', // custom AMI
instanceType: 't3.small',
userData: Fn.base64(userData.render()),
},
});
cluster.addNodegroupCapacity('extra-ng', {
launchTemplateSpec: {
id: lt.ref,
version: lt.attrLatestVersionNumber,
},
});
Initializer
ts
new UserData()
python
UserData()
java
new UserData()
csharp
new UserData()
go
NewUserData()
Methods
addCommands(...commands: string[]): voiddef add_commands(self, commands: str) -> Nonepublic void addCommands(String commands)public void AddCommands(string commands)func AddCommands(Commands *string)#Add one or more commands to the user data.
addExecuteFileCommand(params: ExecuteFileOptions): voiddef add_execute_file_command(self, params: ExecuteFileOptions) -> Nonepublic void addExecuteFileCommand(ExecuteFileOptions params)public void AddExecuteFileCommand(ExecuteFileOptions params)func AddExecuteFileCommand(Params ExecuteFileOptions)#Adds commands to execute a file.
addOnExitCommands(...commands: string[]): voiddef add_on_exit_commands(self, commands: str) -> Nonepublic void addOnExitCommands(String commands)public void AddOnExitCommands(string commands)func AddOnExitCommands(Commands *string)#Add one or more commands to the user data that will run when the script exits.
addS3DownloadCommand(params: S3DownloadOptions): stringdef add_s3_download_command(self, params: S3DownloadOptions) -> strpublic String addS3DownloadCommand(S3DownloadOptions params)public string AddS3DownloadCommand(S3DownloadOptions params)func AddS3DownloadCommand(Params S3DownloadOptions) *string#Adds commands to download a file from S3.
returns
Returns: : The local path that the file will be downloaded to
addSignalOnExitCommand(resource: Resource): voiddef add_signal_on_exit_command(self, resource: Resource) -> Nonepublic void addSignalOnExitCommand(Resource resource)public void AddSignalOnExitCommand(Resource resource)func AddSignalOnExitCommand(Resource Resource)#Adds a command which will send a cfn-signal when the user data script ends.
custom(content: string): UserData // chainable@staticmethod def custom(content: str) -> UserDatapublic static UserData custom(String content)public static UserData Custom(string content)func Custom(Content *string) UserDatastatic#Create a userdata object with custom content.
forLinux(options?: LinuxUserDataOptions): UserData // chainable@staticmethod def for_linux(options: typing.Optional[LinuxUserDataOptions] = None) -> UserDatapublic static UserData forLinux(LinuxUserDataOptions options)public static UserData ForLinux(LinuxUserDataOptions? options = null)func ForLinux(Options LinuxUserDataOptions) UserDatastatic#Create a userdata object for Linux hosts.
forOperatingSystem(os: OperatingSystemType): UserData // chainable@staticmethod def for_operating_system(os: OperatingSystemType) -> UserDatapublic static UserData forOperatingSystem(OperatingSystemType os)public static UserData ForOperatingSystem(OperatingSystemType os)func ForOperatingSystem(Os OperatingSystemType) UserDatastatic#forWindows(options?: WindowsUserDataOptions): UserData // chainable@staticmethod def for_windows(options: typing.Optional[WindowsUserDataOptions] = None) -> UserDatapublic static UserData forWindows(WindowsUserDataOptions options)public static UserData ForWindows(WindowsUserDataOptions? options = null)func ForWindows(Options WindowsUserDataOptions) UserDatastatic#Create a userdata object for Windows hosts.
render(): stringdef render(self, ) -> strpublic String render()public string Render()func Render() *string#Render the UserData for use in a construct.