ExecuteFileOptions Struct
Options when executing a file.
Example
ts
import { Asset } from 'aws-cdk-lib/aws-s3-assets';
declare const instance: ec2.Instance;
const asset = new Asset(this, 'Asset', {
path: './configure.sh'
});
const localPath = instance.userData.addS3DownloadCommand({
bucket:asset.bucket,
bucketKey:asset.s3ObjectKey,
region: 'us-east-1', // Optional
});
instance.userData.addExecuteFileCommand({
filePath:localPath,
arguments: '--verbose -y'
});
asset.grantRead(instance.role);
python
from aws_cdk.aws_s3_assets import Asset
# instance: ec2.Instance
asset = Asset(self, "Asset",
path="./configure.sh"
)
local_path = instance.user_data.add_s3_download_command(
bucket=asset.bucket,
bucket_key=asset.s3_object_key,
region="us-east-1"
)
instance.user_data.add_execute_file_command(
file_path=local_path,
arguments="--verbose -y"
)
asset.grant_read(instance.role)
java
import software.amazon.awscdk.services.s3.assets.Asset;
Instance instance;
Asset asset = Asset.Builder.create(this, "Asset")
.path("./configure.sh")
.build();
String localPath = instance.userData.addS3DownloadCommand(S3DownloadOptions.builder()
.bucket(asset.getBucket())
.bucketKey(asset.getS3ObjectKey())
.region("us-east-1")
.build());
instance.userData.addExecuteFileCommand(ExecuteFileOptions.builder()
.filePath(localPath)
.arguments("--verbose -y")
.build());
asset.grantRead(instance.getRole());
csharp
// Install: dotnet add package Amazon.CDK.Lib
using Amazon.CDK.AWS.S3.Assets;
Instance instance;
var asset = new Asset(this, "Asset", new AssetProps {
Path = "./configure.sh"
});
var localPath = instance.UserData.AddS3DownloadCommand(new S3DownloadOptions {
Bucket = asset.Bucket,
BucketKey = asset.S3ObjectKey,
Region = "us-east-1"
});
instance.UserData.AddExecuteFileCommand(new ExecuteFileOptions {
FilePath = localPath,
Arguments = "--verbose -y"
});
asset.GrantRead(instance.Role);
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
import "github.com/aws/aws-cdk-go/awscdk"
var instance Instance
asset := awscdk.NewAsset(this, jsii.String("Asset"), &AssetProps{
Path: jsii.String("./configure.sh"),
})
localPath := instance.UserData.AddS3DownloadCommand(&S3DownloadOptions{
Bucket: asset.Bucket,
BucketKey: asset.S3ObjectKey,
Region: jsii.String("us-east-1"),
})
instance.UserData.AddExecuteFileCommand(&ExecuteFileOptions{
FilePath: localPath,
Arguments: jsii.String("--verbose -y"),
})
asset.GrantRead(instance.Role)