glue

package
v0.0.13 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 21, 2022 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Connection_IsConstruct

func Connection_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Connection_IsOwnedResource

func Connection_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Connection_IsResource

func Connection_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func Crawler_IsConstruct

func Crawler_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Crawler_IsOwnedResource

func Crawler_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Crawler_IsResource

func Crawler_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func Database_IsConstruct

func Database_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Database_IsOwnedResource

func Database_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Database_IsResource

func Database_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func Job_IsConstruct

func Job_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Job_IsOwnedResource

func Job_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Job_IsResource

func Job_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func NewArrayColumn_Override

func NewArrayColumn_Override(a ArrayColumn, props *ArrayColumnProps)

func NewAssetCode_Override

func NewAssetCode_Override(a AssetCode, path *string, options *awscdk.AssetOptions)

func NewBasicColumn_Override

func NewBasicColumn_Override(b BasicColumn, props *BasicColumnProps)

func NewClassificationString_Override

func NewClassificationString_Override(c ClassificationString, value *string)

func NewCode_Override

func NewCode_Override(c Code)

func NewColumn_Override

func NewColumn_Override(c Column, props *ColumnProps)

func NewConnection_Override

func NewConnection_Override(c Connection, scope constructs.Construct, id *string, props *ConnectionProps)

func NewCrawler_Override

func NewCrawler_Override(c Crawler, scope constructs.Construct, id *string, props *CrawlerProps)

Creates a new instance of the Crawler class.

func NewDataFormat_Override

func NewDataFormat_Override(d DataFormat, props *DataFormatProps)

func NewDatabase_Override

func NewDatabase_Override(d Database, scope constructs.Construct, id *string, props *DatabaseProps)

Creates a new instance of the Database class.

func NewInputFormat_Override

func NewInputFormat_Override(i InputFormat, className *string)

func NewJdbcTarget_Override

func NewJdbcTarget_Override(j JdbcTarget, connection Connection, options *JdbcTargetOptions)

func NewJob_Override

func NewJob_Override(j Job, scope constructs.Construct, id *string, props *JobProps)

func NewOutputFormat_Override

func NewOutputFormat_Override(o OutputFormat, className *string)

func NewS3Code_Override

func NewS3Code_Override(s S3Code, bucket awss3.IBucket, key *string)

func NewS3Target_Override

func NewS3Target_Override(s S3Target, bucket awss3.IBucket, options *S3TargetOptions)

func NewSecurityConfiguration_Override

func NewSecurityConfiguration_Override(s SecurityConfiguration, scope constructs.Construct, id *string, props *SecurityConfigurationProps)

func NewSerializationLibrary_Override

func NewSerializationLibrary_Override(s SerializationLibrary, className *string)

func NewStructColumn_Override

func NewStructColumn_Override(s StructColumn, props *StructColumnProps)

func NewTable_Override

func NewTable_Override(t Table, scope constructs.Construct, id *string, props *TableProps)

Creates a new instance of the Table class.

func NewTrigger_Override

func NewTrigger_Override(t Trigger, scope constructs.Construct, id *string, props *TriggerProps)

func NewWorkflow_Override

func NewWorkflow_Override(w Workflow, scope constructs.Construct, id *string, props *WorkflowProps)

func SecurityConfiguration_IsConstruct

func SecurityConfiguration_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func SecurityConfiguration_IsOwnedResource

func SecurityConfiguration_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func SecurityConfiguration_IsResource

func SecurityConfiguration_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func Table_IsConstruct

func Table_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Table_IsOwnedResource

func Table_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Table_IsResource

func Table_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func Trigger_IsConstruct

func Trigger_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Trigger_IsOwnedResource

func Trigger_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Trigger_IsResource

func Trigger_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

func Workflow_IsConstruct

func Workflow_IsConstruct(x interface{}) *bool

Checks if `x` is a construct.

Returns: true if `x` is an object created from a class which extends `Construct`. Deprecated: use `x instanceof Construct` instead.

func Workflow_IsOwnedResource

func Workflow_IsOwnedResource(construct constructs.IConstruct) *bool

Returns true if the construct was created by CDK, and false otherwise.

func Workflow_IsResource

func Workflow_IsResource(construct constructs.IConstruct) *bool

Check whether the given construct is a Resource.

Types

type ArrayColumn

type ArrayColumn interface {
	Column
	Comment() *string
	Name() *string
	TypeString() *string
	Bind(scope constructs.IConstruct) *awsglue.CfnTable_ColumnProperty
}

func NewArrayColumn

func NewArrayColumn(props *ArrayColumnProps) ArrayColumn

type ArrayColumnProps

type ArrayColumnProps struct {
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	Name    *string `field:"optional" json:"name" yaml:"name"`
	Data    Column  `field:"required" json:"data" yaml:"data"`
}

type AssetCode

type AssetCode interface {
	Code
	// Called when the Job is initialized to allow this object to bind.
	Bind(scope constructs.Construct, grantable awsiam.IGrantable) *CodeConfig
}

Job Code from a local file.

func AssetCode_FromAsset

func AssetCode_FromAsset(path *string, options *awscdk.AssetOptions) AssetCode

Job code from a local disk path.

func Code_FromAsset

func Code_FromAsset(path *string, options *awscdk.AssetOptions) AssetCode

Job code from a local disk path.

func NewAssetCode

func NewAssetCode(path *string, options *awscdk.AssetOptions) AssetCode

func S3Code_FromAsset

func S3Code_FromAsset(path *string, options *awscdk.AssetOptions) AssetCode

Job code from a local disk path.

type BasicColumn

type BasicColumn interface {
	Column
	Comment() *string
	Name() *string
	TypeString() *string
	Bind(scope constructs.IConstruct) *awsglue.CfnTable_ColumnProperty
}

func NewBasicColumn

func NewBasicColumn(props *BasicColumnProps) BasicColumn

type BasicColumnProps

type BasicColumnProps struct {
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	Name    *string `field:"optional" json:"name" yaml:"name"`
	Type    *string `field:"required" json:"type" yaml:"type"`
}

type ClassificationString

type ClassificationString interface {
	Value() *string
}

Classification string given to tables with this data format. See: https://docs.aws.amazon.com/glue/latest/dg/add-classifier.html#classifier-built-in

func ClassificationString_AVRO

func ClassificationString_AVRO() ClassificationString

func ClassificationString_CSV

func ClassificationString_CSV() ClassificationString

func ClassificationString_JSON

func ClassificationString_JSON() ClassificationString

func ClassificationString_ORC

func ClassificationString_ORC() ClassificationString

func ClassificationString_PARQUET

func ClassificationString_PARQUET() ClassificationString

func ClassificationString_XML

func ClassificationString_XML() ClassificationString

func NewClassificationString

func NewClassificationString(value *string) ClassificationString

type CloudWatchEncryption

type CloudWatchEncryption struct {
	// Encryption mode.
	Mode CloudWatchEncryptionMode `field:"required" json:"mode" yaml:"mode"`
	// The KMS key to be used to encrypt the data.
	KmsKey awskms.IKey `field:"optional" json:"kmsKey" yaml:"kmsKey"`
}

CloudWatch Logs encryption configuration.

type CloudWatchEncryptionMode

type CloudWatchEncryptionMode string

Encryption mode for CloudWatch Logs. See: https://docs.aws.amazon.com/glue/latest/webapi/API_CloudWatchEncryption.html#Glue-Type-CloudWatchEncryption-CloudWatchEncryptionMode

const (
	// Server-side encryption (SSE) with an AWS KMS key managed by the account owner.
	// See: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
	//
	CloudWatchEncryptionMode_KMS CloudWatchEncryptionMode = "KMS"
)

type Code

type Code interface {
	// Called when the Job is initialized to allow this object to bind.
	Bind(scope constructs.Construct, grantable awsiam.IGrantable) *CodeConfig
}

Represents a Glue Job's Code assets (an asset can be a scripts, a jar, a python file or any other file).

type CodeConfig

type CodeConfig struct {
	// The location of the code in S3.
	S3Location *awss3.Location `field:"required" json:"s3Location" yaml:"s3Location"`
}

Result of binding `Code` into a `Job`.

type Column

type Column interface {
	Comment() *string
	Name() *string
	TypeString() *string
	Bind(scope constructs.IConstruct) *awsglue.CfnTable_ColumnProperty
}

type ColumnProps

type ColumnProps struct {
	Comment *string `field:"optional" json:"comment" yaml:"comment"`
	Name    *string `field:"optional" json:"name" yaml:"name"`
}

type ConfigurationVersion

type ConfigurationVersion string
const (
	ConfigurationVersion_V1_0 ConfigurationVersion = "V1_0"
)

type Connection

type Connection interface {
	awscdk.Resource
	awsec2.IConnectable
	ConnectionArn() *string
	ConnectionName() *string
	// The network connections associated with this resource.
	Connections() awsec2.Connections
	ConnectionType() ConnectionType
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	Resource() awsglue.CfnConnection
	SecurityGroup() awsec2.SecurityGroup
	SecurityGroups() *[]awsec2.ISecurityGroup
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	Subnets() *awsec2.SubnetSelection
	Vpc() awsec2.IVpc
	AddMatchCriteria(value *string)
	AddProperty(key *string, value *string)
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewConnection

func NewConnection(scope constructs.Construct, id *string, props *ConnectionProps) Connection

type ConnectionProps

type ConnectionProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region         *string                  `field:"optional" json:"region" yaml:"region"`
	ConnectionType ConnectionType           `field:"required" json:"connectionType" yaml:"connectionType"`
	Description    *string                  `field:"optional" json:"description" yaml:"description"`
	Name           *string                  `field:"optional" json:"name" yaml:"name"`
	Properties     *map[string]*string      `field:"optional" json:"properties" yaml:"properties"`
	SecurityGroups *[]awsec2.ISecurityGroup `field:"optional" json:"securityGroups" yaml:"securityGroups"`
	Subnets        *awsec2.SubnetSelection  `field:"optional" json:"subnets" yaml:"subnets"`
	Vpc            awsec2.IVpc              `field:"optional" json:"vpc" yaml:"vpc"`
}

Configuration for the Glue Workflow resource.

type ConnectionType

type ConnectionType string
const (
	ConnectionType_JDBC    ConnectionType = "JDBC"
	ConnectionType_KAFKA   ConnectionType = "KAFKA"
	ConnectionType_MONGODB ConnectionType = "MONGODB"
	ConnectionType_NETWORK ConnectionType = "NETWORK"
)

type ContinuousLoggingProps

type ContinuousLoggingProps struct {
	// Enable continouous logging.
	Enabled *bool `field:"required" json:"enabled" yaml:"enabled"`
	// Apply the provided conversion pattern.
	//
	// This is a Log4j Conversion Pattern to customize driver and executor logs.
	ConversionPattern *string `field:"optional" json:"conversionPattern" yaml:"conversionPattern"`
	// Specify a custom CloudWatch log group name.
	LogGroup awslogs.ILogGroup `field:"optional" json:"logGroup" yaml:"logGroup"`
	// Specify a custom CloudWatch log stream prefix.
	LogStreamPrefix *string `field:"optional" json:"logStreamPrefix" yaml:"logStreamPrefix"`
	// Filter out non-useful Apache Spark driver/executor and Apache Hadoop YARN heartbeat log messages.
	Quiet *bool `field:"optional" json:"quiet" yaml:"quiet"`
}

type Crawler

type Crawler interface {
	awscdk.Resource
	Configuration() *CrawlerConfiguration
	CrawlerArn() *string
	CrawlerName() *string
	Database() Database
	DeleteBehavior() DeleteBehavior
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	RecrawlBehavior() RecrawlBehavior
	Resource() awsglue.CfnCrawler
	Role() awsiam.Role
	ScheduleExpression() awsevents.Schedule
	SecurityConfiguration() SecurityConfiguration
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	TablePrefix() *string
	UpdateBehavior() UpdateBehavior
	AddClassifier(classifier *string)
	AddTarget(target ICrawlerTarget)
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewCrawler

func NewCrawler(scope constructs.Construct, id *string, props *CrawlerProps) Crawler

Creates a new instance of the Crawler class.

type CrawlerConfiguration

type CrawlerConfiguration struct {
	PartitionUpdateBehavior PartitionUpdateBehavior `field:"optional" json:"partitionUpdateBehavior" yaml:"partitionUpdateBehavior"`
	TableGroupingPolicy     TableGroupingPolicy     `field:"optional" json:"tableGroupingPolicy" yaml:"tableGroupingPolicy"`
	TableLevel              *float64                `field:"optional" json:"tableLevel" yaml:"tableLevel"`
	TableUpdateBehavior     TableUpdateBehavior     `field:"optional" json:"tableUpdateBehavior" yaml:"tableUpdateBehavior"`
	Version                 ConfigurationVersion    `field:"optional" json:"version" yaml:"version"`
}

type CrawlerProps

type CrawlerProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region                *string               `field:"optional" json:"region" yaml:"region"`
	Classifiers           *[]*string            `field:"optional" json:"classifiers" yaml:"classifiers"`
	Configuration         *CrawlerConfiguration `field:"optional" json:"configuration" yaml:"configuration"`
	Database              Database              `field:"optional" json:"database" yaml:"database"`
	DeleteBehavior        DeleteBehavior        `field:"optional" json:"deleteBehavior" yaml:"deleteBehavior"`
	Description           *string               `field:"optional" json:"description" yaml:"description"`
	Name                  *string               `field:"optional" json:"name" yaml:"name"`
	RecrawlBehavior       RecrawlBehavior       `field:"optional" json:"recrawlBehavior" yaml:"recrawlBehavior"`
	ScheduleExpression    awsevents.Schedule    `field:"optional" json:"scheduleExpression" yaml:"scheduleExpression"`
	SecurityConfiguration SecurityConfiguration `field:"optional" json:"securityConfiguration" yaml:"securityConfiguration"`
	TablePrefix           *string               `field:"optional" json:"tablePrefix" yaml:"tablePrefix"`
	Targets               *[]ICrawlerTarget     `field:"optional" json:"targets" yaml:"targets"`
	UpdateBehavior        UpdateBehavior        `field:"optional" json:"updateBehavior" yaml:"updateBehavior"`
}

Configuration for Crawlner.

type CrawlerTargetCollection

type CrawlerTargetCollection struct {
	CatalogTargets  *[]*awsglue.CfnCrawler_CatalogTargetProperty  `field:"optional" json:"catalogTargets" yaml:"catalogTargets"`
	DynamoDbTargets *[]*awsglue.CfnCrawler_DynamoDBTargetProperty `field:"optional" json:"dynamoDbTargets" yaml:"dynamoDbTargets"`
	JdbcTargets     *[]*awsglue.CfnCrawler_JdbcTargetProperty     `field:"optional" json:"jdbcTargets" yaml:"jdbcTargets"`
	S3Targets       *[]*awsglue.CfnCrawler_S3TargetProperty       `field:"optional" json:"s3Targets" yaml:"s3Targets"`
}

type DataFormat

type DataFormat interface {
	// Classification string given to tables with this data format.
	ClassificationString() ClassificationString
	// `InputFormat` for this data format.
	InputFormat() InputFormat
	// `OutputFormat` for this data format.
	OutputFormat() OutputFormat
	// Serialization library for this data format.
	SerializationLibrary() SerializationLibrary
}

Defines the input/output formats and ser/de for a single DataFormat.

func DataFormat_APACHE_LOGS

func DataFormat_APACHE_LOGS() DataFormat

func DataFormat_AVRO

func DataFormat_AVRO() DataFormat

func DataFormat_CLOUDTRAIL_LOGS

func DataFormat_CLOUDTRAIL_LOGS() DataFormat

func DataFormat_CSV

func DataFormat_CSV() DataFormat

func DataFormat_JSON

func DataFormat_JSON() DataFormat

func DataFormat_LOGSTASH

func DataFormat_LOGSTASH() DataFormat

func DataFormat_ORC

func DataFormat_ORC() DataFormat

func DataFormat_PARQUET

func DataFormat_PARQUET() DataFormat

func DataFormat_TSV

func DataFormat_TSV() DataFormat

func NewDataFormat

func NewDataFormat(props *DataFormatProps) DataFormat

type DataFormatProps

type DataFormatProps struct {
	// `InputFormat` for this data format.
	InputFormat InputFormat `field:"required" json:"inputFormat" yaml:"inputFormat"`
	// `OutputFormat` for this data format.
	OutputFormat OutputFormat `field:"required" json:"outputFormat" yaml:"outputFormat"`
	// Serialization library for this data format.
	SerializationLibrary SerializationLibrary `field:"required" json:"serializationLibrary" yaml:"serializationLibrary"`
	// Classification string given to tables with this data format.
	ClassificationString ClassificationString `field:"optional" json:"classificationString" yaml:"classificationString"`
}

Properties of a DataFormat instance.

type Database

type Database interface {
	awscdk.Resource
	CatalogArn() *string
	CatalogId() *string
	DatabaseArn() *string
	DatabaseName() *string
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	LocationUri() *string
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	Resource() awsglue.CfnDatabase
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewDatabase

func NewDatabase(scope constructs.Construct, id *string, props *DatabaseProps) Database

Creates a new instance of the Database class.

type DatabaseProps

type DatabaseProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region      *string `field:"optional" json:"region" yaml:"region"`
	Description *string `field:"optional" json:"description" yaml:"description"`
	LocationUri *string `field:"optional" json:"locationUri" yaml:"locationUri"`
	Name        *string `field:"optional" json:"name" yaml:"name"`
}

Configuration for Database.

type DeleteBehavior

type DeleteBehavior string
const (
	DeleteBehavior_DELETE_FROM_DATABASE  DeleteBehavior = "DELETE_FROM_DATABASE"
	DeleteBehavior_DEPRECATE_IN_DATABASE DeleteBehavior = "DEPRECATE_IN_DATABASE"
	DeleteBehavior_LOG                   DeleteBehavior = "LOG"
)

type GlueVersion

type GlueVersion interface {
	// The name of this GlueVersion, as expected by Job resource.
	Name() *string
}

func GlueVersion_Of

func GlueVersion_Of(version *string) GlueVersion

Custom Glue version.

func GlueVersion_V0_9

func GlueVersion_V0_9() GlueVersion

func GlueVersion_V1_0

func GlueVersion_V1_0() GlueVersion

func GlueVersion_V2_0

func GlueVersion_V2_0() GlueVersion

func GlueVersion_V3_0

func GlueVersion_V3_0() GlueVersion

type ICrawlerTarget

type ICrawlerTarget interface {
	Bind(crawler Crawler) *CrawlerTargetCollection
}

type ITriggerAction

type ITriggerAction interface {
	Bind(trigger Trigger) *awsglue.CfnTrigger_ActionProperty
}

type ITriggerPredicate

type ITriggerPredicate interface {
	Bind(trigger Trigger) *awsglue.CfnTrigger_ConditionProperty
}

type InputFormat

type InputFormat interface {
	ClassName() *string
}

Absolute class name of the Hadoop `InputFormat` to use when reading table files.

func InputFormat_AVRO

func InputFormat_AVRO() InputFormat

func InputFormat_CLOUDTRAIL

func InputFormat_CLOUDTRAIL() InputFormat

func InputFormat_ORC

func InputFormat_ORC() InputFormat

func InputFormat_PARQUET

func InputFormat_PARQUET() InputFormat

func InputFormat_TEXT

func InputFormat_TEXT() InputFormat

func NewInputFormat

func NewInputFormat(className *string) InputFormat

func OutputFormat_AVRO

func OutputFormat_AVRO() InputFormat

func OutputFormat_ORC

func OutputFormat_ORC() InputFormat

type JdbcTarget

type JdbcTarget interface {
	ICrawlerTarget
	Connection() Connection
	AddExclusion(exclusion *string)
	AddPath(path *string)
	Bind(_crawler Crawler) *CrawlerTargetCollection
}

func NewJdbcTarget

func NewJdbcTarget(connection Connection, options *JdbcTargetOptions) JdbcTarget

type JdbcTargetOptions

type JdbcTargetOptions struct {
	Exclusions *[]*string `field:"optional" json:"exclusions" yaml:"exclusions"`
	Paths      *[]*string `field:"optional" json:"paths" yaml:"paths"`
}

Configuration for Crawler JDBC target.

type Job

type Job interface {
	awscdk.Resource
	AllocatedCapacity() *float64
	Connections() *[]Connection
	ContinuousLogging() *ContinuousLoggingProps
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	Executable() JobExecutable
	JobArn() *string
	JobName() *string
	LogGroup() awslogs.ILogGroup
	MaxCapacity() *float64
	MaxConcurrentRuns() *float64
	MaxRetries() *float64
	Name() *string
	// The tree node.
	Node() constructs.Node
	NotifyDelayAfter() awscdk.Duration
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	Resource() awsglue.CfnJob
	Role() awsiam.IRole
	SecurityConfiguration() SecurityConfiguration
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	Timeout() awscdk.Duration
	WorkerCount() *float64
	WorkerType() WorkerType
	AddArgument(key *string, value *string)
	AddConnection(connection Connection)
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewJob

func NewJob(scope constructs.Construct, id *string, props *JobProps) Job

type JobBookmarksEncryption

type JobBookmarksEncryption struct {
	// Encryption mode.
	Mode JobBookmarksEncryptionMode `field:"required" json:"mode" yaml:"mode"`
	// The KMS key to be used to encrypt the data.
	KmsKey awskms.IKey `field:"optional" json:"kmsKey" yaml:"kmsKey"`
}

Job bookmarks encryption configuration.

type JobBookmarksEncryptionMode

type JobBookmarksEncryptionMode string

Encryption mode for Job Bookmarks. See: https://docs.aws.amazon.com/glue/latest/webapi/API_JobBookmarksEncryption.html#Glue-Type-JobBookmarksEncryption-JobBookmarksEncryptionMode

const (
	// Client-side encryption (CSE) with an AWS KMS key managed by the account owner.
	// See: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingClientSideEncryption.html
	//
	JobBookmarksEncryptionMode_CLIENT_SIDE_KMS JobBookmarksEncryptionMode = "CLIENT_SIDE_KMS"
)

type JobExecutable

type JobExecutable interface {
	// Called during Job initialization to get JobExecutableConfig.
	Bind() *JobExecutableConfig
}

The executable properties related to the Glue job's GlueVersion, JobType and code.

func JobExecutable_Of

func JobExecutable_Of(config *JobExecutableConfig) JobExecutable

Create a custom JobExecutable.

func JobExecutable_PythonEtl

func JobExecutable_PythonEtl(props *PythonSparkJobExecutableProps) JobExecutable

Create Python executable props for Apache Spark ETL job.

func JobExecutable_PythonShell

func JobExecutable_PythonShell(props *PythonShellExecutableProps) JobExecutable

Create Python executable props for python shell jobs.

func JobExecutable_PythonStreaming

func JobExecutable_PythonStreaming(props *PythonSparkJobExecutableProps) JobExecutable

Create Python executable props for Apache Spark Streaming job.

func JobExecutable_ScalaEtl

func JobExecutable_ScalaEtl(props *ScalaJobExecutableProps) JobExecutable

Create Scala executable props for Apache Spark ETL job.

func JobExecutable_ScalaStreaming

func JobExecutable_ScalaStreaming(props *ScalaJobExecutableProps) JobExecutable

Create Scala executable props for Apache Spark Streaming job.

type JobExecutableConfig

type JobExecutableConfig struct {
	// Glue version.
	// See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html
	//
	GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"`
	// The language of the job (Scala or Python).
	// See: `--job-language` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	Language JobLanguage `field:"required" json:"language" yaml:"language"`
	// The script that is executed by a job.
	Script Code `field:"required" json:"script" yaml:"script"`
	// Specify the type of the job whether it's an Apache Spark ETL or streaming one or if it's a Python shell job.
	Type JobType `field:"required" json:"type" yaml:"type"`
	// The Scala class that serves as the entry point for the job.
	//
	// This applies only if your the job langauage is Scala.
	// See: `--class` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ClassName *string `field:"optional" json:"className" yaml:"className"`
	// Additional files, such as configuration files that AWS Glue copies to the working directory of your script before executing it.
	// See: `--extra-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraFiles *[]Code `field:"optional" json:"extraFiles" yaml:"extraFiles"`
	// Additional Java .jar files that AWS Glue adds to the Java classpath before executing your script.
	// See: `--extra-jars` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraJars *[]Code `field:"optional" json:"extraJars" yaml:"extraJars"`
	// Setting this value to true prioritizes the customer's extra JAR files in the classpath.
	// See: `--user-jars-first` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraJarsFirst *bool `field:"optional" json:"extraJarsFirst" yaml:"extraJarsFirst"`
	// Additional Python files that AWS Glue adds to the Python path before executing your script.
	// See: `--extra-py-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraPythonFiles *[]Code `field:"optional" json:"extraPythonFiles" yaml:"extraPythonFiles"`
	// The Python version to use.
	PythonVersion PythonVersion `field:"optional" json:"pythonVersion" yaml:"pythonVersion"`
}

Result of binding a `JobExecutable` into a `Job`.

type JobLanguage

type JobLanguage string
const (
	// Python.
	JobLanguage_PYTHON JobLanguage = "PYTHON"
	// Scala.
	JobLanguage_SCALA JobLanguage = "SCALA"
)

type JobProps

type JobProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region                 *string                 `field:"optional" json:"region" yaml:"region"`
	Executable             JobExecutable           `field:"required" json:"executable" yaml:"executable"`
	AllocatedCapacity      *float64                `field:"optional" json:"allocatedCapacity" yaml:"allocatedCapacity"`
	Connections            *[]Connection           `field:"optional" json:"connections" yaml:"connections"`
	ContinuousLogging      *ContinuousLoggingProps `field:"optional" json:"continuousLogging" yaml:"continuousLogging"`
	DefaultArguments       *map[string]*string     `field:"optional" json:"defaultArguments" yaml:"defaultArguments"`
	Description            *string                 `field:"optional" json:"description" yaml:"description"`
	EnableProfilingMetrics *bool                   `field:"optional" json:"enableProfilingMetrics" yaml:"enableProfilingMetrics"`
	MaxCapacity            *float64                `field:"optional" json:"maxCapacity" yaml:"maxCapacity"`
	MaxConcurrentRuns      *float64                `field:"optional" json:"maxConcurrentRuns" yaml:"maxConcurrentRuns"`
	MaxRetries             *float64                `field:"optional" json:"maxRetries" yaml:"maxRetries"`
	Name                   *string                 `field:"optional" json:"name" yaml:"name"`
	NotifyDelayAfter       awscdk.Duration         `field:"optional" json:"notifyDelayAfter" yaml:"notifyDelayAfter"`
	Role                   awsiam.IRole            `field:"optional" json:"role" yaml:"role"`
	SecurityConfiguration  SecurityConfiguration   `field:"optional" json:"securityConfiguration" yaml:"securityConfiguration"`
	Timeout                awscdk.Duration         `field:"optional" json:"timeout" yaml:"timeout"`
	WorkerCount            *float64                `field:"optional" json:"workerCount" yaml:"workerCount"`
	WorkerType             WorkerType              `field:"optional" json:"workerType" yaml:"workerType"`
}

Configuration for the Glue Job resource.

type JobType

type JobType interface {
	// The name of this JobType, as expected by Job resource.
	Name() *string
}

The job type.

If you need to use a JobType that doesn't exist as a static member, you can instantiate a `JobType` object, e.g: `JobType.of('other name')`.

func JobType_ETL

func JobType_ETL() JobType

func JobType_Of

func JobType_Of(name *string) JobType

Custom type name.

func JobType_PYTHON_SHELL

func JobType_PYTHON_SHELL() JobType

func JobType_STREAMING

func JobType_STREAMING() JobType

type OutputFormat

type OutputFormat interface {
	ClassName() *string
}

Absolute class name of the Hadoop `OutputFormat` to use when writing table files.

func NewOutputFormat

func NewOutputFormat(className *string) OutputFormat

func OutputFormat_HIVE_IGNORE_KEY_TEXT

func OutputFormat_HIVE_IGNORE_KEY_TEXT() OutputFormat

func OutputFormat_PARQUET

func OutputFormat_PARQUET() OutputFormat

type PartitionUpdateBehavior

type PartitionUpdateBehavior string
const (
	PartitionUpdateBehavior_INHERIT_FROM_TABLE PartitionUpdateBehavior = "INHERIT_FROM_TABLE"
)

type PredicateOperator

type PredicateOperator string
const (
	PredicateOperator_AND PredicateOperator = "AND"
	PredicateOperator_OR  PredicateOperator = "OR"
)

type PythonShellExecutableProps

type PythonShellExecutableProps struct {
	// Glue version.
	// See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html
	//
	GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"`
	// The Python version to use.
	PythonVersion PythonVersion `field:"required" json:"pythonVersion" yaml:"pythonVersion"`
	// The script that executes a job.
	Script Code `field:"required" json:"script" yaml:"script"`
	// Additional files, such as configuration files that AWS Glue copies to the working directory of your script before executing it.
	//
	// Only individual files are supported, directories are not supported.
	// See: `--extra-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraFiles *[]Code `field:"optional" json:"extraFiles" yaml:"extraFiles"`
	// Additional Python files that AWS Glue adds to the Python path before executing your script.
	//
	// Only individual files are supported, directories are not supported.
	// See: `--extra-py-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraPythonFiles *[]Code `field:"optional" json:"extraPythonFiles" yaml:"extraPythonFiles"`
}

Props for creating a Python shell job executable.

type PythonSparkJobExecutableProps

type PythonSparkJobExecutableProps struct {
	// Glue version.
	// See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html
	//
	GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"`
	// The Python version to use.
	PythonVersion PythonVersion `field:"required" json:"pythonVersion" yaml:"pythonVersion"`
	// The script that executes a job.
	Script Code `field:"required" json:"script" yaml:"script"`
	// Additional files, such as configuration files that AWS Glue copies to the working directory of your script before executing it.
	//
	// Only individual files are supported, directories are not supported.
	// See: `--extra-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraFiles *[]Code `field:"optional" json:"extraFiles" yaml:"extraFiles"`
	// Additional Java .jar files that AWS Glue adds to the Java classpath before executing your script. Only individual files are supported, directories are not supported.
	// See: `--extra-jars` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraJars *[]Code `field:"optional" json:"extraJars" yaml:"extraJars"`
	// Setting this value to true prioritizes the customer's extra JAR files in the classpath.
	// See: `--user-jars-first` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraJarsFirst *bool `field:"optional" json:"extraJarsFirst" yaml:"extraJarsFirst"`
	// Additional Python files that AWS Glue adds to the Python path before executing your script.
	//
	// Only individual files are supported, directories are not supported.
	// See: `--extra-py-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraPythonFiles *[]Code `field:"optional" json:"extraPythonFiles" yaml:"extraPythonFiles"`
}

Props for creating a Python Spark (ETL or Streaming) job executable.

type PythonVersion

type PythonVersion string
const (
	// Python 3 (the exact version depends on GlueVersion and JobCommand used).
	PythonVersion_THREE PythonVersion = "THREE"
	// Python 2 (the exact version depends on GlueVersion and JobCommand used).
	PythonVersion_TWO PythonVersion = "TWO"
)

type RecrawlBehavior

type RecrawlBehavior string
const (
	RecrawlBehavior_EVENT_MODE       RecrawlBehavior = "EVENT_MODE"
	RecrawlBehavior_EVERYTHING       RecrawlBehavior = "EVERYTHING"
	RecrawlBehavior_NEW_FOLDERS_ONLY RecrawlBehavior = "NEW_FOLDERS_ONLY"
)

type S3Code

type S3Code interface {
	Code
	// Called when the Job is initialized to allow this object to bind.
	Bind(_scope constructs.Construct, grantable awsiam.IGrantable) *CodeConfig
}

Glue job Code from an S3 bucket.

func AssetCode_FromBucket

func AssetCode_FromBucket(bucket awss3.IBucket, key *string) S3Code

Job code as an S3 object.

func Code_FromBucket

func Code_FromBucket(bucket awss3.IBucket, key *string) S3Code

Job code as an S3 object.

func NewS3Code

func NewS3Code(bucket awss3.IBucket, key *string) S3Code

func S3Code_FromBucket

func S3Code_FromBucket(bucket awss3.IBucket, key *string) S3Code

Job code as an S3 object.

type S3Encryption

type S3Encryption struct {
	// Encryption mode.
	Mode S3EncryptionMode `field:"required" json:"mode" yaml:"mode"`
	// The KMS key to be used to encrypt the data.
	KmsKey awskms.IKey `field:"optional" json:"kmsKey" yaml:"kmsKey"`
}

S3 encryption configuration.

type S3EncryptionMode

type S3EncryptionMode string

Encryption mode for S3. See: https://docs.aws.amazon.com/glue/latest/webapi/API_S3Encryption.html#Glue-Type-S3Encryption-S3EncryptionMode

const (
	// Server-side encryption (SSE) with an AWS KMS key managed by the account owner.
	// See: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
	//
	S3EncryptionMode_KMS S3EncryptionMode = "KMS"
	// Server side encryption (SSE) with an Amazon S3-managed key.
	// See: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
	//
	S3EncryptionMode_S3_MANAGED S3EncryptionMode = "S3_MANAGED"
)

type S3Target

type S3Target interface {
	ICrawlerTarget
	Bucket() awss3.IBucket
	Connection() Connection
	Exclusions() *[]*string
	KeyPrefix() *string
	SampleSize() *string
	AddExclusion(exclusion *string)
	Bind(crawler Crawler) *CrawlerTargetCollection
}

func NewS3Target

func NewS3Target(bucket awss3.IBucket, options *S3TargetOptions) S3Target

type S3TargetOptions

type S3TargetOptions struct {
	Connection Connection `field:"optional" json:"connection" yaml:"connection"`
	Exclusions *[]*string `field:"optional" json:"exclusions" yaml:"exclusions"`
	KeyPrefix  *string    `field:"optional" json:"keyPrefix" yaml:"keyPrefix"`
	SampleSize *string    `field:"optional" json:"sampleSize" yaml:"sampleSize"`
}

Configuration for Crawler S3 target.

type ScalaJobExecutableProps

type ScalaJobExecutableProps struct {
	// The fully qualified Scala class name that serves as the entry point for the job.
	// See: `--class` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ClassName *string `field:"required" json:"className" yaml:"className"`
	// Glue version.
	// See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html
	//
	GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"`
	// The script that executes a job.
	Script Code `field:"required" json:"script" yaml:"script"`
	// Additional files, such as configuration files that AWS Glue copies to the working directory of your script before executing it.
	//
	// Only individual files are supported, directories are not supported.
	// See: `--extra-files` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraFiles *[]Code `field:"optional" json:"extraFiles" yaml:"extraFiles"`
	// Additional Java .jar files that AWS Glue adds to the Java classpath before executing your script. Only individual files are supported, directories are not supported.
	// See: `--extra-jars` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraJars *[]Code `field:"optional" json:"extraJars" yaml:"extraJars"`
	// Setting this value to true prioritizes the customer's extra JAR files in the classpath.
	// See: `--user-jars-first` in https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
	//
	ExtraJarsFirst *bool `field:"optional" json:"extraJarsFirst" yaml:"extraJarsFirst"`
}

Props for creating a Scala Spark (ETL or Streaming) job executable.

type SecurityConfiguration

type SecurityConfiguration interface {
	awscdk.Resource
	CloudWatchEncryption() *CloudWatchEncryption
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	JobBookmarksEncryption() *JobBookmarksEncryption
	Key() awskms.Key
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	Resource() awsglue.CfnSecurityConfiguration
	S3Encryption() *S3Encryption
	SecurityConfigurationName() *string
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewSecurityConfiguration

func NewSecurityConfiguration(scope constructs.Construct, id *string, props *SecurityConfigurationProps) SecurityConfiguration

type SecurityConfigurationProps

type SecurityConfigurationProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region                 *string                 `field:"optional" json:"region" yaml:"region"`
	CloudWatchEncryption   *CloudWatchEncryption   `field:"optional" json:"cloudWatchEncryption" yaml:"cloudWatchEncryption"`
	JobBookmarksEncryption *JobBookmarksEncryption `field:"optional" json:"jobBookmarksEncryption" yaml:"jobBookmarksEncryption"`
	Name                   *string                 `field:"optional" json:"name" yaml:"name"`
	S3Encryption           *S3Encryption           `field:"optional" json:"s3Encryption" yaml:"s3Encryption"`
}

Configuration for the Glue SecurityConfiguration resource.

type SerializationLibrary

type SerializationLibrary interface {
	ClassName() *string
}

Serialization library to use when serializing/deserializing (SerDe) table records. See: https://cwiki.apache.org/confluence/display/Hive/SerDe

func NewSerializationLibrary

func NewSerializationLibrary(className *string) SerializationLibrary

func SerializationLibrary_AVRO

func SerializationLibrary_AVRO() SerializationLibrary

func SerializationLibrary_CLOUDTRAIL

func SerializationLibrary_CLOUDTRAIL() SerializationLibrary

func SerializationLibrary_GROK

func SerializationLibrary_GROK() SerializationLibrary

func SerializationLibrary_HIVE_JSON

func SerializationLibrary_HIVE_JSON() SerializationLibrary

func SerializationLibrary_LAZY_SIMPLE

func SerializationLibrary_LAZY_SIMPLE() SerializationLibrary

func SerializationLibrary_OPENX_JSON

func SerializationLibrary_OPENX_JSON() SerializationLibrary

func SerializationLibrary_OPEN_CSV

func SerializationLibrary_OPEN_CSV() SerializationLibrary

func SerializationLibrary_ORC

func SerializationLibrary_ORC() SerializationLibrary

func SerializationLibrary_PARQUET

func SerializationLibrary_PARQUET() SerializationLibrary

func SerializationLibrary_REGEXP

func SerializationLibrary_REGEXP() SerializationLibrary

type StructColumn

type StructColumn interface {
	Column
	Comment() *string
	Name() *string
	TypeString() *string
	AddColumn(column Column)
	Bind(scope constructs.IConstruct) *awsglue.CfnTable_ColumnProperty
}

func NewStructColumn

func NewStructColumn(props *StructColumnProps) StructColumn

type StructColumnProps

type StructColumnProps struct {
	Comment *string   `field:"optional" json:"comment" yaml:"comment"`
	Name    *string   `field:"optional" json:"name" yaml:"name"`
	Data    *[]Column `field:"optional" json:"data" yaml:"data"`
}

type Table

type Table interface {
	awscdk.Resource
	Compressed() *bool
	Database() Database
	DataFormat() DataFormat
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	Location() *string
	Name() *string
	// The tree node.
	Node() constructs.Node
	Owner() *string
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	Resource() awsglue.CfnTable
	Retention() awscdk.Duration
	SerdeName() *string
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	StoredAsSubDirectories() *bool
	TableArn() *string
	TableName() *string
	TableType() TableType
	TargetTable() Table
	ViewExpandedText() *string
	ViewOriginalText() *string
	AddColumn(column Column)
	AddParameter(key *string, value *string)
	AddPartitionKey(column Column)
	AddSerdeParameter(key *string, value *string)
	AddStorageParameter(key *string, value *string)
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	RenderStorageDescriptor() *awsglue.CfnTable_StorageDescriptorProperty
	// Returns a string representation of this construct.
	ToString() *string
}

func NewTable

func NewTable(scope constructs.Construct, id *string, props *TableProps) Table

Creates a new instance of the Table class.

type TableGroupingPolicy

type TableGroupingPolicy string
const (
	TableGroupingPolicy_COMBINE_COMPATIBLE_SCHEMAS TableGroupingPolicy = "COMBINE_COMPATIBLE_SCHEMAS"
)

type TableProps

type TableProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region                 *string             `field:"optional" json:"region" yaml:"region"`
	Database               Database            `field:"required" json:"database" yaml:"database"`
	Columns                *[]Column           `field:"optional" json:"columns" yaml:"columns"`
	Compressed             *bool               `field:"optional" json:"compressed" yaml:"compressed"`
	DataFormat             DataFormat          `field:"optional" json:"dataFormat" yaml:"dataFormat"`
	Description            *string             `field:"optional" json:"description" yaml:"description"`
	Location               *string             `field:"optional" json:"location" yaml:"location"`
	Name                   *string             `field:"optional" json:"name" yaml:"name"`
	Owner                  *string             `field:"optional" json:"owner" yaml:"owner"`
	Parameters             *map[string]*string `field:"optional" json:"parameters" yaml:"parameters"`
	PartitionKeys          *[]Column           `field:"optional" json:"partitionKeys" yaml:"partitionKeys"`
	Retention              awscdk.Duration     `field:"optional" json:"retention" yaml:"retention"`
	SerdeName              *string             `field:"optional" json:"serdeName" yaml:"serdeName"`
	SerdeParameters        *map[string]*string `field:"optional" json:"serdeParameters" yaml:"serdeParameters"`
	StorageParameters      *map[string]*string `field:"optional" json:"storageParameters" yaml:"storageParameters"`
	StoredAsSubDirectories *bool               `field:"optional" json:"storedAsSubDirectories" yaml:"storedAsSubDirectories"`
	TableType              TableType           `field:"optional" json:"tableType" yaml:"tableType"`
	TargetTable            Table               `field:"optional" json:"targetTable" yaml:"targetTable"`
	ViewExpandedText       *string             `field:"optional" json:"viewExpandedText" yaml:"viewExpandedText"`
	ViewOriginalText       *string             `field:"optional" json:"viewOriginalText" yaml:"viewOriginalText"`
}

Configuration for Table.

type TableType

type TableType string
const (
	TableType_EXTERNAL_TABLE TableType = "EXTERNAL_TABLE"
	TableType_VIRTUAL_VIEW   TableType = "VIRTUAL_VIEW"
)

type TableUpdateBehavior

type TableUpdateBehavior string
const (
	TableUpdateBehavior_MERGE_NEW_COLUMNS TableUpdateBehavior = "MERGE_NEW_COLUMNS"
)

type Trigger

type Trigger interface {
	awscdk.Resource
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	PredicateOperator() PredicateOperator
	Resource() awsglue.CfnTrigger
	Schedule() awsevents.Schedule
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	StartOnCreation() *bool
	Type() TriggerType
	Workflow() Workflow
	WorkflowArn() *string
	WorkflowName() *string
	AddAction(action ITriggerAction) Trigger
	AddPredicate(predicate ITriggerPredicate) Trigger
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewTrigger

func NewTrigger(scope constructs.Construct, id *string, props *TriggerProps) Trigger

type TriggerOptions

type TriggerOptions struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region              *string              `field:"optional" json:"region" yaml:"region"`
	Type                TriggerType          `field:"required" json:"type" yaml:"type"`
	Actions             *[]ITriggerAction    `field:"optional" json:"actions" yaml:"actions"`
	Description         *string              `field:"optional" json:"description" yaml:"description"`
	Name                *string              `field:"optional" json:"name" yaml:"name"`
	PredicateConditions *[]ITriggerPredicate `field:"optional" json:"predicateConditions" yaml:"predicateConditions"`
	PredicateOperator   PredicateOperator    `field:"optional" json:"predicateOperator" yaml:"predicateOperator"`
	Schedule            awsevents.Schedule   `field:"optional" json:"schedule" yaml:"schedule"`
	StartOnCreation     *bool                `field:"optional" json:"startOnCreation" yaml:"startOnCreation"`
}

type TriggerProps

type TriggerProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region              *string              `field:"optional" json:"region" yaml:"region"`
	Type                TriggerType          `field:"required" json:"type" yaml:"type"`
	Actions             *[]ITriggerAction    `field:"optional" json:"actions" yaml:"actions"`
	Description         *string              `field:"optional" json:"description" yaml:"description"`
	Name                *string              `field:"optional" json:"name" yaml:"name"`
	PredicateConditions *[]ITriggerPredicate `field:"optional" json:"predicateConditions" yaml:"predicateConditions"`
	PredicateOperator   PredicateOperator    `field:"optional" json:"predicateOperator" yaml:"predicateOperator"`
	Schedule            awsevents.Schedule   `field:"optional" json:"schedule" yaml:"schedule"`
	StartOnCreation     *bool                `field:"optional" json:"startOnCreation" yaml:"startOnCreation"`
	Workflow            Workflow             `field:"optional" json:"workflow" yaml:"workflow"`
}

Configuration for the Glue Trigger resource.

type TriggerType

type TriggerType string
const (
	TriggerType_CONDITIONAL TriggerType = "CONDITIONAL"
	TriggerType_EVENT       TriggerType = "EVENT"
	TriggerType_ON_DEMAND   TriggerType = "ON_DEMAND"
	TriggerType_SCHEDULED   TriggerType = "SCHEDULED"
)

type UpdateBehavior

type UpdateBehavior string
const (
	UpdateBehavior_UPDATE_IN_DATABASE UpdateBehavior = "UPDATE_IN_DATABASE"
	UpdateBehavior_LOG                UpdateBehavior = "LOG"
)

type WorkerType

type WorkerType interface {
	// The name of this WorkerType, as expected by Job resource.
	Name() *string
}

The type of predefined worker that is allocated when a job runs.

If you need to use a WorkerType that doesn't exist as a static member, you can instantiate a `WorkerType` object, e.g: `WorkerType.of('other type')`.

func WorkerType_G_1X

func WorkerType_G_1X() WorkerType

func WorkerType_G_2X

func WorkerType_G_2X() WorkerType

func WorkerType_Of

func WorkerType_Of(workerType *string) WorkerType

Custom worker type.

func WorkerType_STANDARD

func WorkerType_STANDARD() WorkerType

type Workflow

type Workflow interface {
	awscdk.Resource
	Description() *string
	// The environment this resource belongs to.
	//
	// For resources that are created and managed by the CDK
	// (generally, those created by creating new class instances like Role, Bucket, etc.),
	// this is always the same as the environment of the stack they belong to;
	// however, for imported resources
	// (those obtained from static methods like fromRoleArn, fromBucketName, etc.),
	// that might be different than the stack they were imported into.
	Env() *awscdk.ResourceEnvironment
	Name() *string
	// The tree node.
	Node() constructs.Node
	// Returns a string-encoded token that resolves to the physical name that should be passed to the CloudFormation resource.
	//
	// This value will resolve to one of the following:
	// - a concrete value (e.g. `"my-awesome-bucket"`)
	// - `undefined`, when a name should be generated by CloudFormation
	// - a concrete name generated automatically during synthesis, in
	//    cross-environment scenarios.
	PhysicalName() *string
	Resource() awsglue.CfnWorkflow
	// The stack in which this resource is defined.
	Stack() awscdk.Stack
	WorkflowArn() *string
	WorkflowName() *string
	AddTrigger(id *string, options *TriggerOptions) Trigger
	// Apply the given removal policy to this resource.
	//
	// The Removal Policy controls what happens to this resource when it stops
	// being managed by CloudFormation, either because you've removed it from the
	// CDK application or because you've made a change that requires the resource
	// to be replaced.
	//
	// The resource can be deleted (`RemovalPolicy.DESTROY`), or left in your AWS
	// account for data recovery and cleanup later (`RemovalPolicy.RETAIN`).
	ApplyRemovalPolicy(policy awscdk.RemovalPolicy)
	GeneratePhysicalName() *string
	// Returns an environment-sensitive token that should be used for the resource's "ARN" attribute (e.g. `bucket.bucketArn`).
	//
	// Normally, this token will resolve to `arnAttr`, but if the resource is
	// referenced across environments, `arnComponents` will be used to synthesize
	// a concrete ARN with the resource's physical name. Make sure to reference
	// `this.physicalName` in `arnComponents`.
	GetResourceArnAttribute(arnAttr *string, arnComponents *awscdk.ArnComponents) *string
	// Returns an environment-sensitive token that should be used for the resource's "name" attribute (e.g. `bucket.bucketName`).
	//
	// Normally, this token will resolve to `nameAttr`, but if the resource is
	// referenced across environments, it will be resolved to `this.physicalName`,
	// which will be a concrete name.
	GetResourceNameAttribute(nameAttr *string) *string
	// Returns a string representation of this construct.
	ToString() *string
}

func NewWorkflow

func NewWorkflow(scope constructs.Construct, id *string, props *WorkflowProps) Workflow

type WorkflowProps

type WorkflowProps struct {
	// The AWS account ID this resource belongs to.
	Account *string `field:"optional" json:"account" yaml:"account"`
	// ARN to deduce region and account from.
	//
	// The ARN is parsed and the account and region are taken from the ARN.
	// This should be used for imported resources.
	//
	// Cannot be supplied together with either `account` or `region`.
	EnvironmentFromArn *string `field:"optional" json:"environmentFromArn" yaml:"environmentFromArn"`
	// The value passed in by users to the physical name prop of the resource.
	//
	// - `undefined` implies that a physical name will be allocated by
	//    CloudFormation during deployment.
	// - a concrete value implies a specific physical name
	// - `PhysicalName.GENERATE_IF_NEEDED` is a marker that indicates that a physical will only be generated
	//    by the CDK if it is needed for cross-environment references. Otherwise, it will be allocated by CloudFormation.
	PhysicalName *string `field:"optional" json:"physicalName" yaml:"physicalName"`
	// The AWS region this resource belongs to.
	Region      *string `field:"optional" json:"region" yaml:"region"`
	Description *string `field:"optional" json:"description" yaml:"description"`
	Name        *string `field:"optional" json:"name" yaml:"name"`
}

Configuration for the Glue Workflow resource.

Source Files

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL