Skip to content

Resource: awsGlueDevEndpoint

Provides a Glue Development Endpoint resource.

Example Usage

Basic usage:

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as aws from "./.gen/providers/aws";
const dataAwsIamPolicyDocumentExample =
  new aws.dataAwsIamPolicyDocument.DataAwsIamPolicyDocument(this, "example", {
    statement: [
      {
        actions: ["sts:AssumeRole"],
        principals: [
          {
            identifiers: ["glue.amazonaws.com"],
            type: "Service",
          },
        ],
      },
    ],
  });
const awsIamRoleExample = new aws.iamRole.IamRole(this, "example_1", {
  assumeRolePolicy: dataAwsIamPolicyDocumentExample.json,
  name: "AWSGlueServiceRole-foo",
});
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsIamRoleExample.overrideLogicalId("example");
new aws.iamRolePolicyAttachment.IamRolePolicyAttachment(
  this,
  "example-AWSGlueServiceRole",
  {
    policyArn: "arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole",
    role: awsIamRoleExample.name,
  }
);
const awsGlueDevEndpointExample = new aws.glueDevEndpoint.GlueDevEndpoint(
  this,
  "example_3",
  {
    name: "foo",
    roleArn: awsIamRoleExample.arn,
  }
);
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
awsGlueDevEndpointExample.overrideLogicalId("example");

Argument Reference

The following arguments are supported:

  • arguments - (Optional) A map of arguments used to configure the endpoint.
  • extraJarsS3Path - (Optional) Path to one or more Java Jars in an S3 bucket that should be loaded in this endpoint.
  • extraPythonLibsS3Path - (Optional) Path(s) to one or more Python libraries in an S3 bucket that should be loaded in this endpoint. Multiple values must be complete paths separated by a comma.
  • glueVersion - (Optional) - Specifies the versions of Python and Apache Spark to use. Defaults to AWS Glue version 0.9.
  • name - (Required) The name of this endpoint. It must be unique in your account.
  • numberOfNodes - (Optional) The number of AWS Glue Data Processing Units (DPUs) to allocate to this endpoint. Conflicts with workerType.
  • numberOfWorkers - (Optional) The number of workers of a defined worker type that are allocated to this endpoint. This field is available only when you choose worker type G.1X or G.2X.
  • publicKey - (Optional) The public key to be used by this endpoint for authentication.
  • publicKeys - (Optional) A list of public keys to be used by this endpoint for authentication.
  • roleArn - (Required) The IAM role for this endpoint.
  • securityConfiguration - (Optional) The name of the Security Configuration structure to be used with this endpoint.
  • securityGroupIds - (Optional) Security group IDs for the security groups to be used by this endpoint.
  • subnetId - (Optional) The subnet ID for the new endpoint to use.
  • tags - (Optional) Key-value map of resource tags. If configured with a provider defaultTags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
  • workerType - (Optional) The type of predefined worker that is allocated to this endpoint. Accepts a value of Standard, G.1X, or G.2X.

Attributes Reference

In addition to all arguments above, the following attributes are exported:

  • arn - The ARN of the endpoint.
  • name - The name of the new endpoint.
  • privateAddress - A private IP address to access the endpoint within a VPC, if this endpoint is created within one.
  • publicAddress - The public IP address used by this endpoint. The PublicAddress field is present only when you create a non-VPC endpoint.
  • yarnEndpointAddress - The YARN endpoint address used by this endpoint.
  • zeppelinRemoteSparkInterpreterPort - The Apache Zeppelin port for the remote Apache Spark interpreter.
  • availabilityZone - The AWS availability zone where this endpoint is located.
  • vpcId - he ID of the VPC used by this endpoint.
  • status - The current status of this endpoint.
  • failureReason - The reason for a current failure in this endpoint.
  • tagsAll - A map of tags assigned to the resource, including those inherited from the provider defaultTags configuration block.

Import

A Glue Development Endpoint can be imported using the name, e.g.,

$ terraform import aws_glue_dev_endpoint.example foo