DevEndpoint ​
The DevEndpoint resource allows you to create and manage AWS Glue DevEndpoints, which are used to develop and test ETL scripts in AWS Glue. For more information, see the AWS Glue DevEndpoints documentation.
Minimal Example ​
Create a basic Glue DevEndpoint with required properties and common optional settings.
ts
import AWS from "alchemy/aws/control";
const devEndpoint = await AWS.Glue.DevEndpoint("myDevEndpoint", {
roleArn: "arn:aws:iam::123456789012:role/MyGlueRole",
numberOfNodes: 2,
workerType: "G.1X",
subnetId: "subnet-0abcdef1234567890",
securityGroupIds: ["sg-0abcdef1234567890"]
});
Advanced Configuration ​
Configure a DevEndpoint with additional options, including extra JARs and Python libraries.
ts
const advancedDevEndpoint = await AWS.Glue.DevEndpoint("advancedDevEndpoint", {
roleArn: "arn:aws:iam::123456789012:role/MyGlueRole",
numberOfWorkers: 5,
glueVersion: "2.0",
extraJarsS3Path: "s3://my-glue-libs/my-additional-jars.jar",
extraPythonLibsS3Path: "s3://my-glue-libs/my-additional-libs.zip",
publicKeys: ["ssh-rsa AAAAB3..."],
tags: {
Project: "ETL",
Environment: "Development"
}
});
Using Custom Arguments ​
Demonstrate how to pass custom arguments to the DevEndpoint for specific configurations.
ts
const customArgsDevEndpoint = await AWS.Glue.DevEndpoint("customArgsDevEndpoint", {
roleArn: "arn:aws:iam::123456789012:role/MyGlueRole",
arguments: {
"--key1": "value1",
"--key2": "value2"
},
numberOfNodes: 3,
subnetId: "subnet-0abcdef1234567890",
securityGroupIds: ["sg-0abcdef1234567890"]
});
Security Configuration ​
Create a DevEndpoint with a specific security configuration, including custom security groups.
ts
const secureDevEndpoint = await AWS.Glue.DevEndpoint("secureDevEndpoint", {
roleArn: "arn:aws:iam::123456789012:role/MyGlueRole",
securityConfiguration: "mySecurityConfig",
securityGroupIds: ["sg-0abcdef1234567890"],
subnetId: "subnet-0abcdef1234567890",
numberOfNodes: 2,
endpointName: "secure-endpoint"
});