Documentation ¶
Index ¶
- func CfnClassifier_CFN_RESOURCE_TYPE_NAME() *string
- func CfnClassifier_IsCfnElement(x interface{}) *bool
- func CfnClassifier_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnClassifier_IsConstruct(x interface{}) *bool
- func CfnConnection_CFN_RESOURCE_TYPE_NAME() *string
- func CfnConnection_IsCfnElement(x interface{}) *bool
- func CfnConnection_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnConnection_IsConstruct(x interface{}) *bool
- func CfnCrawler_CFN_RESOURCE_TYPE_NAME() *string
- func CfnCrawler_IsCfnElement(x interface{}) *bool
- func CfnCrawler_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnCrawler_IsConstruct(x interface{}) *bool
- func CfnDataCatalogEncryptionSettings_CFN_RESOURCE_TYPE_NAME() *string
- func CfnDataCatalogEncryptionSettings_IsCfnElement(x interface{}) *bool
- func CfnDataCatalogEncryptionSettings_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnDataCatalogEncryptionSettings_IsConstruct(x interface{}) *bool
- func CfnDatabase_CFN_RESOURCE_TYPE_NAME() *string
- func CfnDatabase_IsCfnElement(x interface{}) *bool
- func CfnDatabase_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnDatabase_IsConstruct(x interface{}) *bool
- func CfnDevEndpoint_CFN_RESOURCE_TYPE_NAME() *string
- func CfnDevEndpoint_IsCfnElement(x interface{}) *bool
- func CfnDevEndpoint_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnDevEndpoint_IsConstruct(x interface{}) *bool
- func CfnJob_CFN_RESOURCE_TYPE_NAME() *string
- func CfnJob_IsCfnElement(x interface{}) *bool
- func CfnJob_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnJob_IsConstruct(x interface{}) *bool
- func CfnMLTransform_CFN_RESOURCE_TYPE_NAME() *string
- func CfnMLTransform_IsCfnElement(x interface{}) *bool
- func CfnMLTransform_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnMLTransform_IsConstruct(x interface{}) *bool
- func CfnPartition_CFN_RESOURCE_TYPE_NAME() *string
- func CfnPartition_IsCfnElement(x interface{}) *bool
- func CfnPartition_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnPartition_IsConstruct(x interface{}) *bool
- func CfnRegistry_CFN_RESOURCE_TYPE_NAME() *string
- func CfnRegistry_IsCfnElement(x interface{}) *bool
- func CfnRegistry_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnRegistry_IsConstruct(x interface{}) *bool
- func CfnSchemaVersionMetadata_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSchemaVersionMetadata_IsCfnElement(x interface{}) *bool
- func CfnSchemaVersionMetadata_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSchemaVersionMetadata_IsConstruct(x interface{}) *bool
- func CfnSchemaVersion_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSchemaVersion_IsCfnElement(x interface{}) *bool
- func CfnSchemaVersion_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSchemaVersion_IsConstruct(x interface{}) *bool
- func CfnSchema_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSchema_IsCfnElement(x interface{}) *bool
- func CfnSchema_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSchema_IsConstruct(x interface{}) *bool
- func CfnSecurityConfiguration_CFN_RESOURCE_TYPE_NAME() *string
- func CfnSecurityConfiguration_IsCfnElement(x interface{}) *bool
- func CfnSecurityConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnSecurityConfiguration_IsConstruct(x interface{}) *bool
- func CfnTable_CFN_RESOURCE_TYPE_NAME() *string
- func CfnTable_IsCfnElement(x interface{}) *bool
- func CfnTable_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnTable_IsConstruct(x interface{}) *bool
- func CfnTrigger_CFN_RESOURCE_TYPE_NAME() *string
- func CfnTrigger_IsCfnElement(x interface{}) *bool
- func CfnTrigger_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnTrigger_IsConstruct(x interface{}) *bool
- func CfnWorkflow_CFN_RESOURCE_TYPE_NAME() *string
- func CfnWorkflow_IsCfnElement(x interface{}) *bool
- func CfnWorkflow_IsCfnResource(construct constructs.IConstruct) *bool
- func CfnWorkflow_IsConstruct(x interface{}) *bool
- func Connection_IsConstruct(x interface{}) *bool
- func Connection_IsResource(construct awscdk.IConstruct) *bool
- func Database_IsConstruct(x interface{}) *bool
- func Database_IsResource(construct awscdk.IConstruct) *bool
- func Job_IsConstruct(x interface{}) *bool
- func Job_IsResource(construct awscdk.IConstruct) *bool
- func NewAssetCode_Override(a AssetCode, path *string, options *awss3assets.AssetOptions)
- func NewCfnClassifier_Override(c CfnClassifier, scope awscdk.Construct, id *string, props *CfnClassifierProps)
- func NewCfnConnection_Override(c CfnConnection, scope awscdk.Construct, id *string, props *CfnConnectionProps)
- func NewCfnCrawler_Override(c CfnCrawler, scope awscdk.Construct, id *string, props *CfnCrawlerProps)
- func NewCfnDataCatalogEncryptionSettings_Override(c CfnDataCatalogEncryptionSettings, scope awscdk.Construct, id *string, ...)
- func NewCfnDatabase_Override(c CfnDatabase, scope awscdk.Construct, id *string, props *CfnDatabaseProps)
- func NewCfnDevEndpoint_Override(c CfnDevEndpoint, scope awscdk.Construct, id *string, ...)
- func NewCfnJob_Override(c CfnJob, scope awscdk.Construct, id *string, props *CfnJobProps)
- func NewCfnMLTransform_Override(c CfnMLTransform, scope awscdk.Construct, id *string, ...)
- func NewCfnPartition_Override(c CfnPartition, scope awscdk.Construct, id *string, props *CfnPartitionProps)
- func NewCfnRegistry_Override(c CfnRegistry, scope awscdk.Construct, id *string, props *CfnRegistryProps)
- func NewCfnSchemaVersionMetadata_Override(c CfnSchemaVersionMetadata, scope awscdk.Construct, id *string, ...)
- func NewCfnSchemaVersion_Override(c CfnSchemaVersion, scope awscdk.Construct, id *string, ...)
- func NewCfnSchema_Override(c CfnSchema, scope awscdk.Construct, id *string, props *CfnSchemaProps)
- func NewCfnSecurityConfiguration_Override(c CfnSecurityConfiguration, scope awscdk.Construct, id *string, ...)
- func NewCfnTable_Override(c CfnTable, scope awscdk.Construct, id *string, props *CfnTableProps)
- func NewCfnTrigger_Override(c CfnTrigger, scope awscdk.Construct, id *string, props *CfnTriggerProps)
- func NewCfnWorkflow_Override(c CfnWorkflow, scope awscdk.Construct, id *string, props *CfnWorkflowProps)
- func NewClassificationString_Override(c ClassificationString, value *string)
- func NewCode_Override(c Code)
- func NewConnectionType_Override(c ConnectionType, name *string)
- func NewConnection_Override(c Connection, scope constructs.Construct, id *string, props *ConnectionProps)
- func NewDataFormat_Override(d DataFormat, props *DataFormatProps)
- func NewDatabase_Override(d Database, scope constructs.Construct, id *string, props *DatabaseProps)
- func NewInputFormat_Override(i InputFormat, className *string)
- func NewJob_Override(j Job, scope constructs.Construct, id *string, props *JobProps)
- func NewOutputFormat_Override(o OutputFormat, className *string)
- func NewS3Code_Override(s S3Code, bucket awss3.IBucket, key *string)
- func NewSchema_Override(s Schema)
- func NewSecurityConfiguration_Override(s SecurityConfiguration, scope constructs.Construct, id *string, ...)
- func NewSerializationLibrary_Override(s SerializationLibrary, className *string)
- func NewTable_Override(t Table, scope constructs.Construct, id *string, props *TableProps)
- func SecurityConfiguration_IsConstruct(x interface{}) *bool
- func SecurityConfiguration_IsResource(construct awscdk.IConstruct) *bool
- func Table_IsConstruct(x interface{}) *bool
- func Table_IsResource(construct awscdk.IConstruct) *bool
- type AssetCode
- func AssetCode_FromAsset(path *string, options *awss3assets.AssetOptions) AssetCode
- func Code_FromAsset(path *string, options *awss3assets.AssetOptions) AssetCode
- func NewAssetCode(path *string, options *awss3assets.AssetOptions) AssetCode
- func S3Code_FromAsset(path *string, options *awss3assets.AssetOptions) AssetCode
- type CfnClassifier
- type CfnClassifierProps
- type CfnClassifier_CsvClassifierProperty
- type CfnClassifier_GrokClassifierProperty
- type CfnClassifier_JsonClassifierProperty
- type CfnClassifier_XMLClassifierProperty
- type CfnConnection
- type CfnConnectionProps
- type CfnConnection_ConnectionInputProperty
- type CfnConnection_PhysicalConnectionRequirementsProperty
- type CfnCrawler
- type CfnCrawlerProps
- type CfnCrawler_CatalogTargetProperty
- type CfnCrawler_DynamoDBTargetProperty
- type CfnCrawler_JdbcTargetProperty
- type CfnCrawler_MongoDBTargetProperty
- type CfnCrawler_RecrawlPolicyProperty
- type CfnCrawler_S3TargetProperty
- type CfnCrawler_ScheduleProperty
- type CfnCrawler_SchemaChangePolicyProperty
- type CfnCrawler_TargetsProperty
- type CfnDataCatalogEncryptionSettings
- type CfnDataCatalogEncryptionSettingsProps
- type CfnDataCatalogEncryptionSettings_ConnectionPasswordEncryptionProperty
- type CfnDataCatalogEncryptionSettings_DataCatalogEncryptionSettingsProperty
- type CfnDataCatalogEncryptionSettings_EncryptionAtRestProperty
- type CfnDatabase
- type CfnDatabaseProps
- type CfnDatabase_DataLakePrincipalProperty
- type CfnDatabase_DatabaseIdentifierProperty
- type CfnDatabase_DatabaseInputProperty
- type CfnDatabase_PrincipalPrivilegesProperty
- type CfnDevEndpoint
- type CfnDevEndpointProps
- type CfnJob
- type CfnJobProps
- type CfnJob_ConnectionsListProperty
- type CfnJob_ExecutionPropertyProperty
- type CfnJob_JobCommandProperty
- type CfnJob_NotificationPropertyProperty
- type CfnMLTransform
- type CfnMLTransformProps
- type CfnMLTransform_FindMatchesParametersProperty
- type CfnMLTransform_GlueTablesProperty
- type CfnMLTransform_InputRecordTablesProperty
- type CfnMLTransform_MLUserDataEncryptionProperty
- type CfnMLTransform_TransformEncryptionProperty
- type CfnMLTransform_TransformParametersProperty
- type CfnPartition
- type CfnPartitionProps
- type CfnPartition_ColumnProperty
- type CfnPartition_OrderProperty
- type CfnPartition_PartitionInputProperty
- type CfnPartition_SchemaIdProperty
- type CfnPartition_SchemaReferenceProperty
- type CfnPartition_SerdeInfoProperty
- type CfnPartition_SkewedInfoProperty
- type CfnPartition_StorageDescriptorProperty
- type CfnRegistry
- type CfnRegistryProps
- type CfnSchema
- type CfnSchemaProps
- type CfnSchemaVersion
- type CfnSchemaVersionMetadata
- type CfnSchemaVersionMetadataProps
- type CfnSchemaVersionProps
- type CfnSchemaVersion_SchemaProperty
- type CfnSchema_RegistryProperty
- type CfnSchema_SchemaVersionProperty
- type CfnSecurityConfiguration
- type CfnSecurityConfigurationProps
- type CfnSecurityConfiguration_CloudWatchEncryptionProperty
- type CfnSecurityConfiguration_EncryptionConfigurationProperty
- type CfnSecurityConfiguration_JobBookmarksEncryptionProperty
- type CfnSecurityConfiguration_S3EncryptionProperty
- type CfnTable
- type CfnTableProps
- type CfnTable_ColumnProperty
- type CfnTable_OrderProperty
- type CfnTable_SchemaIdProperty
- type CfnTable_SchemaReferenceProperty
- type CfnTable_SerdeInfoProperty
- type CfnTable_SkewedInfoProperty
- type CfnTable_StorageDescriptorProperty
- type CfnTable_TableIdentifierProperty
- type CfnTable_TableInputProperty
- type CfnTrigger
- type CfnTriggerProps
- type CfnTrigger_ActionProperty
- type CfnTrigger_ConditionProperty
- type CfnTrigger_NotificationPropertyProperty
- type CfnTrigger_PredicateProperty
- type CfnWorkflow
- type CfnWorkflowProps
- type ClassificationString
- func ClassificationString_AVRO() ClassificationString
- func ClassificationString_CSV() ClassificationString
- func ClassificationString_JSON() ClassificationString
- func ClassificationString_ORC() ClassificationString
- func ClassificationString_PARQUET() ClassificationString
- func ClassificationString_XML() ClassificationString
- func NewClassificationString(value *string) ClassificationString
- type CloudWatchEncryption
- type CloudWatchEncryptionMode
- type Code
- type CodeConfig
- type Column
- type Connection
- type ConnectionOptions
- type ConnectionProps
- type ConnectionType
- type ContinuousLoggingProps
- type DataFormat
- func DataFormat_APACHE_LOGS() DataFormat
- func DataFormat_AVRO() DataFormat
- func DataFormat_CLOUDTRAIL_LOGS() DataFormat
- func DataFormat_CSV() DataFormat
- func DataFormat_JSON() DataFormat
- func DataFormat_LOGSTASH() DataFormat
- func DataFormat_ORC() DataFormat
- func DataFormat_PARQUET() DataFormat
- func DataFormat_TSV() DataFormat
- func NewDataFormat(props *DataFormatProps) DataFormat
- type DataFormatProps
- type Database
- type DatabaseProps
- type GlueVersion
- type IConnection
- type IDatabase
- type IJob
- type ISecurityConfiguration
- type ITable
- type InputFormat
- func InputFormat_AVRO() InputFormat
- func InputFormat_CLOUDTRAIL() InputFormat
- func InputFormat_ORC() InputFormat
- func InputFormat_PARQUET() InputFormat
- func InputFormat_TEXT() InputFormat
- func NewInputFormat(className *string) InputFormat
- func OutputFormat_AVRO() InputFormat
- func OutputFormat_ORC() InputFormat
- type Job
- type JobAttributes
- type JobBookmarksEncryption
- type JobBookmarksEncryptionMode
- type JobExecutable
- func JobExecutable_Of(config *JobExecutableConfig) JobExecutable
- func JobExecutable_PythonEtl(props *PythonSparkJobExecutableProps) JobExecutable
- func JobExecutable_PythonShell(props *PythonShellExecutableProps) JobExecutable
- func JobExecutable_PythonStreaming(props *PythonSparkJobExecutableProps) JobExecutable
- func JobExecutable_ScalaEtl(props *ScalaJobExecutableProps) JobExecutable
- func JobExecutable_ScalaStreaming(props *ScalaJobExecutableProps) JobExecutable
- type JobExecutableConfig
- type JobLanguage
- type JobProps
- type JobState
- type JobType
- type MetricType
- type OutputFormat
- type PartitionIndex
- type PythonShellExecutableProps
- type PythonSparkJobExecutableProps
- type PythonVersion
- type S3Code
- type S3Encryption
- type S3EncryptionMode
- type ScalaJobExecutableProps
- type Schema
- type SecurityConfiguration
- type SecurityConfigurationProps
- type SerializationLibrary
- func NewSerializationLibrary(className *string) SerializationLibrary
- func SerializationLibrary_AVRO() SerializationLibrary
- func SerializationLibrary_CLOUDTRAIL() SerializationLibrary
- func SerializationLibrary_GROK() SerializationLibrary
- func SerializationLibrary_HIVE_JSON() SerializationLibrary
- func SerializationLibrary_LAZY_SIMPLE() SerializationLibrary
- func SerializationLibrary_OPENX_JSON() SerializationLibrary
- func SerializationLibrary_OPEN_CSV() SerializationLibrary
- func SerializationLibrary_ORC() SerializationLibrary
- func SerializationLibrary_PARQUET() SerializationLibrary
- func SerializationLibrary_REGEXP() SerializationLibrary
- type SparkUILoggingLocation
- type SparkUIProps
- type Table
- type TableAttributes
- type TableEncryption
- type TableProps
- type Type
- func Schema_Array(itemType *Type) *Type
- func Schema_BIG_INT() *Type
- func Schema_BINARY() *Type
- func Schema_BOOLEAN() *Type
- func Schema_Char(length *float64) *Type
- func Schema_DATE() *Type
- func Schema_DOUBLE() *Type
- func Schema_Decimal(precision *float64, scale *float64) *Type
- func Schema_FLOAT() *Type
- func Schema_INTEGER() *Type
- func Schema_Map(keyType *Type, valueType *Type) *Type
- func Schema_SMALL_INT() *Type
- func Schema_STRING() *Type
- func Schema_Struct(columns *[]*Column) *Type
- func Schema_TIMESTAMP() *Type
- func Schema_TINY_INT() *Type
- func Schema_Varchar(length *float64) *Type
- type WorkerType
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CfnClassifier_CFN_RESOURCE_TYPE_NAME ¶
func CfnClassifier_CFN_RESOURCE_TYPE_NAME() *string
func CfnClassifier_IsCfnElement ¶
func CfnClassifier_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnClassifier_IsCfnResource ¶
func CfnClassifier_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnClassifier_IsConstruct ¶
func CfnClassifier_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnConnection_CFN_RESOURCE_TYPE_NAME ¶
func CfnConnection_CFN_RESOURCE_TYPE_NAME() *string
func CfnConnection_IsCfnElement ¶
func CfnConnection_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnConnection_IsCfnResource ¶
func CfnConnection_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnConnection_IsConstruct ¶
func CfnConnection_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnCrawler_CFN_RESOURCE_TYPE_NAME ¶
func CfnCrawler_CFN_RESOURCE_TYPE_NAME() *string
func CfnCrawler_IsCfnElement ¶
func CfnCrawler_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnCrawler_IsCfnResource ¶
func CfnCrawler_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnCrawler_IsConstruct ¶
func CfnCrawler_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnDataCatalogEncryptionSettings_CFN_RESOURCE_TYPE_NAME ¶
func CfnDataCatalogEncryptionSettings_CFN_RESOURCE_TYPE_NAME() *string
func CfnDataCatalogEncryptionSettings_IsCfnElement ¶
func CfnDataCatalogEncryptionSettings_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnDataCatalogEncryptionSettings_IsCfnResource ¶
func CfnDataCatalogEncryptionSettings_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnDataCatalogEncryptionSettings_IsConstruct ¶
func CfnDataCatalogEncryptionSettings_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnDatabase_CFN_RESOURCE_TYPE_NAME ¶
func CfnDatabase_CFN_RESOURCE_TYPE_NAME() *string
func CfnDatabase_IsCfnElement ¶
func CfnDatabase_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnDatabase_IsCfnResource ¶
func CfnDatabase_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnDatabase_IsConstruct ¶
func CfnDatabase_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnDevEndpoint_CFN_RESOURCE_TYPE_NAME ¶
func CfnDevEndpoint_CFN_RESOURCE_TYPE_NAME() *string
func CfnDevEndpoint_IsCfnElement ¶
func CfnDevEndpoint_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnDevEndpoint_IsCfnResource ¶
func CfnDevEndpoint_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnDevEndpoint_IsConstruct ¶
func CfnDevEndpoint_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnJob_CFN_RESOURCE_TYPE_NAME ¶
func CfnJob_CFN_RESOURCE_TYPE_NAME() *string
func CfnJob_IsCfnElement ¶
func CfnJob_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnJob_IsCfnResource ¶
func CfnJob_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnJob_IsConstruct ¶
func CfnJob_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnMLTransform_CFN_RESOURCE_TYPE_NAME ¶
func CfnMLTransform_CFN_RESOURCE_TYPE_NAME() *string
func CfnMLTransform_IsCfnElement ¶
func CfnMLTransform_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnMLTransform_IsCfnResource ¶
func CfnMLTransform_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnMLTransform_IsConstruct ¶
func CfnMLTransform_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnPartition_CFN_RESOURCE_TYPE_NAME ¶
func CfnPartition_CFN_RESOURCE_TYPE_NAME() *string
func CfnPartition_IsCfnElement ¶
func CfnPartition_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnPartition_IsCfnResource ¶
func CfnPartition_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnPartition_IsConstruct ¶
func CfnPartition_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnRegistry_CFN_RESOURCE_TYPE_NAME ¶
func CfnRegistry_CFN_RESOURCE_TYPE_NAME() *string
func CfnRegistry_IsCfnElement ¶
func CfnRegistry_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnRegistry_IsCfnResource ¶
func CfnRegistry_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnRegistry_IsConstruct ¶
func CfnRegistry_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnSchemaVersionMetadata_CFN_RESOURCE_TYPE_NAME ¶
func CfnSchemaVersionMetadata_CFN_RESOURCE_TYPE_NAME() *string
func CfnSchemaVersionMetadata_IsCfnElement ¶
func CfnSchemaVersionMetadata_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnSchemaVersionMetadata_IsCfnResource ¶
func CfnSchemaVersionMetadata_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnSchemaVersionMetadata_IsConstruct ¶
func CfnSchemaVersionMetadata_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnSchemaVersion_CFN_RESOURCE_TYPE_NAME ¶
func CfnSchemaVersion_CFN_RESOURCE_TYPE_NAME() *string
func CfnSchemaVersion_IsCfnElement ¶
func CfnSchemaVersion_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnSchemaVersion_IsCfnResource ¶
func CfnSchemaVersion_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnSchemaVersion_IsConstruct ¶
func CfnSchemaVersion_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnSchema_CFN_RESOURCE_TYPE_NAME ¶
func CfnSchema_CFN_RESOURCE_TYPE_NAME() *string
func CfnSchema_IsCfnElement ¶
func CfnSchema_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnSchema_IsCfnResource ¶
func CfnSchema_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnSchema_IsConstruct ¶
func CfnSchema_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnSecurityConfiguration_CFN_RESOURCE_TYPE_NAME ¶
func CfnSecurityConfiguration_CFN_RESOURCE_TYPE_NAME() *string
func CfnSecurityConfiguration_IsCfnElement ¶
func CfnSecurityConfiguration_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnSecurityConfiguration_IsCfnResource ¶
func CfnSecurityConfiguration_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnSecurityConfiguration_IsConstruct ¶
func CfnSecurityConfiguration_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnTable_CFN_RESOURCE_TYPE_NAME ¶
func CfnTable_CFN_RESOURCE_TYPE_NAME() *string
func CfnTable_IsCfnElement ¶
func CfnTable_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnTable_IsCfnResource ¶
func CfnTable_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnTable_IsConstruct ¶
func CfnTable_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnTrigger_CFN_RESOURCE_TYPE_NAME ¶
func CfnTrigger_CFN_RESOURCE_TYPE_NAME() *string
func CfnTrigger_IsCfnElement ¶
func CfnTrigger_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnTrigger_IsCfnResource ¶
func CfnTrigger_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnTrigger_IsConstruct ¶
func CfnTrigger_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func CfnWorkflow_CFN_RESOURCE_TYPE_NAME ¶
func CfnWorkflow_CFN_RESOURCE_TYPE_NAME() *string
func CfnWorkflow_IsCfnElement ¶
func CfnWorkflow_IsCfnElement(x interface{}) *bool
Returns `true` if a construct is a stack element (i.e. part of the synthesized cloudformation template).
Uses duck-typing instead of `instanceof` to allow stack elements from different versions of this library to be included in the same stack.
Returns: The construct as a stack element or undefined if it is not a stack element. Experimental.
func CfnWorkflow_IsCfnResource ¶
func CfnWorkflow_IsCfnResource(construct constructs.IConstruct) *bool
Check whether the given construct is a CfnResource. Experimental.
func CfnWorkflow_IsConstruct ¶
func CfnWorkflow_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Connection_IsConstruct ¶
func Connection_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Connection_IsResource ¶
func Connection_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func Database_IsConstruct ¶
func Database_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Database_IsResource ¶
func Database_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func Job_IsConstruct ¶
func Job_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Job_IsResource ¶
func Job_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func NewAssetCode_Override ¶
func NewAssetCode_Override(a AssetCode, path *string, options *awss3assets.AssetOptions)
Experimental.
func NewCfnClassifier_Override ¶
func NewCfnClassifier_Override(c CfnClassifier, scope awscdk.Construct, id *string, props *CfnClassifierProps)
Create a new `AWS::Glue::Classifier`.
func NewCfnConnection_Override ¶
func NewCfnConnection_Override(c CfnConnection, scope awscdk.Construct, id *string, props *CfnConnectionProps)
Create a new `AWS::Glue::Connection`.
func NewCfnCrawler_Override ¶
func NewCfnCrawler_Override(c CfnCrawler, scope awscdk.Construct, id *string, props *CfnCrawlerProps)
Create a new `AWS::Glue::Crawler`.
func NewCfnDataCatalogEncryptionSettings_Override ¶
func NewCfnDataCatalogEncryptionSettings_Override(c CfnDataCatalogEncryptionSettings, scope awscdk.Construct, id *string, props *CfnDataCatalogEncryptionSettingsProps)
Create a new `AWS::Glue::DataCatalogEncryptionSettings`.
func NewCfnDatabase_Override ¶
func NewCfnDatabase_Override(c CfnDatabase, scope awscdk.Construct, id *string, props *CfnDatabaseProps)
Create a new `AWS::Glue::Database`.
func NewCfnDevEndpoint_Override ¶
func NewCfnDevEndpoint_Override(c CfnDevEndpoint, scope awscdk.Construct, id *string, props *CfnDevEndpointProps)
Create a new `AWS::Glue::DevEndpoint`.
func NewCfnJob_Override ¶
func NewCfnJob_Override(c CfnJob, scope awscdk.Construct, id *string, props *CfnJobProps)
Create a new `AWS::Glue::Job`.
func NewCfnMLTransform_Override ¶
func NewCfnMLTransform_Override(c CfnMLTransform, scope awscdk.Construct, id *string, props *CfnMLTransformProps)
Create a new `AWS::Glue::MLTransform`.
func NewCfnPartition_Override ¶
func NewCfnPartition_Override(c CfnPartition, scope awscdk.Construct, id *string, props *CfnPartitionProps)
Create a new `AWS::Glue::Partition`.
func NewCfnRegistry_Override ¶
func NewCfnRegistry_Override(c CfnRegistry, scope awscdk.Construct, id *string, props *CfnRegistryProps)
Create a new `AWS::Glue::Registry`.
func NewCfnSchemaVersionMetadata_Override ¶
func NewCfnSchemaVersionMetadata_Override(c CfnSchemaVersionMetadata, scope awscdk.Construct, id *string, props *CfnSchemaVersionMetadataProps)
Create a new `AWS::Glue::SchemaVersionMetadata`.
func NewCfnSchemaVersion_Override ¶
func NewCfnSchemaVersion_Override(c CfnSchemaVersion, scope awscdk.Construct, id *string, props *CfnSchemaVersionProps)
Create a new `AWS::Glue::SchemaVersion`.
func NewCfnSchema_Override ¶
func NewCfnSchema_Override(c CfnSchema, scope awscdk.Construct, id *string, props *CfnSchemaProps)
Create a new `AWS::Glue::Schema`.
func NewCfnSecurityConfiguration_Override ¶
func NewCfnSecurityConfiguration_Override(c CfnSecurityConfiguration, scope awscdk.Construct, id *string, props *CfnSecurityConfigurationProps)
Create a new `AWS::Glue::SecurityConfiguration`.
func NewCfnTable_Override ¶
func NewCfnTable_Override(c CfnTable, scope awscdk.Construct, id *string, props *CfnTableProps)
Create a new `AWS::Glue::Table`.
func NewCfnTrigger_Override ¶
func NewCfnTrigger_Override(c CfnTrigger, scope awscdk.Construct, id *string, props *CfnTriggerProps)
Create a new `AWS::Glue::Trigger`.
func NewCfnWorkflow_Override ¶
func NewCfnWorkflow_Override(c CfnWorkflow, scope awscdk.Construct, id *string, props *CfnWorkflowProps)
Create a new `AWS::Glue::Workflow`.
func NewClassificationString_Override ¶
func NewClassificationString_Override(c ClassificationString, value *string)
Experimental.
func NewConnectionType_Override ¶
func NewConnectionType_Override(c ConnectionType, name *string)
Experimental.
func NewConnection_Override ¶
func NewConnection_Override(c Connection, scope constructs.Construct, id *string, props *ConnectionProps)
Experimental.
func NewDataFormat_Override ¶
func NewDataFormat_Override(d DataFormat, props *DataFormatProps)
Experimental.
func NewDatabase_Override ¶
func NewDatabase_Override(d Database, scope constructs.Construct, id *string, props *DatabaseProps)
Experimental.
func NewInputFormat_Override ¶
func NewInputFormat_Override(i InputFormat, className *string)
Experimental.
func NewJob_Override ¶
Experimental.
func NewOutputFormat_Override ¶
func NewOutputFormat_Override(o OutputFormat, className *string)
Experimental.
func NewS3Code_Override ¶
Experimental.
func NewSecurityConfiguration_Override ¶
func NewSecurityConfiguration_Override(s SecurityConfiguration, scope constructs.Construct, id *string, props *SecurityConfigurationProps)
Experimental.
func NewSerializationLibrary_Override ¶
func NewSerializationLibrary_Override(s SerializationLibrary, className *string)
Experimental.
func NewTable_Override ¶
func NewTable_Override(t Table, scope constructs.Construct, id *string, props *TableProps)
Experimental.
func SecurityConfiguration_IsConstruct ¶
func SecurityConfiguration_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func SecurityConfiguration_IsResource ¶
func SecurityConfiguration_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
func Table_IsConstruct ¶
func Table_IsConstruct(x interface{}) *bool
Return whether the given object is a Construct. Experimental.
func Table_IsResource ¶
func Table_IsResource(construct awscdk.IConstruct) *bool
Check whether the given construct is a Resource. Experimental.
Types ¶
type AssetCode ¶
type AssetCode interface { Code // Called when the Job is initialized to allow this object to bind. // Experimental. Bind(scope constructs.Construct, grantable awsiam.IGrantable) *CodeConfig }
Job Code from a local file.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import monocdk "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var dockerImage dockerImage var grantable iGrantable var localBundling iLocalBundling assetCode := awscdk.Aws_glue.NewAssetCode(jsii.String("path"), &assetOptions{ assetHash: jsii.String("assetHash"), assetHashType: monocdk.assetHashType_SOURCE, bundling: &bundlingOptions{ image: dockerImage, // the properties below are optional command: []*string{ jsii.String("command"), }, entrypoint: []*string{ jsii.String("entrypoint"), }, environment: map[string]*string{ "environmentKey": jsii.String("environment"), }, local: localBundling, outputType: monocdk.bundlingOutput_ARCHIVED, securityOpt: jsii.String("securityOpt"), user: jsii.String("user"), volumes: []dockerVolume{ &dockerVolume{ containerPath: jsii.String("containerPath"), hostPath: jsii.String("hostPath"), // the properties below are optional consistency: monocdk.dockerVolumeConsistency_CONSISTENT, }, }, workingDirectory: jsii.String("workingDirectory"), }, exclude: []*string{ jsii.String("exclude"), }, follow: awscdk.Assets.followMode_NEVER, followSymlinks: monocdk.symlinkFollowMode_NEVER, ignoreMode: monocdk.ignoreMode_GLOB, readers: []*iGrantable{ grantable, }, sourceHash: jsii.String("sourceHash"), })
Experimental.
func AssetCode_FromAsset ¶
func AssetCode_FromAsset(path *string, options *awss3assets.AssetOptions) AssetCode
Job code from a local disk path. Experimental.
func Code_FromAsset ¶
func Code_FromAsset(path *string, options *awss3assets.AssetOptions) AssetCode
Job code from a local disk path. Experimental.
func NewAssetCode ¶
func NewAssetCode(path *string, options *awss3assets.AssetOptions) AssetCode
Experimental.
func S3Code_FromAsset ¶
func S3Code_FromAsset(path *string, options *awss3assets.AssetOptions) AssetCode
Job code from a local disk path. Experimental.
type CfnClassifier ¶
type CfnClassifier interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A classifier for comma-separated values (CSV). CsvClassifier() interface{} SetCsvClassifier(val interface{}) // A classifier that uses `grok` . GrokClassifier() interface{} SetGrokClassifier(val interface{}) // A classifier for JSON content. JsonClassifier() interface{} SetJsonClassifier(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // A classifier for XML content. XmlClassifier() interface{} SetXmlClassifier(val interface{}) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Classifier`.
The `AWS::Glue::Classifier` resource creates an AWS Glue classifier that categorizes data sources and specifies schemas. For more information, see [Adding Classifiers to a Crawler](https://docs.aws.amazon.com/glue/latest/dg/add-classifier.html) and [Classifier Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-classifiers.html#aws-glue-api-crawler-classifiers-Classifier) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClassifier := awscdk.Aws_glue.NewCfnClassifier(this, jsii.String("MyCfnClassifier"), &cfnClassifierProps{ csvClassifier: &csvClassifierProperty{ allowSingleColumn: jsii.Boolean(false), containsHeader: jsii.String("containsHeader"), delimiter: jsii.String("delimiter"), disableValueTrimming: jsii.Boolean(false), header: []*string{ jsii.String("header"), }, name: jsii.String("name"), quoteSymbol: jsii.String("quoteSymbol"), }, grokClassifier: &grokClassifierProperty{ classification: jsii.String("classification"), grokPattern: jsii.String("grokPattern"), // the properties below are optional customPatterns: jsii.String("customPatterns"), name: jsii.String("name"), }, jsonClassifier: &jsonClassifierProperty{ jsonPath: jsii.String("jsonPath"), // the properties below are optional name: jsii.String("name"), }, xmlClassifier: &xMLClassifierProperty{ classification: jsii.String("classification"), rowTag: jsii.String("rowTag"), // the properties below are optional name: jsii.String("name"), }, })
func NewCfnClassifier ¶
func NewCfnClassifier(scope awscdk.Construct, id *string, props *CfnClassifierProps) CfnClassifier
Create a new `AWS::Glue::Classifier`.
type CfnClassifierProps ¶
type CfnClassifierProps struct { // A classifier for comma-separated values (CSV). CsvClassifier interface{} `field:"optional" json:"csvClassifier" yaml:"csvClassifier"` // A classifier that uses `grok` . GrokClassifier interface{} `field:"optional" json:"grokClassifier" yaml:"grokClassifier"` // A classifier for JSON content. JsonClassifier interface{} `field:"optional" json:"jsonClassifier" yaml:"jsonClassifier"` // A classifier for XML content. XmlClassifier interface{} `field:"optional" json:"xmlClassifier" yaml:"xmlClassifier"` }
Properties for defining a `CfnClassifier`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnClassifierProps := &cfnClassifierProps{ csvClassifier: &csvClassifierProperty{ allowSingleColumn: jsii.Boolean(false), containsHeader: jsii.String("containsHeader"), delimiter: jsii.String("delimiter"), disableValueTrimming: jsii.Boolean(false), header: []*string{ jsii.String("header"), }, name: jsii.String("name"), quoteSymbol: jsii.String("quoteSymbol"), }, grokClassifier: &grokClassifierProperty{ classification: jsii.String("classification"), grokPattern: jsii.String("grokPattern"), // the properties below are optional customPatterns: jsii.String("customPatterns"), name: jsii.String("name"), }, jsonClassifier: &jsonClassifierProperty{ jsonPath: jsii.String("jsonPath"), // the properties below are optional name: jsii.String("name"), }, xmlClassifier: &xMLClassifierProperty{ classification: jsii.String("classification"), rowTag: jsii.String("rowTag"), // the properties below are optional name: jsii.String("name"), }, }
type CfnClassifier_CsvClassifierProperty ¶
type CfnClassifier_CsvClassifierProperty struct { // Enables the processing of files that contain only one column. AllowSingleColumn interface{} `field:"optional" json:"allowSingleColumn" yaml:"allowSingleColumn"` // Indicates whether the CSV file contains a header. // // A value of `UNKNOWN` specifies that the classifier will detect whether the CSV file contains headings. // // A value of `PRESENT` specifies that the CSV file contains headings. // // A value of `ABSENT` specifies that the CSV file does not contain headings. ContainsHeader *string `field:"optional" json:"containsHeader" yaml:"containsHeader"` // A custom symbol to denote what separates each column entry in the row. Delimiter *string `field:"optional" json:"delimiter" yaml:"delimiter"` // Specifies not to trim values before identifying the type of column values. // // The default value is `true` . DisableValueTrimming interface{} `field:"optional" json:"disableValueTrimming" yaml:"disableValueTrimming"` // A list of strings representing column names. Header *[]*string `field:"optional" json:"header" yaml:"header"` // The name of the classifier. Name *string `field:"optional" json:"name" yaml:"name"` // A custom symbol to denote what combines content into a single column value. // // It must be different from the column delimiter. QuoteSymbol *string `field:"optional" json:"quoteSymbol" yaml:"quoteSymbol"` }
A classifier for custom `CSV` content.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" csvClassifierProperty := &csvClassifierProperty{ allowSingleColumn: jsii.Boolean(false), containsHeader: jsii.String("containsHeader"), delimiter: jsii.String("delimiter"), disableValueTrimming: jsii.Boolean(false), header: []*string{ jsii.String("header"), }, name: jsii.String("name"), quoteSymbol: jsii.String("quoteSymbol"), }
type CfnClassifier_GrokClassifierProperty ¶
type CfnClassifier_GrokClassifierProperty struct { // An identifier of the data format that the classifier matches, such as Twitter, JSON, Omniture logs, and so on. Classification *string `field:"required" json:"classification" yaml:"classification"` // The grok pattern applied to a data store by this classifier. // // For more information, see built-in patterns in [Writing Custom Classifiers](https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html) . GrokPattern *string `field:"required" json:"grokPattern" yaml:"grokPattern"` // Optional custom grok patterns defined by this classifier. // // For more information, see custom patterns in [Writing Custom Classifiers](https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html) . CustomPatterns *string `field:"optional" json:"customPatterns" yaml:"customPatterns"` // The name of the classifier. Name *string `field:"optional" json:"name" yaml:"name"` }
A classifier that uses `grok` patterns.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" grokClassifierProperty := &grokClassifierProperty{ classification: jsii.String("classification"), grokPattern: jsii.String("grokPattern"), // the properties below are optional customPatterns: jsii.String("customPatterns"), name: jsii.String("name"), }
type CfnClassifier_JsonClassifierProperty ¶
type CfnClassifier_JsonClassifierProperty struct { // A `JsonPath` string defining the JSON data for the classifier to classify. // // AWS Glue supports a subset of `JsonPath` , as described in [Writing JsonPath Custom Classifiers](https://docs.aws.amazon.com/glue/latest/dg/custom-classifier.html#custom-classifier-json) . JsonPath *string `field:"required" json:"jsonPath" yaml:"jsonPath"` // The name of the classifier. Name *string `field:"optional" json:"name" yaml:"name"` }
A classifier for `JSON` content.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jsonClassifierProperty := &jsonClassifierProperty{ jsonPath: jsii.String("jsonPath"), // the properties below are optional name: jsii.String("name"), }
type CfnClassifier_XMLClassifierProperty ¶
type CfnClassifier_XMLClassifierProperty struct { // An identifier of the data format that the classifier matches. Classification *string `field:"required" json:"classification" yaml:"classification"` // The XML tag designating the element that contains each record in an XML document being parsed. // // This can't identify a self-closing element (closed by `/>` ). An empty row element that contains only attributes can be parsed as long as it ends with a closing tag (for example, `<row item_a="A" item_b="B"></row>` is okay, but `<row item_a="A" item_b="B" />` is not). RowTag *string `field:"required" json:"rowTag" yaml:"rowTag"` // The name of the classifier. Name *string `field:"optional" json:"name" yaml:"name"` }
A classifier for `XML` content.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" xMLClassifierProperty := &xMLClassifierProperty{ classification: jsii.String("classification"), rowTag: jsii.String("rowTag"), // the properties below are optional name: jsii.String("name"), }
type CfnConnection ¶
type CfnConnection interface { awscdk.CfnResource awscdk.IInspectable // The ID of the data catalog to create the catalog object in. // // Currently, this should be the AWS account ID. // // > To specify the account ID, you can use the `Ref` intrinsic function with the `AWS::AccountId` pseudo parameter. For example: `!Ref AWS::AccountId` . CatalogId() *string SetCatalogId(val *string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // The connection that you want to create. ConnectionInput() interface{} SetConnectionInput(val interface{}) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Connection`.
The `AWS::Glue::Connection` resource specifies an AWS Glue connection to a data source. For more information, see [Adding a Connection to Your Data Store](https://docs.aws.amazon.com/glue/latest/dg/populate-add-connection.html) and [Connection Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-connections.html#aws-glue-api-catalog-connections-Connection) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var connectionProperties interface{} cfnConnection := awscdk.Aws_glue.NewCfnConnection(this, jsii.String("MyCfnConnection"), &cfnConnectionProps{ catalogId: jsii.String("catalogId"), connectionInput: &connectionInputProperty{ connectionType: jsii.String("connectionType"), // the properties below are optional connectionProperties: connectionProperties, description: jsii.String("description"), matchCriteria: []*string{ jsii.String("matchCriteria"), }, name: jsii.String("name"), physicalConnectionRequirements: &physicalConnectionRequirementsProperty{ availabilityZone: jsii.String("availabilityZone"), securityGroupIdList: []*string{ jsii.String("securityGroupIdList"), }, subnetId: jsii.String("subnetId"), }, }, })
func NewCfnConnection ¶
func NewCfnConnection(scope awscdk.Construct, id *string, props *CfnConnectionProps) CfnConnection
Create a new `AWS::Glue::Connection`.
type CfnConnectionProps ¶
type CfnConnectionProps struct { // The ID of the data catalog to create the catalog object in. // // Currently, this should be the AWS account ID. // // > To specify the account ID, you can use the `Ref` intrinsic function with the `AWS::AccountId` pseudo parameter. For example: `!Ref AWS::AccountId` . CatalogId *string `field:"required" json:"catalogId" yaml:"catalogId"` // The connection that you want to create. ConnectionInput interface{} `field:"required" json:"connectionInput" yaml:"connectionInput"` }
Properties for defining a `CfnConnection`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var connectionProperties interface{} cfnConnectionProps := &cfnConnectionProps{ catalogId: jsii.String("catalogId"), connectionInput: &connectionInputProperty{ connectionType: jsii.String("connectionType"), // the properties below are optional connectionProperties: connectionProperties, description: jsii.String("description"), matchCriteria: []*string{ jsii.String("matchCriteria"), }, name: jsii.String("name"), physicalConnectionRequirements: &physicalConnectionRequirementsProperty{ availabilityZone: jsii.String("availabilityZone"), securityGroupIdList: []*string{ jsii.String("securityGroupIdList"), }, subnetId: jsii.String("subnetId"), }, }, }
type CfnConnection_ConnectionInputProperty ¶
type CfnConnection_ConnectionInputProperty struct { // The type of the connection. Currently, these types are supported:. // // - `JDBC` - Designates a connection to a database through Java Database Connectivity (JDBC). // - `KAFKA` - Designates a connection to an Apache Kafka streaming platform. // - `MONGODB` - Designates a connection to a MongoDB document database. // - `NETWORK` - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC). // // SFTP is not supported. ConnectionType *string `field:"required" json:"connectionType" yaml:"connectionType"` // These key-value pairs define parameters for the connection. ConnectionProperties interface{} `field:"optional" json:"connectionProperties" yaml:"connectionProperties"` // The description of the connection. Description *string `field:"optional" json:"description" yaml:"description"` // A list of criteria that can be used in selecting this connection. MatchCriteria *[]*string `field:"optional" json:"matchCriteria" yaml:"matchCriteria"` // The name of the connection. Name *string `field:"optional" json:"name" yaml:"name"` // A map of physical connection requirements, such as virtual private cloud (VPC) and `SecurityGroup` , that are needed to successfully make this connection. PhysicalConnectionRequirements interface{} `field:"optional" json:"physicalConnectionRequirements" yaml:"physicalConnectionRequirements"` }
A structure that is used to specify a connection to create or update.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var connectionProperties interface{} connectionInputProperty := &connectionInputProperty{ connectionType: jsii.String("connectionType"), // the properties below are optional connectionProperties: connectionProperties, description: jsii.String("description"), matchCriteria: []*string{ jsii.String("matchCriteria"), }, name: jsii.String("name"), physicalConnectionRequirements: &physicalConnectionRequirementsProperty{ availabilityZone: jsii.String("availabilityZone"), securityGroupIdList: []*string{ jsii.String("securityGroupIdList"), }, subnetId: jsii.String("subnetId"), }, }
type CfnConnection_PhysicalConnectionRequirementsProperty ¶
type CfnConnection_PhysicalConnectionRequirementsProperty struct { // The connection's Availability Zone. // // This field is redundant because the specified subnet implies the Availability Zone to be used. Currently the field must be populated, but it will be deprecated in the future. AvailabilityZone *string `field:"optional" json:"availabilityZone" yaml:"availabilityZone"` // The security group ID list used by the connection. SecurityGroupIdList *[]*string `field:"optional" json:"securityGroupIdList" yaml:"securityGroupIdList"` // The subnet ID used by the connection. SubnetId *string `field:"optional" json:"subnetId" yaml:"subnetId"` }
Specifies the physical requirements for a connection.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" physicalConnectionRequirementsProperty := &physicalConnectionRequirementsProperty{ availabilityZone: jsii.String("availabilityZone"), securityGroupIdList: []*string{ jsii.String("securityGroupIdList"), }, subnetId: jsii.String("subnetId"), }
type CfnCrawler ¶
type CfnCrawler interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // A list of UTF-8 strings that specify the names of custom classifiers that are associated with the crawler. Classifiers() *[]*string SetClassifiers(val *[]*string) // Crawler configuration information. // // This versioned JSON string allows users to specify aspects of a crawler's behavior. For more information, see [Configuring a Crawler](https://docs.aws.amazon.com/glue/latest/dg/crawler-configuration.html) . Configuration() *string SetConfiguration(val *string) // The name of the `SecurityConfiguration` structure to be used by this crawler. CrawlerSecurityConfiguration() *string SetCrawlerSecurityConfiguration(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The name of the database in which the crawler's output is stored. DatabaseName() *string SetDatabaseName(val *string) // A description of the crawler. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the crawler. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // A policy that specifies whether to crawl the entire dataset again, or to crawl only folders that were added since the last crawler run. RecrawlPolicy() interface{} SetRecrawlPolicy(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The Amazon Resource Name (ARN) of an IAM role that's used to access customer resources, such as Amazon Simple Storage Service (Amazon S3) data. Role() *string SetRole(val *string) // For scheduled crawlers, the schedule when the crawler runs. Schedule() interface{} SetSchedule(val interface{}) // The policy that specifies update and delete behaviors for the crawler. // // The policy tells the crawler what to do in the event that it detects a change in a table that already exists in the customer's database at the time of the crawl. The `SchemaChangePolicy` does not affect whether or how new tables and partitions are added. New tables and partitions are always created regardless of the `SchemaChangePolicy` on a crawler. // // The SchemaChangePolicy consists of two components, `UpdateBehavior` and `DeleteBehavior` . SchemaChangePolicy() interface{} SetSchemaChangePolicy(val interface{}) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The prefix added to the names of tables that are created. TablePrefix() *string SetTablePrefix(val *string) // The tags to use with this crawler. Tags() awscdk.TagManager // A collection of targets to crawl. Targets() interface{} SetTargets(val interface{}) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Crawler`.
The `AWS::Glue::Crawler` resource specifies an AWS Glue crawler. For more information, see [Cataloging Tables with a Crawler](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html) and [Crawler Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-crawler-crawling.html#aws-glue-api-crawler-crawling-Crawler) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var tags interface{} cfnCrawler := awscdk.Aws_glue.NewCfnCrawler(this, jsii.String("MyCfnCrawler"), &cfnCrawlerProps{ role: jsii.String("role"), targets: &targetsProperty{ catalogTargets: []interface{}{ &catalogTargetProperty{ databaseName: jsii.String("databaseName"), tables: []*string{ jsii.String("tables"), }, }, }, dynamoDbTargets: []interface{}{ &dynamoDBTargetProperty{ path: jsii.String("path"), }, }, jdbcTargets: []interface{}{ &jdbcTargetProperty{ connectionName: jsii.String("connectionName"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), }, }, mongoDbTargets: []interface{}{ &mongoDBTargetProperty{ connectionName: jsii.String("connectionName"), path: jsii.String("path"), }, }, s3Targets: []interface{}{ &s3TargetProperty{ connectionName: jsii.String("connectionName"), dlqEventQueueArn: jsii.String("dlqEventQueueArn"), eventQueueArn: jsii.String("eventQueueArn"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), sampleSize: jsii.Number(123), }, }, }, // the properties below are optional classifiers: []*string{ jsii.String("classifiers"), }, configuration: jsii.String("configuration"), crawlerSecurityConfiguration: jsii.String("crawlerSecurityConfiguration"), databaseName: jsii.String("databaseName"), description: jsii.String("description"), name: jsii.String("name"), recrawlPolicy: &recrawlPolicyProperty{ recrawlBehavior: jsii.String("recrawlBehavior"), }, schedule: &scheduleProperty{ scheduleExpression: jsii.String("scheduleExpression"), }, schemaChangePolicy: &schemaChangePolicyProperty{ deleteBehavior: jsii.String("deleteBehavior"), updateBehavior: jsii.String("updateBehavior"), }, tablePrefix: jsii.String("tablePrefix"), tags: tags, })
func NewCfnCrawler ¶
func NewCfnCrawler(scope awscdk.Construct, id *string, props *CfnCrawlerProps) CfnCrawler
Create a new `AWS::Glue::Crawler`.
type CfnCrawlerProps ¶
type CfnCrawlerProps struct { // The Amazon Resource Name (ARN) of an IAM role that's used to access customer resources, such as Amazon Simple Storage Service (Amazon S3) data. Role *string `field:"required" json:"role" yaml:"role"` // A collection of targets to crawl. Targets interface{} `field:"required" json:"targets" yaml:"targets"` // A list of UTF-8 strings that specify the names of custom classifiers that are associated with the crawler. Classifiers *[]*string `field:"optional" json:"classifiers" yaml:"classifiers"` // Crawler configuration information. // // This versioned JSON string allows users to specify aspects of a crawler's behavior. For more information, see [Configuring a Crawler](https://docs.aws.amazon.com/glue/latest/dg/crawler-configuration.html) . Configuration *string `field:"optional" json:"configuration" yaml:"configuration"` // The name of the `SecurityConfiguration` structure to be used by this crawler. CrawlerSecurityConfiguration *string `field:"optional" json:"crawlerSecurityConfiguration" yaml:"crawlerSecurityConfiguration"` // The name of the database in which the crawler's output is stored. DatabaseName *string `field:"optional" json:"databaseName" yaml:"databaseName"` // A description of the crawler. Description *string `field:"optional" json:"description" yaml:"description"` // The name of the crawler. Name *string `field:"optional" json:"name" yaml:"name"` // A policy that specifies whether to crawl the entire dataset again, or to crawl only folders that were added since the last crawler run. RecrawlPolicy interface{} `field:"optional" json:"recrawlPolicy" yaml:"recrawlPolicy"` // For scheduled crawlers, the schedule when the crawler runs. Schedule interface{} `field:"optional" json:"schedule" yaml:"schedule"` // The policy that specifies update and delete behaviors for the crawler. // // The policy tells the crawler what to do in the event that it detects a change in a table that already exists in the customer's database at the time of the crawl. The `SchemaChangePolicy` does not affect whether or how new tables and partitions are added. New tables and partitions are always created regardless of the `SchemaChangePolicy` on a crawler. // // The SchemaChangePolicy consists of two components, `UpdateBehavior` and `DeleteBehavior` . SchemaChangePolicy interface{} `field:"optional" json:"schemaChangePolicy" yaml:"schemaChangePolicy"` // The prefix added to the names of tables that are created. TablePrefix *string `field:"optional" json:"tablePrefix" yaml:"tablePrefix"` // The tags to use with this crawler. Tags interface{} `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnCrawler`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var tags interface{} cfnCrawlerProps := &cfnCrawlerProps{ role: jsii.String("role"), targets: &targetsProperty{ catalogTargets: []interface{}{ &catalogTargetProperty{ databaseName: jsii.String("databaseName"), tables: []*string{ jsii.String("tables"), }, }, }, dynamoDbTargets: []interface{}{ &dynamoDBTargetProperty{ path: jsii.String("path"), }, }, jdbcTargets: []interface{}{ &jdbcTargetProperty{ connectionName: jsii.String("connectionName"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), }, }, mongoDbTargets: []interface{}{ &mongoDBTargetProperty{ connectionName: jsii.String("connectionName"), path: jsii.String("path"), }, }, s3Targets: []interface{}{ &s3TargetProperty{ connectionName: jsii.String("connectionName"), dlqEventQueueArn: jsii.String("dlqEventQueueArn"), eventQueueArn: jsii.String("eventQueueArn"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), sampleSize: jsii.Number(123), }, }, }, // the properties below are optional classifiers: []*string{ jsii.String("classifiers"), }, configuration: jsii.String("configuration"), crawlerSecurityConfiguration: jsii.String("crawlerSecurityConfiguration"), databaseName: jsii.String("databaseName"), description: jsii.String("description"), name: jsii.String("name"), recrawlPolicy: &recrawlPolicyProperty{ recrawlBehavior: jsii.String("recrawlBehavior"), }, schedule: &scheduleProperty{ scheduleExpression: jsii.String("scheduleExpression"), }, schemaChangePolicy: &schemaChangePolicyProperty{ deleteBehavior: jsii.String("deleteBehavior"), updateBehavior: jsii.String("updateBehavior"), }, tablePrefix: jsii.String("tablePrefix"), tags: tags, }
type CfnCrawler_CatalogTargetProperty ¶
type CfnCrawler_CatalogTargetProperty struct { // The name of the database to be synchronized. DatabaseName *string `field:"optional" json:"databaseName" yaml:"databaseName"` // A list of the tables to be synchronized. Tables *[]*string `field:"optional" json:"tables" yaml:"tables"` }
Specifies an AWS Glue Data Catalog target.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" catalogTargetProperty := &catalogTargetProperty{ databaseName: jsii.String("databaseName"), tables: []*string{ jsii.String("tables"), }, }
type CfnCrawler_DynamoDBTargetProperty ¶
type CfnCrawler_DynamoDBTargetProperty struct { // The name of the DynamoDB table to crawl. Path *string `field:"optional" json:"path" yaml:"path"` }
Specifies an Amazon DynamoDB table to crawl.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" dynamoDBTargetProperty := &dynamoDBTargetProperty{ path: jsii.String("path"), }
type CfnCrawler_JdbcTargetProperty ¶
type CfnCrawler_JdbcTargetProperty struct { // The name of the connection to use to connect to the JDBC target. ConnectionName *string `field:"optional" json:"connectionName" yaml:"connectionName"` // A list of glob patterns used to exclude from the crawl. // // For more information, see [Catalog Tables with a Crawler](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html) . Exclusions *[]*string `field:"optional" json:"exclusions" yaml:"exclusions"` // The path of the JDBC target. Path *string `field:"optional" json:"path" yaml:"path"` }
Specifies a JDBC data store to crawl.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jdbcTargetProperty := &jdbcTargetProperty{ connectionName: jsii.String("connectionName"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), }
type CfnCrawler_MongoDBTargetProperty ¶
type CfnCrawler_MongoDBTargetProperty struct { // The name of the connection to use to connect to the Amazon DocumentDB or MongoDB target. ConnectionName *string `field:"optional" json:"connectionName" yaml:"connectionName"` // The path of the Amazon DocumentDB or MongoDB target (database/collection). Path *string `field:"optional" json:"path" yaml:"path"` }
Specifies an Amazon DocumentDB or MongoDB data store to crawl.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" mongoDBTargetProperty := &mongoDBTargetProperty{ connectionName: jsii.String("connectionName"), path: jsii.String("path"), }
type CfnCrawler_RecrawlPolicyProperty ¶
type CfnCrawler_RecrawlPolicyProperty struct { // Specifies whether to crawl the entire dataset again or to crawl only folders that were added since the last crawler run. // // A value of `CRAWL_EVERYTHING` specifies crawling the entire dataset again. // // A value of `CRAWL_NEW_FOLDERS_ONLY` specifies crawling only folders that were added since the last crawler run. // // A value of `CRAWL_EVENT_MODE` specifies crawling only the changes identified by Amazon S3 events. RecrawlBehavior *string `field:"optional" json:"recrawlBehavior" yaml:"recrawlBehavior"` }
When crawling an Amazon S3 data source after the first crawl is complete, specifies whether to crawl the entire dataset again or to crawl only folders that were added since the last crawler run.
For more information, see [Incremental Crawls in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/incremental-crawls.html) in the developer guide.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" recrawlPolicyProperty := &recrawlPolicyProperty{ recrawlBehavior: jsii.String("recrawlBehavior"), }
type CfnCrawler_S3TargetProperty ¶
type CfnCrawler_S3TargetProperty struct { // The name of a connection which allows a job or crawler to access data in Amazon S3 within an Amazon Virtual Private Cloud environment (Amazon VPC). ConnectionName *string `field:"optional" json:"connectionName" yaml:"connectionName"` // `CfnCrawler.S3TargetProperty.DlqEventQueueArn`. DlqEventQueueArn *string `field:"optional" json:"dlqEventQueueArn" yaml:"dlqEventQueueArn"` // `CfnCrawler.S3TargetProperty.EventQueueArn`. EventQueueArn *string `field:"optional" json:"eventQueueArn" yaml:"eventQueueArn"` // A list of glob patterns used to exclude from the crawl. // // For more information, see [Catalog Tables with a Crawler](https://docs.aws.amazon.com/glue/latest/dg/add-crawler.html) . Exclusions *[]*string `field:"optional" json:"exclusions" yaml:"exclusions"` // The path to the Amazon S3 target. Path *string `field:"optional" json:"path" yaml:"path"` // Sets the number of files in each leaf folder to be crawled when crawling sample files in a dataset. // // If not set, all the files are crawled. A valid value is an integer between 1 and 249. SampleSize *float64 `field:"optional" json:"sampleSize" yaml:"sampleSize"` }
Specifies a data store in Amazon Simple Storage Service (Amazon S3).
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" s3TargetProperty := &s3TargetProperty{ connectionName: jsii.String("connectionName"), dlqEventQueueArn: jsii.String("dlqEventQueueArn"), eventQueueArn: jsii.String("eventQueueArn"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), sampleSize: jsii.Number(123), }
type CfnCrawler_ScheduleProperty ¶
type CfnCrawler_ScheduleProperty struct { // A `cron` expression used to specify the schedule. // // For more information, see [Time-Based Schedules for Jobs and Crawlers](https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html) . For example, to run something every day at 12:15 UTC, specify `cron(15 12 * * ? *)` . ScheduleExpression *string `field:"optional" json:"scheduleExpression" yaml:"scheduleExpression"` }
A scheduling object using a `cron` statement to schedule an event.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" scheduleProperty := &scheduleProperty{ scheduleExpression: jsii.String("scheduleExpression"), }
type CfnCrawler_SchemaChangePolicyProperty ¶
type CfnCrawler_SchemaChangePolicyProperty struct { // The deletion behavior when the crawler finds a deleted object. // // A value of `LOG` specifies that if a table or partition is found to no longer exist, do not delete it, only log that it was found to no longer exist. // // A value of `DELETE_FROM_DATABASE` specifies that if a table or partition is found to have been removed, delete it from the database. // // A value of `DEPRECATE_IN_DATABASE` specifies that if a table has been found to no longer exist, to add a property to the table that says "DEPRECATED" and includes a timestamp with the time of deprecation. DeleteBehavior *string `field:"optional" json:"deleteBehavior" yaml:"deleteBehavior"` // The update behavior when the crawler finds a changed schema. // // A value of `LOG` specifies that if a table or a partition already exists, and a change is detected, do not update it, only log that a change was detected. Add new tables and new partitions (including on existing tables). // // A value of `UPDATE_IN_DATABASE` specifies that if a table or partition already exists, and a change is detected, update it. Add new tables and partitions. UpdateBehavior *string `field:"optional" json:"updateBehavior" yaml:"updateBehavior"` }
The policy that specifies update and delete behaviors for the crawler.
The policy tells the crawler what to do in the event that it detects a change in a table that already exists in the customer's database at the time of the crawl. The `SchemaChangePolicy` does not affect whether or how new tables and partitions are added. New tables and partitions are always created regardless of the `SchemaChangePolicy` on a crawler.
The SchemaChangePolicy consists of two components, `UpdateBehavior` and `DeleteBehavior` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaChangePolicyProperty := &schemaChangePolicyProperty{ deleteBehavior: jsii.String("deleteBehavior"), updateBehavior: jsii.String("updateBehavior"), }
type CfnCrawler_TargetsProperty ¶
type CfnCrawler_TargetsProperty struct { // Specifies AWS Glue Data Catalog targets. CatalogTargets interface{} `field:"optional" json:"catalogTargets" yaml:"catalogTargets"` // Specifies Amazon DynamoDB targets. DynamoDbTargets interface{} `field:"optional" json:"dynamoDbTargets" yaml:"dynamoDbTargets"` // Specifies JDBC targets. JdbcTargets interface{} `field:"optional" json:"jdbcTargets" yaml:"jdbcTargets"` // A list of Mongo DB targets. MongoDbTargets interface{} `field:"optional" json:"mongoDbTargets" yaml:"mongoDbTargets"` // Specifies Amazon Simple Storage Service (Amazon S3) targets. S3Targets interface{} `field:"optional" json:"s3Targets" yaml:"s3Targets"` }
Specifies data stores to crawl.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" targetsProperty := &targetsProperty{ catalogTargets: []interface{}{ &catalogTargetProperty{ databaseName: jsii.String("databaseName"), tables: []*string{ jsii.String("tables"), }, }, }, dynamoDbTargets: []interface{}{ &dynamoDBTargetProperty{ path: jsii.String("path"), }, }, jdbcTargets: []interface{}{ &jdbcTargetProperty{ connectionName: jsii.String("connectionName"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), }, }, mongoDbTargets: []interface{}{ &mongoDBTargetProperty{ connectionName: jsii.String("connectionName"), path: jsii.String("path"), }, }, s3Targets: []interface{}{ &s3TargetProperty{ connectionName: jsii.String("connectionName"), dlqEventQueueArn: jsii.String("dlqEventQueueArn"), eventQueueArn: jsii.String("eventQueueArn"), exclusions: []*string{ jsii.String("exclusions"), }, path: jsii.String("path"), sampleSize: jsii.Number(123), }, }, }
type CfnDataCatalogEncryptionSettings ¶
type CfnDataCatalogEncryptionSettings interface { awscdk.CfnResource awscdk.IInspectable // The ID of the Data Catalog in which the settings are created. CatalogId() *string SetCatalogId(val *string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // Contains configuration information for maintaining Data Catalog security. DataCatalogEncryptionSettings() interface{} SetDataCatalogEncryptionSettings(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::DataCatalogEncryptionSettings`.
Sets the security configuration for a specified catalog. After the configuration has been set, the specified encryption is applied to every catalog write thereafter.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDataCatalogEncryptionSettings := awscdk.Aws_glue.NewCfnDataCatalogEncryptionSettings(this, jsii.String("MyCfnDataCatalogEncryptionSettings"), &cfnDataCatalogEncryptionSettingsProps{ catalogId: jsii.String("catalogId"), dataCatalogEncryptionSettings: &dataCatalogEncryptionSettingsProperty{ connectionPasswordEncryption: &connectionPasswordEncryptionProperty{ kmsKeyId: jsii.String("kmsKeyId"), returnConnectionPasswordEncrypted: jsii.Boolean(false), }, encryptionAtRest: &encryptionAtRestProperty{ catalogEncryptionMode: jsii.String("catalogEncryptionMode"), sseAwsKmsKeyId: jsii.String("sseAwsKmsKeyId"), }, }, })
func NewCfnDataCatalogEncryptionSettings ¶
func NewCfnDataCatalogEncryptionSettings(scope awscdk.Construct, id *string, props *CfnDataCatalogEncryptionSettingsProps) CfnDataCatalogEncryptionSettings
Create a new `AWS::Glue::DataCatalogEncryptionSettings`.
type CfnDataCatalogEncryptionSettingsProps ¶
type CfnDataCatalogEncryptionSettingsProps struct { // The ID of the Data Catalog in which the settings are created. CatalogId *string `field:"required" json:"catalogId" yaml:"catalogId"` // Contains configuration information for maintaining Data Catalog security. DataCatalogEncryptionSettings interface{} `field:"required" json:"dataCatalogEncryptionSettings" yaml:"dataCatalogEncryptionSettings"` }
Properties for defining a `CfnDataCatalogEncryptionSettings`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnDataCatalogEncryptionSettingsProps := &cfnDataCatalogEncryptionSettingsProps{ catalogId: jsii.String("catalogId"), dataCatalogEncryptionSettings: &dataCatalogEncryptionSettingsProperty{ connectionPasswordEncryption: &connectionPasswordEncryptionProperty{ kmsKeyId: jsii.String("kmsKeyId"), returnConnectionPasswordEncrypted: jsii.Boolean(false), }, encryptionAtRest: &encryptionAtRestProperty{ catalogEncryptionMode: jsii.String("catalogEncryptionMode"), sseAwsKmsKeyId: jsii.String("sseAwsKmsKeyId"), }, }, }
type CfnDataCatalogEncryptionSettings_ConnectionPasswordEncryptionProperty ¶
type CfnDataCatalogEncryptionSettings_ConnectionPasswordEncryptionProperty struct { // An AWS KMS key that is used to encrypt the connection password. // // If connection password protection is enabled, the caller of `CreateConnection` and `UpdateConnection` needs at least `kms:Encrypt` permission on the specified AWS KMS key, to encrypt passwords before storing them in the Data Catalog. You can set the decrypt permission to enable or restrict access on the password key according to your security requirements. KmsKeyId *string `field:"optional" json:"kmsKeyId" yaml:"kmsKeyId"` // When the `ReturnConnectionPasswordEncrypted` flag is set to "true", passwords remain encrypted in the responses of `GetConnection` and `GetConnections` . // // This encryption takes effect independently from catalog encryption. ReturnConnectionPasswordEncrypted interface{} `field:"optional" json:"returnConnectionPasswordEncrypted" yaml:"returnConnectionPasswordEncrypted"` }
The data structure used by the Data Catalog to encrypt the password as part of `CreateConnection` or `UpdateConnection` and store it in the `ENCRYPTED_PASSWORD` field in the connection properties.
You can enable catalog encryption or only password encryption.
When a `CreationConnection` request arrives containing a password, the Data Catalog first encrypts the password using your AWS KMS key. It then encrypts the whole connection object again if catalog encryption is also enabled.
This encryption requires that you set AWS KMS key permissions to enable or restrict access on the password key according to your security requirements. For example, you might want only administrators to have decrypt permission on the password key.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" connectionPasswordEncryptionProperty := &connectionPasswordEncryptionProperty{ kmsKeyId: jsii.String("kmsKeyId"), returnConnectionPasswordEncrypted: jsii.Boolean(false), }
type CfnDataCatalogEncryptionSettings_DataCatalogEncryptionSettingsProperty ¶
type CfnDataCatalogEncryptionSettings_DataCatalogEncryptionSettingsProperty struct { // When connection password protection is enabled, the Data Catalog uses a customer-provided key to encrypt the password as part of `CreateConnection` or `UpdateConnection` and store it in the `ENCRYPTED_PASSWORD` field in the connection properties. // // You can enable catalog encryption or only password encryption. ConnectionPasswordEncryption interface{} `field:"optional" json:"connectionPasswordEncryption" yaml:"connectionPasswordEncryption"` // Specifies the encryption-at-rest configuration for the Data Catalog. EncryptionAtRest interface{} `field:"optional" json:"encryptionAtRest" yaml:"encryptionAtRest"` }
Contains configuration information for maintaining Data Catalog security.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" dataCatalogEncryptionSettingsProperty := &dataCatalogEncryptionSettingsProperty{ connectionPasswordEncryption: &connectionPasswordEncryptionProperty{ kmsKeyId: jsii.String("kmsKeyId"), returnConnectionPasswordEncrypted: jsii.Boolean(false), }, encryptionAtRest: &encryptionAtRestProperty{ catalogEncryptionMode: jsii.String("catalogEncryptionMode"), sseAwsKmsKeyId: jsii.String("sseAwsKmsKeyId"), }, }
type CfnDataCatalogEncryptionSettings_EncryptionAtRestProperty ¶
type CfnDataCatalogEncryptionSettings_EncryptionAtRestProperty struct { // The encryption-at-rest mode for encrypting Data Catalog data. CatalogEncryptionMode *string `field:"optional" json:"catalogEncryptionMode" yaml:"catalogEncryptionMode"` // The ID of the AWS KMS key to use for encryption at rest. SseAwsKmsKeyId *string `field:"optional" json:"sseAwsKmsKeyId" yaml:"sseAwsKmsKeyId"` }
Specifies the encryption-at-rest configuration for the Data Catalog.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" encryptionAtRestProperty := &encryptionAtRestProperty{ catalogEncryptionMode: jsii.String("catalogEncryptionMode"), sseAwsKmsKeyId: jsii.String("sseAwsKmsKeyId"), }
type CfnDatabase ¶
type CfnDatabase interface { awscdk.CfnResource awscdk.IInspectable // The AWS account ID for the account in which to create the catalog object. // // > To specify the account ID, you can use the `Ref` intrinsic function with the `AWS::AccountId` pseudo parameter. For example: `!Ref AWS::AccountId` CatalogId() *string SetCatalogId(val *string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The metadata for the database. DatabaseInput() interface{} SetDatabaseInput(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Database`.
The `AWS::Glue::Database` resource specifies a logical grouping of tables in AWS Glue . For more information, see [Defining a Database in Your Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/define-database.html) and [Database Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-databases.html#aws-glue-api-catalog-databases-Database) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} cfnDatabase := awscdk.Aws_glue.NewCfnDatabase(this, jsii.String("MyCfnDatabase"), &cfnDatabaseProps{ catalogId: jsii.String("catalogId"), databaseInput: &databaseInputProperty{ createTableDefaultPermissions: []interface{}{ &principalPrivilegesProperty{ permissions: []*string{ jsii.String("permissions"), }, principal: &dataLakePrincipalProperty{ dataLakePrincipalIdentifier: jsii.String("dataLakePrincipalIdentifier"), }, }, }, description: jsii.String("description"), locationUri: jsii.String("locationUri"), name: jsii.String("name"), parameters: parameters, targetDatabase: &databaseIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), }, }, })
func NewCfnDatabase ¶
func NewCfnDatabase(scope awscdk.Construct, id *string, props *CfnDatabaseProps) CfnDatabase
Create a new `AWS::Glue::Database`.
type CfnDatabaseProps ¶
type CfnDatabaseProps struct { // The AWS account ID for the account in which to create the catalog object. // // > To specify the account ID, you can use the `Ref` intrinsic function with the `AWS::AccountId` pseudo parameter. For example: `!Ref AWS::AccountId` CatalogId *string `field:"required" json:"catalogId" yaml:"catalogId"` // The metadata for the database. DatabaseInput interface{} `field:"required" json:"databaseInput" yaml:"databaseInput"` }
Properties for defining a `CfnDatabase`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} cfnDatabaseProps := &cfnDatabaseProps{ catalogId: jsii.String("catalogId"), databaseInput: &databaseInputProperty{ createTableDefaultPermissions: []interface{}{ &principalPrivilegesProperty{ permissions: []*string{ jsii.String("permissions"), }, principal: &dataLakePrincipalProperty{ dataLakePrincipalIdentifier: jsii.String("dataLakePrincipalIdentifier"), }, }, }, description: jsii.String("description"), locationUri: jsii.String("locationUri"), name: jsii.String("name"), parameters: parameters, targetDatabase: &databaseIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), }, }, }
type CfnDatabase_DataLakePrincipalProperty ¶
type CfnDatabase_DataLakePrincipalProperty struct { // An identifier for the AWS Lake Formation principal. DataLakePrincipalIdentifier *string `field:"optional" json:"dataLakePrincipalIdentifier" yaml:"dataLakePrincipalIdentifier"` }
The AWS Lake Formation principal.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" dataLakePrincipalProperty := &dataLakePrincipalProperty{ dataLakePrincipalIdentifier: jsii.String("dataLakePrincipalIdentifier"), }
type CfnDatabase_DatabaseIdentifierProperty ¶
type CfnDatabase_DatabaseIdentifierProperty struct { // The ID of the Data Catalog in which the database resides. CatalogId *string `field:"optional" json:"catalogId" yaml:"catalogId"` // The name of the catalog database. DatabaseName *string `field:"optional" json:"databaseName" yaml:"databaseName"` }
A structure that describes a target database for resource linking.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" databaseIdentifierProperty := &databaseIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), }
type CfnDatabase_DatabaseInputProperty ¶
type CfnDatabase_DatabaseInputProperty struct { // Creates a set of default permissions on the table for principals. CreateTableDefaultPermissions interface{} `field:"optional" json:"createTableDefaultPermissions" yaml:"createTableDefaultPermissions"` // A description of the database. Description *string `field:"optional" json:"description" yaml:"description"` // The location of the database (for example, an HDFS path). LocationUri *string `field:"optional" json:"locationUri" yaml:"locationUri"` // The name of the database. // // For Hive compatibility, this is folded to lowercase when it is stored. Name *string `field:"optional" json:"name" yaml:"name"` // These key-value pairs define parameters and properties of the database. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // A `DatabaseIdentifier` structure that describes a target database for resource linking. TargetDatabase interface{} `field:"optional" json:"targetDatabase" yaml:"targetDatabase"` }
The structure used to create or update a database.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} databaseInputProperty := &databaseInputProperty{ createTableDefaultPermissions: []interface{}{ &principalPrivilegesProperty{ permissions: []*string{ jsii.String("permissions"), }, principal: &dataLakePrincipalProperty{ dataLakePrincipalIdentifier: jsii.String("dataLakePrincipalIdentifier"), }, }, }, description: jsii.String("description"), locationUri: jsii.String("locationUri"), name: jsii.String("name"), parameters: parameters, targetDatabase: &databaseIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), }, }
type CfnDatabase_PrincipalPrivilegesProperty ¶
type CfnDatabase_PrincipalPrivilegesProperty struct { // The permissions that are granted to the principal. Permissions *[]*string `field:"optional" json:"permissions" yaml:"permissions"` // The principal who is granted permissions. Principal interface{} `field:"optional" json:"principal" yaml:"principal"` }
the permissions granted to a principal.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" principalPrivilegesProperty := &principalPrivilegesProperty{ permissions: []*string{ jsii.String("permissions"), }, principal: &dataLakePrincipalProperty{ dataLakePrincipalIdentifier: jsii.String("dataLakePrincipalIdentifier"), }, }
type CfnDevEndpoint ¶
type CfnDevEndpoint interface { awscdk.CfnResource awscdk.IInspectable // A map of arguments used to configure the `DevEndpoint` . // // Valid arguments are: // // - `"--enable-glue-datacatalog": ""` // - `"GLUE_PYTHON_VERSION": "3"` // - `"GLUE_PYTHON_VERSION": "2"` // // You can specify a version of Python support for development endpoints by using the `Arguments` parameter in the `CreateDevEndpoint` or `UpdateDevEndpoint` APIs. If no arguments are provided, the version defaults to Python 2. Arguments() interface{} SetArguments(val interface{}) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The name of the `DevEndpoint` . EndpointName() *string SetEndpointName(val *string) // The path to one or more Java `.jar` files in an S3 bucket that should be loaded in your `DevEndpoint` . // // > You can only use pure Java/Scala libraries with a `DevEndpoint` . ExtraJarsS3Path() *string SetExtraJarsS3Path(val *string) // The paths to one or more Python libraries in an Amazon S3 bucket that should be loaded in your `DevEndpoint` . // // Multiple values must be complete paths separated by a comma. // // > You can only use pure Python libraries with a `DevEndpoint` . Libraries that rely on C extensions, such as the [pandas](https://docs.aws.amazon.com/http://pandas.pydata.org/) Python data analysis library, are not currently supported. ExtraPythonLibsS3Path() *string SetExtraPythonLibsS3Path(val *string) // The AWS Glue version determines the versions of Apache Spark and Python that AWS Glue supports. // // The Python version indicates the version supported for running your ETL scripts on development endpoints. // // For more information about the available AWS Glue versions and corresponding Spark and Python versions, see [Glue version](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) in the developer guide. // // Development endpoints that are created without specifying a Glue version default to Glue 0.9. // // You can specify a version of Python support for development endpoints by using the `Arguments` parameter in the `CreateDevEndpoint` or `UpdateDevEndpoint` APIs. If no arguments are provided, the version defaults to Python 2. GlueVersion() *string SetGlueVersion(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The number of AWS Glue Data Processing Units (DPUs) allocated to this `DevEndpoint` . NumberOfNodes() *float64 SetNumberOfNodes(val *float64) // The number of workers of a defined `workerType` that are allocated to the development endpoint. // // The maximum number of workers you can define are 299 for `G.1X` , and 149 for `G.2X` . NumberOfWorkers() *float64 SetNumberOfWorkers(val *float64) // The public key to be used by this `DevEndpoint` for authentication. // // This attribute is provided for backward compatibility because the recommended attribute to use is public keys. PublicKey() *string SetPublicKey(val *string) // A list of public keys to be used by the `DevEndpoints` for authentication. // // Using this attribute is preferred over a single public key because the public keys allow you to have a different private key per client. // // > If you previously created an endpoint with a public key, you must remove that key to be able to set a list of public keys. Call the `UpdateDevEndpoint` API operation with the public key content in the `deletePublicKeys` attribute, and the list of new keys in the `addPublicKeys` attribute. PublicKeys() *[]*string SetPublicKeys(val *[]*string) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The Amazon Resource Name (ARN) of the IAM role used in this `DevEndpoint` . RoleArn() *string SetRoleArn(val *string) // The name of the `SecurityConfiguration` structure to be used with this `DevEndpoint` . SecurityConfiguration() *string SetSecurityConfiguration(val *string) // A list of security group identifiers used in this `DevEndpoint` . SecurityGroupIds() *[]*string SetSecurityGroupIds(val *[]*string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The subnet ID for this `DevEndpoint` . SubnetId() *string SetSubnetId(val *string) // The tags to use with this DevEndpoint. Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The type of predefined worker that is allocated to the development endpoint. // // Accepts a value of Standard, G.1X, or G.2X. // // - For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. // - For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. // - For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. // // Known issue: when a development endpoint is created with the `G.2X` `WorkerType` configuration, the Spark drivers for the development endpoint will run on 4 vCPU, 16 GB of memory, and a 64 GB disk. WorkerType() *string SetWorkerType(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::DevEndpoint`.
The `AWS::Glue::DevEndpoint` resource specifies a development endpoint where a developer can remotely debug ETL scripts for AWS Glue . For more information, see [DevEndpoint Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-dev-endpoint.html#aws-glue-api-jobs-dev-endpoint-DevEndpoint) in the AWS Glue Developer Guide.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var arguments_ interface{} var tags interface{} cfnDevEndpoint := awscdk.Aws_glue.NewCfnDevEndpoint(this, jsii.String("MyCfnDevEndpoint"), &cfnDevEndpointProps{ roleArn: jsii.String("roleArn"), // the properties below are optional arguments: arguments_, endpointName: jsii.String("endpointName"), extraJarsS3Path: jsii.String("extraJarsS3Path"), extraPythonLibsS3Path: jsii.String("extraPythonLibsS3Path"), glueVersion: jsii.String("glueVersion"), numberOfNodes: jsii.Number(123), numberOfWorkers: jsii.Number(123), publicKey: jsii.String("publicKey"), publicKeys: []*string{ jsii.String("publicKeys"), }, securityConfiguration: jsii.String("securityConfiguration"), securityGroupIds: []*string{ jsii.String("securityGroupIds"), }, subnetId: jsii.String("subnetId"), tags: tags, workerType: jsii.String("workerType"), })
func NewCfnDevEndpoint ¶
func NewCfnDevEndpoint(scope awscdk.Construct, id *string, props *CfnDevEndpointProps) CfnDevEndpoint
Create a new `AWS::Glue::DevEndpoint`.
type CfnDevEndpointProps ¶
type CfnDevEndpointProps struct { // The Amazon Resource Name (ARN) of the IAM role used in this `DevEndpoint` . RoleArn *string `field:"required" json:"roleArn" yaml:"roleArn"` // A map of arguments used to configure the `DevEndpoint` . // // Valid arguments are: // // - `"--enable-glue-datacatalog": ""` // - `"GLUE_PYTHON_VERSION": "3"` // - `"GLUE_PYTHON_VERSION": "2"` // // You can specify a version of Python support for development endpoints by using the `Arguments` parameter in the `CreateDevEndpoint` or `UpdateDevEndpoint` APIs. If no arguments are provided, the version defaults to Python 2. Arguments interface{} `field:"optional" json:"arguments" yaml:"arguments"` // The name of the `DevEndpoint` . EndpointName *string `field:"optional" json:"endpointName" yaml:"endpointName"` // The path to one or more Java `.jar` files in an S3 bucket that should be loaded in your `DevEndpoint` . // // > You can only use pure Java/Scala libraries with a `DevEndpoint` . ExtraJarsS3Path *string `field:"optional" json:"extraJarsS3Path" yaml:"extraJarsS3Path"` // The paths to one or more Python libraries in an Amazon S3 bucket that should be loaded in your `DevEndpoint` . // // Multiple values must be complete paths separated by a comma. // // > You can only use pure Python libraries with a `DevEndpoint` . Libraries that rely on C extensions, such as the [pandas](https://docs.aws.amazon.com/http://pandas.pydata.org/) Python data analysis library, are not currently supported. ExtraPythonLibsS3Path *string `field:"optional" json:"extraPythonLibsS3Path" yaml:"extraPythonLibsS3Path"` // The AWS Glue version determines the versions of Apache Spark and Python that AWS Glue supports. // // The Python version indicates the version supported for running your ETL scripts on development endpoints. // // For more information about the available AWS Glue versions and corresponding Spark and Python versions, see [Glue version](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) in the developer guide. // // Development endpoints that are created without specifying a Glue version default to Glue 0.9. // // You can specify a version of Python support for development endpoints by using the `Arguments` parameter in the `CreateDevEndpoint` or `UpdateDevEndpoint` APIs. If no arguments are provided, the version defaults to Python 2. GlueVersion *string `field:"optional" json:"glueVersion" yaml:"glueVersion"` // The number of AWS Glue Data Processing Units (DPUs) allocated to this `DevEndpoint` . NumberOfNodes *float64 `field:"optional" json:"numberOfNodes" yaml:"numberOfNodes"` // The number of workers of a defined `workerType` that are allocated to the development endpoint. // // The maximum number of workers you can define are 299 for `G.1X` , and 149 for `G.2X` . NumberOfWorkers *float64 `field:"optional" json:"numberOfWorkers" yaml:"numberOfWorkers"` // The public key to be used by this `DevEndpoint` for authentication. // // This attribute is provided for backward compatibility because the recommended attribute to use is public keys. PublicKey *string `field:"optional" json:"publicKey" yaml:"publicKey"` // A list of public keys to be used by the `DevEndpoints` for authentication. // // Using this attribute is preferred over a single public key because the public keys allow you to have a different private key per client. // // > If you previously created an endpoint with a public key, you must remove that key to be able to set a list of public keys. Call the `UpdateDevEndpoint` API operation with the public key content in the `deletePublicKeys` attribute, and the list of new keys in the `addPublicKeys` attribute. PublicKeys *[]*string `field:"optional" json:"publicKeys" yaml:"publicKeys"` // The name of the `SecurityConfiguration` structure to be used with this `DevEndpoint` . SecurityConfiguration *string `field:"optional" json:"securityConfiguration" yaml:"securityConfiguration"` // A list of security group identifiers used in this `DevEndpoint` . SecurityGroupIds *[]*string `field:"optional" json:"securityGroupIds" yaml:"securityGroupIds"` // The subnet ID for this `DevEndpoint` . SubnetId *string `field:"optional" json:"subnetId" yaml:"subnetId"` // The tags to use with this DevEndpoint. Tags interface{} `field:"optional" json:"tags" yaml:"tags"` // The type of predefined worker that is allocated to the development endpoint. // // Accepts a value of Standard, G.1X, or G.2X. // // - For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. // - For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. // - For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. // // Known issue: when a development endpoint is created with the `G.2X` `WorkerType` configuration, the Spark drivers for the development endpoint will run on 4 vCPU, 16 GB of memory, and a 64 GB disk. WorkerType *string `field:"optional" json:"workerType" yaml:"workerType"` }
Properties for defining a `CfnDevEndpoint`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var arguments_ interface{} var tags interface{} cfnDevEndpointProps := &cfnDevEndpointProps{ roleArn: jsii.String("roleArn"), // the properties below are optional arguments: arguments_, endpointName: jsii.String("endpointName"), extraJarsS3Path: jsii.String("extraJarsS3Path"), extraPythonLibsS3Path: jsii.String("extraPythonLibsS3Path"), glueVersion: jsii.String("glueVersion"), numberOfNodes: jsii.Number(123), numberOfWorkers: jsii.Number(123), publicKey: jsii.String("publicKey"), publicKeys: []*string{ jsii.String("publicKeys"), }, securityConfiguration: jsii.String("securityConfiguration"), securityGroupIds: []*string{ jsii.String("securityGroupIds"), }, subnetId: jsii.String("subnetId"), tags: tags, workerType: jsii.String("workerType"), }
type CfnJob ¶
type CfnJob interface { awscdk.CfnResource awscdk.IInspectable // The number of capacity units that are allocated to this job. AllocatedCapacity() *float64 SetAllocatedCapacity(val *float64) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // The code that executes a job. Command() interface{} SetCommand(val interface{}) // The connections used for this job. Connections() interface{} SetConnections(val interface{}) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The default arguments for this job, specified as name-value pairs. // // You can specify arguments here that your own job-execution script consumes, in addition to arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own job arguments, see [Calling AWS Glue APIs in Python](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) in the *AWS Glue Developer Guide* . // // For information about the key-value pairs that AWS Glue consumes to set up your job, see [Special Parameters Used by AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) in the *AWS Glue Developer Guide* . DefaultArguments() interface{} SetDefaultArguments(val interface{}) // A description of the job. Description() *string SetDescription(val *string) // The maximum number of concurrent runs that are allowed for this job. ExecutionProperty() interface{} SetExecutionProperty(val interface{}) // Glue version determines the versions of Apache Spark and Python that AWS Glue supports. // // The Python version indicates the version supported for jobs of type Spark. // // For more information about the available AWS Glue versions and corresponding Spark and Python versions, see [Glue version](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) in the developer guide. // // Jobs that are created without specifying a Glue version default to Glue 0.9. GlueVersion() *string SetGlueVersion(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // This field is reserved for future use. LogUri() *string SetLogUri(val *string) // The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. // // A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. // // Do not set `Max Capacity` if using `WorkerType` and `NumberOfWorkers` . // // The value that can be allocated for `MaxCapacity` depends on whether you are running a Python shell job or an Apache Spark ETL job: // // - When you specify a Python shell job ( `JobCommand.Name` ="pythonshell"), you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. // - When you specify an Apache Spark ETL job ( `JobCommand.Name` ="glueetl"), you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU allocation. MaxCapacity() *float64 SetMaxCapacity(val *float64) // The maximum number of times to retry this job after a JobRun fails. MaxRetries() *float64 SetMaxRetries(val *float64) // The name you assign to this job definition. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Specifies configuration properties of a notification. NotificationProperty() interface{} SetNotificationProperty(val interface{}) // The number of workers of a defined `workerType` that are allocated when a job runs. // // The maximum number of workers you can define are 299 for `G.1X` , and 149 for `G.2X` . NumberOfWorkers() *float64 SetNumberOfWorkers(val *float64) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The name or Amazon Resource Name (ARN) of the IAM role associated with this job. Role() *string SetRole(val *string) // The name of the `SecurityConfiguration` structure to be used with this job. SecurityConfiguration() *string SetSecurityConfiguration(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The tags to use with this job. Tags() awscdk.TagManager // The job timeout in minutes. // // This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours). Timeout() *float64 SetTimeout(val *float64) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The type of predefined worker that is allocated when a job runs. // // Accepts a value of Standard, G.1X, or G.2X. // // - For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. // - For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. // - For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. WorkerType() *string SetWorkerType(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Job`.
The `AWS::Glue::Job` resource specifies an AWS Glue job in the data catalog. For more information, see [Adding Jobs in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) and [Job Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-Job) in the *AWS Glue Developer Guide.*
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var defaultArguments interface{} var tags interface{} cfnJob := awscdk.Aws_glue.NewCfnJob(this, jsii.String("MyCfnJob"), &cfnJobProps{ command: &jobCommandProperty{ name: jsii.String("name"), pythonVersion: jsii.String("pythonVersion"), scriptLocation: jsii.String("scriptLocation"), }, role: jsii.String("role"), // the properties below are optional allocatedCapacity: jsii.Number(123), connections: &connectionsListProperty{ connections: []*string{ jsii.String("connections"), }, }, defaultArguments: defaultArguments, description: jsii.String("description"), executionProperty: &executionPropertyProperty{ maxConcurrentRuns: jsii.Number(123), }, glueVersion: jsii.String("glueVersion"), logUri: jsii.String("logUri"), maxCapacity: jsii.Number(123), maxRetries: jsii.Number(123), name: jsii.String("name"), notificationProperty: ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }, numberOfWorkers: jsii.Number(123), securityConfiguration: jsii.String("securityConfiguration"), tags: tags, timeout: jsii.Number(123), workerType: jsii.String("workerType"), })
type CfnJobProps ¶
type CfnJobProps struct { // The code that executes a job. Command interface{} `field:"required" json:"command" yaml:"command"` // The name or Amazon Resource Name (ARN) of the IAM role associated with this job. Role *string `field:"required" json:"role" yaml:"role"` // The number of capacity units that are allocated to this job. AllocatedCapacity *float64 `field:"optional" json:"allocatedCapacity" yaml:"allocatedCapacity"` // The connections used for this job. Connections interface{} `field:"optional" json:"connections" yaml:"connections"` // The default arguments for this job, specified as name-value pairs. // // You can specify arguments here that your own job-execution script consumes, in addition to arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own job arguments, see [Calling AWS Glue APIs in Python](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) in the *AWS Glue Developer Guide* . // // For information about the key-value pairs that AWS Glue consumes to set up your job, see [Special Parameters Used by AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) in the *AWS Glue Developer Guide* . DefaultArguments interface{} `field:"optional" json:"defaultArguments" yaml:"defaultArguments"` // A description of the job. Description *string `field:"optional" json:"description" yaml:"description"` // The maximum number of concurrent runs that are allowed for this job. ExecutionProperty interface{} `field:"optional" json:"executionProperty" yaml:"executionProperty"` // Glue version determines the versions of Apache Spark and Python that AWS Glue supports. // // The Python version indicates the version supported for jobs of type Spark. // // For more information about the available AWS Glue versions and corresponding Spark and Python versions, see [Glue version](https://docs.aws.amazon.com/glue/latest/dg/add-job.html) in the developer guide. // // Jobs that are created without specifying a Glue version default to Glue 0.9. GlueVersion *string `field:"optional" json:"glueVersion" yaml:"glueVersion"` // This field is reserved for future use. LogUri *string `field:"optional" json:"logUri" yaml:"logUri"` // The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. // // A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. // // Do not set `Max Capacity` if using `WorkerType` and `NumberOfWorkers` . // // The value that can be allocated for `MaxCapacity` depends on whether you are running a Python shell job or an Apache Spark ETL job: // // - When you specify a Python shell job ( `JobCommand.Name` ="pythonshell"), you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. // - When you specify an Apache Spark ETL job ( `JobCommand.Name` ="glueetl"), you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU allocation. MaxCapacity *float64 `field:"optional" json:"maxCapacity" yaml:"maxCapacity"` // The maximum number of times to retry this job after a JobRun fails. MaxRetries *float64 `field:"optional" json:"maxRetries" yaml:"maxRetries"` // The name you assign to this job definition. Name *string `field:"optional" json:"name" yaml:"name"` // Specifies configuration properties of a notification. NotificationProperty interface{} `field:"optional" json:"notificationProperty" yaml:"notificationProperty"` // The number of workers of a defined `workerType` that are allocated when a job runs. // // The maximum number of workers you can define are 299 for `G.1X` , and 149 for `G.2X` . NumberOfWorkers *float64 `field:"optional" json:"numberOfWorkers" yaml:"numberOfWorkers"` // The name of the `SecurityConfiguration` structure to be used with this job. SecurityConfiguration *string `field:"optional" json:"securityConfiguration" yaml:"securityConfiguration"` // The tags to use with this job. Tags interface{} `field:"optional" json:"tags" yaml:"tags"` // The job timeout in minutes. // // This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours). Timeout *float64 `field:"optional" json:"timeout" yaml:"timeout"` // The type of predefined worker that is allocated when a job runs. // // Accepts a value of Standard, G.1X, or G.2X. // // - For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. // - For the `G.1X` worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of memory, 64 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. // - For the `G.2X` worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of memory, 128 GB disk), and provides 1 executor per worker. We recommend this worker type for memory-intensive jobs. WorkerType *string `field:"optional" json:"workerType" yaml:"workerType"` }
Properties for defining a `CfnJob`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var defaultArguments interface{} var tags interface{} cfnJobProps := &cfnJobProps{ command: &jobCommandProperty{ name: jsii.String("name"), pythonVersion: jsii.String("pythonVersion"), scriptLocation: jsii.String("scriptLocation"), }, role: jsii.String("role"), // the properties below are optional allocatedCapacity: jsii.Number(123), connections: &connectionsListProperty{ connections: []*string{ jsii.String("connections"), }, }, defaultArguments: defaultArguments, description: jsii.String("description"), executionProperty: &executionPropertyProperty{ maxConcurrentRuns: jsii.Number(123), }, glueVersion: jsii.String("glueVersion"), logUri: jsii.String("logUri"), maxCapacity: jsii.Number(123), maxRetries: jsii.Number(123), name: jsii.String("name"), notificationProperty: ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }, numberOfWorkers: jsii.Number(123), securityConfiguration: jsii.String("securityConfiguration"), tags: tags, timeout: jsii.Number(123), workerType: jsii.String("workerType"), }
type CfnJob_ConnectionsListProperty ¶
type CfnJob_ConnectionsListProperty struct { // A list of connections used by the job. Connections *[]*string `field:"optional" json:"connections" yaml:"connections"` }
Specifies the connections used by a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" connectionsListProperty := &connectionsListProperty{ connections: []*string{ jsii.String("connections"), }, }
type CfnJob_ExecutionPropertyProperty ¶
type CfnJob_ExecutionPropertyProperty struct { // The maximum number of concurrent runs allowed for the job. // // The default is 1. An error is returned when this threshold is reached. The maximum value you can specify is controlled by a service limit. MaxConcurrentRuns *float64 `field:"optional" json:"maxConcurrentRuns" yaml:"maxConcurrentRuns"` }
An execution property of a job.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" executionPropertyProperty := &executionPropertyProperty{ maxConcurrentRuns: jsii.Number(123), }
type CfnJob_JobCommandProperty ¶
type CfnJob_JobCommandProperty struct { // The name of the job command. // // For an Apache Spark ETL job, this must be `glueetl` . For a Python shell job, it must be `pythonshell` . Name *string `field:"optional" json:"name" yaml:"name"` // The Python version being used to execute a Python shell job. // // Allowed values are 2 or 3. PythonVersion *string `field:"optional" json:"pythonVersion" yaml:"pythonVersion"` // Specifies the Amazon Simple Storage Service (Amazon S3) path to a script that executes a job (required). ScriptLocation *string `field:"optional" json:"scriptLocation" yaml:"scriptLocation"` }
Specifies code executed when a job is run.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jobCommandProperty := &jobCommandProperty{ name: jsii.String("name"), pythonVersion: jsii.String("pythonVersion"), scriptLocation: jsii.String("scriptLocation"), }
type CfnJob_NotificationPropertyProperty ¶
type CfnJob_NotificationPropertyProperty struct { // After a job run starts, the number of minutes to wait before sending a job run delay notification. NotifyDelayAfter *float64 `field:"optional" json:"notifyDelayAfter" yaml:"notifyDelayAfter"` }
Specifies configuration properties of a notification.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" notificationPropertyProperty := ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }
type CfnMLTransform ¶
type CfnMLTransform interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A user-defined, long-form description text for the machine learning transform. Description() *string SetDescription(val *string) // This value determines which version of AWS Glue this machine learning transform is compatible with. // // Glue 1.0 is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more information, see [AWS Glue Versions](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html#release-notes-versions) in the developer guide. GlueVersion() *string SetGlueVersion(val *string) // A list of AWS Glue table definitions used by the transform. InputRecordTables() interface{} SetInputRecordTables(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The number of AWS Glue data processing units (DPUs) that are allocated to task runs for this transform. // // You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the [AWS Glue pricing page](https://docs.aws.amazon.com/glue/pricing/) . // // `MaxCapacity` is a mutually exclusive option with `NumberOfWorkers` and `WorkerType` . // // - If either `NumberOfWorkers` or `WorkerType` is set, then `MaxCapacity` cannot be set. // - If `MaxCapacity` is set then neither `NumberOfWorkers` or `WorkerType` can be set. // - If `WorkerType` is set, then `NumberOfWorkers` is required (and vice versa). // - `MaxCapacity` and `NumberOfWorkers` must both be at least 1. // // When the `WorkerType` field is set to a value other than `Standard` , the `MaxCapacity` field is set automatically and becomes read-only. MaxCapacity() *float64 SetMaxCapacity(val *float64) // The maximum number of times to retry after an `MLTaskRun` of the machine learning transform fails. MaxRetries() *float64 SetMaxRetries(val *float64) // A user-defined name for the machine learning transform. Names are required to be unique. `Name` is optional:. // // - If you supply `Name` , the stack cannot be repeatedly created. // - If `Name` is not provided, a randomly generated name will be used instead. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The number of workers of a defined `workerType` that are allocated when a task of the transform runs. // // If `WorkerType` is set, then `NumberOfWorkers` is required (and vice versa). NumberOfWorkers() *float64 SetNumberOfWorkers(val *float64) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. // // The required permissions include both AWS Glue service role permissions to AWS Glue resources, and Amazon S3 permissions required by the transform. // // - This role needs AWS Glue service role permissions to allow access to resources in AWS Glue . See [Attach a Policy to IAM Users That Access AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/attach-policy-iam-user.html) . // - This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary directory, scripts, and any libraries used by the task run for this transform. Role() *string SetRole(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The tags to use with this machine learning transform. // // You may use tags to limit access to the machine learning transform. For more information about tags in AWS Glue , see [AWS Tags in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html) in the developer guide. Tags() awscdk.TagManager // The timeout in minutes of the machine learning transform. Timeout() *float64 SetTimeout(val *float64) // The encryption-at-rest settings of the transform that apply to accessing user data. // // Machine learning // transforms can access user data encrypted in Amazon S3 using KMS. // // Additionally, imported labels and trained transforms can now be encrypted using a customer provided // KMS key. TransformEncryption() interface{} SetTransformEncryption(val interface{}) // The algorithm-specific parameters that are associated with the machine learning transform. TransformParameters() interface{} SetTransformParameters(val interface{}) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The type of predefined worker that is allocated when a task of this transform runs. // // Accepts a value of Standard, G.1X, or G.2X. // // - For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. // - For the `G.1X` worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per worker. // - For the `G.2X` worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per worker. // // `MaxCapacity` is a mutually exclusive option with `NumberOfWorkers` and `WorkerType` . // // - If either `NumberOfWorkers` or `WorkerType` is set, then `MaxCapacity` cannot be set. // - If `MaxCapacity` is set then neither `NumberOfWorkers` or `WorkerType` can be set. // - If `WorkerType` is set, then `NumberOfWorkers` is required (and vice versa). // - `MaxCapacity` and `NumberOfWorkers` must both be at least 1. WorkerType() *string SetWorkerType(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::MLTransform`.
The AWS::Glue::MLTransform is an AWS Glue resource type that manages machine learning transforms.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var tags interface{} cfnMLTransform := awscdk.Aws_glue.NewCfnMLTransform(this, jsii.String("MyCfnMLTransform"), &cfnMLTransformProps{ inputRecordTables: &inputRecordTablesProperty{ glueTables: []interface{}{ &glueTablesProperty{ databaseName: jsii.String("databaseName"), tableName: jsii.String("tableName"), // the properties below are optional catalogId: jsii.String("catalogId"), connectionName: jsii.String("connectionName"), }, }, }, role: jsii.String("role"), transformParameters: &transformParametersProperty{ transformType: jsii.String("transformType"), // the properties below are optional findMatchesParameters: &findMatchesParametersProperty{ primaryKeyColumnName: jsii.String("primaryKeyColumnName"), // the properties below are optional accuracyCostTradeoff: jsii.Number(123), enforceProvidedLabels: jsii.Boolean(false), precisionRecallTradeoff: jsii.Number(123), }, }, // the properties below are optional description: jsii.String("description"), glueVersion: jsii.String("glueVersion"), maxCapacity: jsii.Number(123), maxRetries: jsii.Number(123), name: jsii.String("name"), numberOfWorkers: jsii.Number(123), tags: tags, timeout: jsii.Number(123), transformEncryption: &transformEncryptionProperty{ mlUserDataEncryption: &mLUserDataEncryptionProperty{ mlUserDataEncryptionMode: jsii.String("mlUserDataEncryptionMode"), // the properties below are optional kmsKeyId: jsii.String("kmsKeyId"), }, taskRunSecurityConfigurationName: jsii.String("taskRunSecurityConfigurationName"), }, workerType: jsii.String("workerType"), })
func NewCfnMLTransform ¶
func NewCfnMLTransform(scope awscdk.Construct, id *string, props *CfnMLTransformProps) CfnMLTransform
Create a new `AWS::Glue::MLTransform`.
type CfnMLTransformProps ¶
type CfnMLTransformProps struct { // A list of AWS Glue table definitions used by the transform. InputRecordTables interface{} `field:"required" json:"inputRecordTables" yaml:"inputRecordTables"` // The name or Amazon Resource Name (ARN) of the IAM role with the required permissions. // // The required permissions include both AWS Glue service role permissions to AWS Glue resources, and Amazon S3 permissions required by the transform. // // - This role needs AWS Glue service role permissions to allow access to resources in AWS Glue . See [Attach a Policy to IAM Users That Access AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/attach-policy-iam-user.html) . // - This role needs permission to your Amazon Simple Storage Service (Amazon S3) sources, targets, temporary directory, scripts, and any libraries used by the task run for this transform. Role *string `field:"required" json:"role" yaml:"role"` // The algorithm-specific parameters that are associated with the machine learning transform. TransformParameters interface{} `field:"required" json:"transformParameters" yaml:"transformParameters"` // A user-defined, long-form description text for the machine learning transform. Description *string `field:"optional" json:"description" yaml:"description"` // This value determines which version of AWS Glue this machine learning transform is compatible with. // // Glue 1.0 is recommended for most customers. If the value is not set, the Glue compatibility defaults to Glue 0.9. For more information, see [AWS Glue Versions](https://docs.aws.amazon.com/glue/latest/dg/release-notes.html#release-notes-versions) in the developer guide. GlueVersion *string `field:"optional" json:"glueVersion" yaml:"glueVersion"` // The number of AWS Glue data processing units (DPUs) that are allocated to task runs for this transform. // // You can allocate from 2 to 100 DPUs; the default is 10. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. For more information, see the [AWS Glue pricing page](https://docs.aws.amazon.com/glue/pricing/) . // // `MaxCapacity` is a mutually exclusive option with `NumberOfWorkers` and `WorkerType` . // // - If either `NumberOfWorkers` or `WorkerType` is set, then `MaxCapacity` cannot be set. // - If `MaxCapacity` is set then neither `NumberOfWorkers` or `WorkerType` can be set. // - If `WorkerType` is set, then `NumberOfWorkers` is required (and vice versa). // - `MaxCapacity` and `NumberOfWorkers` must both be at least 1. // // When the `WorkerType` field is set to a value other than `Standard` , the `MaxCapacity` field is set automatically and becomes read-only. MaxCapacity *float64 `field:"optional" json:"maxCapacity" yaml:"maxCapacity"` // The maximum number of times to retry after an `MLTaskRun` of the machine learning transform fails. MaxRetries *float64 `field:"optional" json:"maxRetries" yaml:"maxRetries"` // A user-defined name for the machine learning transform. Names are required to be unique. `Name` is optional:. // // - If you supply `Name` , the stack cannot be repeatedly created. // - If `Name` is not provided, a randomly generated name will be used instead. Name *string `field:"optional" json:"name" yaml:"name"` // The number of workers of a defined `workerType` that are allocated when a task of the transform runs. // // If `WorkerType` is set, then `NumberOfWorkers` is required (and vice versa). NumberOfWorkers *float64 `field:"optional" json:"numberOfWorkers" yaml:"numberOfWorkers"` // The tags to use with this machine learning transform. // // You may use tags to limit access to the machine learning transform. For more information about tags in AWS Glue , see [AWS Tags in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html) in the developer guide. Tags interface{} `field:"optional" json:"tags" yaml:"tags"` // The timeout in minutes of the machine learning transform. Timeout *float64 `field:"optional" json:"timeout" yaml:"timeout"` // The encryption-at-rest settings of the transform that apply to accessing user data. // // Machine learning // transforms can access user data encrypted in Amazon S3 using KMS. // // Additionally, imported labels and trained transforms can now be encrypted using a customer provided // KMS key. TransformEncryption interface{} `field:"optional" json:"transformEncryption" yaml:"transformEncryption"` // The type of predefined worker that is allocated when a task of this transform runs. // // Accepts a value of Standard, G.1X, or G.2X. // // - For the `Standard` worker type, each worker provides 4 vCPU, 16 GB of memory and a 50GB disk, and 2 executors per worker. // - For the `G.1X` worker type, each worker provides 4 vCPU, 16 GB of memory and a 64GB disk, and 1 executor per worker. // - For the `G.2X` worker type, each worker provides 8 vCPU, 32 GB of memory and a 128GB disk, and 1 executor per worker. // // `MaxCapacity` is a mutually exclusive option with `NumberOfWorkers` and `WorkerType` . // // - If either `NumberOfWorkers` or `WorkerType` is set, then `MaxCapacity` cannot be set. // - If `MaxCapacity` is set then neither `NumberOfWorkers` or `WorkerType` can be set. // - If `WorkerType` is set, then `NumberOfWorkers` is required (and vice versa). // - `MaxCapacity` and `NumberOfWorkers` must both be at least 1. WorkerType *string `field:"optional" json:"workerType" yaml:"workerType"` }
Properties for defining a `CfnMLTransform`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var tags interface{} cfnMLTransformProps := &cfnMLTransformProps{ inputRecordTables: &inputRecordTablesProperty{ glueTables: []interface{}{ &glueTablesProperty{ databaseName: jsii.String("databaseName"), tableName: jsii.String("tableName"), // the properties below are optional catalogId: jsii.String("catalogId"), connectionName: jsii.String("connectionName"), }, }, }, role: jsii.String("role"), transformParameters: &transformParametersProperty{ transformType: jsii.String("transformType"), // the properties below are optional findMatchesParameters: &findMatchesParametersProperty{ primaryKeyColumnName: jsii.String("primaryKeyColumnName"), // the properties below are optional accuracyCostTradeoff: jsii.Number(123), enforceProvidedLabels: jsii.Boolean(false), precisionRecallTradeoff: jsii.Number(123), }, }, // the properties below are optional description: jsii.String("description"), glueVersion: jsii.String("glueVersion"), maxCapacity: jsii.Number(123), maxRetries: jsii.Number(123), name: jsii.String("name"), numberOfWorkers: jsii.Number(123), tags: tags, timeout: jsii.Number(123), transformEncryption: &transformEncryptionProperty{ mlUserDataEncryption: &mLUserDataEncryptionProperty{ mlUserDataEncryptionMode: jsii.String("mlUserDataEncryptionMode"), // the properties below are optional kmsKeyId: jsii.String("kmsKeyId"), }, taskRunSecurityConfigurationName: jsii.String("taskRunSecurityConfigurationName"), }, workerType: jsii.String("workerType"), }
type CfnMLTransform_FindMatchesParametersProperty ¶
type CfnMLTransform_FindMatchesParametersProperty struct { // The name of a column that uniquely identifies rows in the source table. // // Used to help identify matching records. PrimaryKeyColumnName *string `field:"required" json:"primaryKeyColumnName" yaml:"primaryKeyColumnName"` // The value that is selected when tuning your transform for a balance between accuracy and cost. // // A value of 0.5 means that the system balances accuracy and cost concerns. A value of 1.0 means a bias purely for accuracy, which typically results in a higher cost, sometimes substantially higher. A value of 0.0 means a bias purely for cost, which results in a less accurate `FindMatches` transform, sometimes with unacceptable accuracy. // // Accuracy measures how well the transform finds true positives and true negatives. Increasing accuracy requires more machine resources and cost. But it also results in increased recall. // // Cost measures how many compute resources, and thus money, are consumed to run the transform. AccuracyCostTradeoff *float64 `field:"optional" json:"accuracyCostTradeoff" yaml:"accuracyCostTradeoff"` // The value to switch on or off to force the output to match the provided labels from users. // // If the value is `True` , the `find matches` transform forces the output to match the provided labels. The results override the normal conflation results. If the value is `False` , the `find matches` transform does not ensure all the labels provided are respected, and the results rely on the trained model. // // Note that setting this value to true may increase the conflation execution time. EnforceProvidedLabels interface{} `field:"optional" json:"enforceProvidedLabels" yaml:"enforceProvidedLabels"` // The value selected when tuning your transform for a balance between precision and recall. // // A value of 0.5 means no preference; a value of 1.0 means a bias purely for precision, and a value of 0.0 means a bias for recall. Because this is a tradeoff, choosing values close to 1.0 means very low recall, and choosing values close to 0.0 results in very low precision. // // The precision metric indicates how often your model is correct when it predicts a match. // // The recall metric indicates that for an actual match, how often your model predicts the match. PrecisionRecallTradeoff *float64 `field:"optional" json:"precisionRecallTradeoff" yaml:"precisionRecallTradeoff"` }
The parameters to configure the find matches transform.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" findMatchesParametersProperty := &findMatchesParametersProperty{ primaryKeyColumnName: jsii.String("primaryKeyColumnName"), // the properties below are optional accuracyCostTradeoff: jsii.Number(123), enforceProvidedLabels: jsii.Boolean(false), precisionRecallTradeoff: jsii.Number(123), }
type CfnMLTransform_GlueTablesProperty ¶
type CfnMLTransform_GlueTablesProperty struct { // A database name in the AWS Glue Data Catalog . DatabaseName *string `field:"required" json:"databaseName" yaml:"databaseName"` // A table name in the AWS Glue Data Catalog . TableName *string `field:"required" json:"tableName" yaml:"tableName"` // A unique identifier for the AWS Glue Data Catalog . CatalogId *string `field:"optional" json:"catalogId" yaml:"catalogId"` // The name of the connection to the AWS Glue Data Catalog . ConnectionName *string `field:"optional" json:"connectionName" yaml:"connectionName"` }
The database and table in the AWS Glue Data Catalog that is used for input or output data.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" glueTablesProperty := &glueTablesProperty{ databaseName: jsii.String("databaseName"), tableName: jsii.String("tableName"), // the properties below are optional catalogId: jsii.String("catalogId"), connectionName: jsii.String("connectionName"), }
type CfnMLTransform_InputRecordTablesProperty ¶
type CfnMLTransform_InputRecordTablesProperty struct {
// The database and table in the AWS Glue Data Catalog that is used for input or output data.
GlueTables interface{} `field:"optional" json:"glueTables" yaml:"glueTables"`
}
A list of AWS Glue table definitions used by the transform.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" inputRecordTablesProperty := &inputRecordTablesProperty{ glueTables: []interface{}{ &glueTablesProperty{ databaseName: jsii.String("databaseName"), tableName: jsii.String("tableName"), // the properties below are optional catalogId: jsii.String("catalogId"), connectionName: jsii.String("connectionName"), }, }, }
type CfnMLTransform_MLUserDataEncryptionProperty ¶
type CfnMLTransform_MLUserDataEncryptionProperty struct { // The encryption mode applied to user data. Valid values are:. // // - DISABLED: encryption is disabled. // - SSEKMS: use of server-side encryption with AWS Key Management Service (SSE-KMS) for user data // stored in Amazon S3. MlUserDataEncryptionMode *string `field:"required" json:"mlUserDataEncryptionMode" yaml:"mlUserDataEncryptionMode"` // The ID for the customer-provided KMS key. KmsKeyId *string `field:"optional" json:"kmsKeyId" yaml:"kmsKeyId"` }
The encryption-at-rest settings of the transform that apply to accessing user data.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" mLUserDataEncryptionProperty := &mLUserDataEncryptionProperty{ mlUserDataEncryptionMode: jsii.String("mlUserDataEncryptionMode"), // the properties below are optional kmsKeyId: jsii.String("kmsKeyId"), }
type CfnMLTransform_TransformEncryptionProperty ¶
type CfnMLTransform_TransformEncryptionProperty struct { // The encryption-at-rest settings of the transform that apply to accessing user data. MlUserDataEncryption interface{} `field:"optional" json:"mlUserDataEncryption" yaml:"mlUserDataEncryption"` // The name of the security configuration. TaskRunSecurityConfigurationName *string `field:"optional" json:"taskRunSecurityConfigurationName" yaml:"taskRunSecurityConfigurationName"` }
The encryption-at-rest settings of the transform that apply to accessing user data.
Machine learning transforms can access user data encrypted in Amazon S3 using KMS.
Additionally, imported labels and trained transforms can now be encrypted using a customer provided KMS key.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" transformEncryptionProperty := &transformEncryptionProperty{ mlUserDataEncryption: &mLUserDataEncryptionProperty{ mlUserDataEncryptionMode: jsii.String("mlUserDataEncryptionMode"), // the properties below are optional kmsKeyId: jsii.String("kmsKeyId"), }, taskRunSecurityConfigurationName: jsii.String("taskRunSecurityConfigurationName"), }
type CfnMLTransform_TransformParametersProperty ¶
type CfnMLTransform_TransformParametersProperty struct { // The type of machine learning transform. `FIND_MATCHES` is the only option. // // For information about the types of machine learning transforms, see [Creating Machine Learning Transforms](https://docs.aws.amazon.com/glue/latest/dg/add-job-machine-learning-transform.html) . TransformType *string `field:"required" json:"transformType" yaml:"transformType"` // The parameters for the find matches algorithm. FindMatchesParameters interface{} `field:"optional" json:"findMatchesParameters" yaml:"findMatchesParameters"` }
The algorithm-specific parameters that are associated with the machine learning transform.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" transformParametersProperty := &transformParametersProperty{ transformType: jsii.String("transformType"), // the properties below are optional findMatchesParameters: &findMatchesParametersProperty{ primaryKeyColumnName: jsii.String("primaryKeyColumnName"), // the properties below are optional accuracyCostTradeoff: jsii.Number(123), enforceProvidedLabels: jsii.Boolean(false), precisionRecallTradeoff: jsii.Number(123), }, }
type CfnPartition ¶
type CfnPartition interface { awscdk.CfnResource awscdk.IInspectable // The AWS account ID of the catalog in which the partion is to be created. // // > To specify the account ID, you can use the `Ref` intrinsic function with the `AWS::AccountId` pseudo parameter. For example: `!Ref AWS::AccountId` CatalogId() *string SetCatalogId(val *string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The name of the catalog database in which to create the partition. DatabaseName() *string SetDatabaseName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The structure used to create and update a partition. PartitionInput() interface{} SetPartitionInput(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The name of the metadata table in which the partition is to be created. TableName() *string SetTableName(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Partition`.
The `AWS::Glue::Partition` resource creates an AWS Glue partition, which represents a slice of table data. For more information, see [CreatePartition Action](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-partitions.html#aws-glue-api-catalog-partitions-CreatePartition) and [Partition Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-partitions.html#aws-glue-api-catalog-partitions-Partition) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} cfnPartition := awscdk.Aws_glue.NewCfnPartition(this, jsii.String("MyCfnPartition"), &cfnPartitionProps{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), partitionInput: &partitionInputProperty{ values: []*string{ jsii.String("values"), }, // the properties below are optional parameters: parameters, storageDescriptor: &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), // the properties below are optional sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }, }, tableName: jsii.String("tableName"), })
func NewCfnPartition ¶
func NewCfnPartition(scope awscdk.Construct, id *string, props *CfnPartitionProps) CfnPartition
Create a new `AWS::Glue::Partition`.
type CfnPartitionProps ¶
type CfnPartitionProps struct { // The AWS account ID of the catalog in which the partion is to be created. // // > To specify the account ID, you can use the `Ref` intrinsic function with the `AWS::AccountId` pseudo parameter. For example: `!Ref AWS::AccountId` CatalogId *string `field:"required" json:"catalogId" yaml:"catalogId"` // The name of the catalog database in which to create the partition. DatabaseName *string `field:"required" json:"databaseName" yaml:"databaseName"` // The structure used to create and update a partition. PartitionInput interface{} `field:"required" json:"partitionInput" yaml:"partitionInput"` // The name of the metadata table in which the partition is to be created. TableName *string `field:"required" json:"tableName" yaml:"tableName"` }
Properties for defining a `CfnPartition`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} cfnPartitionProps := &cfnPartitionProps{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), partitionInput: &partitionInputProperty{ values: []*string{ jsii.String("values"), }, // the properties below are optional parameters: parameters, storageDescriptor: &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), // the properties below are optional sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }, }, tableName: jsii.String("tableName"), }
type CfnPartition_ColumnProperty ¶
type CfnPartition_ColumnProperty struct { // The name of the `Column` . Name *string `field:"required" json:"name" yaml:"name"` // A free-form text comment. Comment *string `field:"optional" json:"comment" yaml:"comment"` // The data type of the `Column` . Type *string `field:"optional" json:"type" yaml:"type"` }
A column in a `Table` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" columnProperty := &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }
type CfnPartition_OrderProperty ¶
type CfnPartition_OrderProperty struct { // The name of the column. Column *string `field:"required" json:"column" yaml:"column"` // Indicates that the column is sorted in ascending order ( `== 1` ), or in descending order ( `==0` ). SortOrder *float64 `field:"optional" json:"sortOrder" yaml:"sortOrder"` }
Specifies the sort order of a sorted column.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" orderProperty := &orderProperty{ column: jsii.String("column"), // the properties below are optional sortOrder: jsii.Number(123), }
type CfnPartition_PartitionInputProperty ¶
type CfnPartition_PartitionInputProperty struct { // The values of the partition. // // Although this parameter is not required by the SDK, you must specify this parameter for a valid input. // // The values for the keys for the new partition must be passed as an array of String objects that must be ordered in the same order as the partition keys appearing in the Amazon S3 prefix. Otherwise AWS Glue will add the values to the wrong keys. Values *[]*string `field:"required" json:"values" yaml:"values"` // These key-value pairs define partition parameters. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // Provides information about the physical location where the partition is stored. StorageDescriptor interface{} `field:"optional" json:"storageDescriptor" yaml:"storageDescriptor"` }
The structure used to create and update a partition.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} partitionInputProperty := &partitionInputProperty{ values: []*string{ jsii.String("values"), }, // the properties below are optional parameters: parameters, storageDescriptor: &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), // the properties below are optional sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }, }
type CfnPartition_SchemaIdProperty ¶
type CfnPartition_SchemaIdProperty struct { // The name of the schema registry that contains the schema. RegistryName *string `field:"optional" json:"registryName" yaml:"registryName"` // The Amazon Resource Name (ARN) of the schema. // // One of `SchemaArn` or `SchemaName` has to be // provided. SchemaArn *string `field:"optional" json:"schemaArn" yaml:"schemaArn"` // The name of the schema. // // One of `SchemaArn` or `SchemaName` has to be provided. SchemaName *string `field:"optional" json:"schemaName" yaml:"schemaName"` }
A structure that contains schema identity fields.
Either this or the `SchemaVersionId` has to be provided.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaIdProperty := &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }
type CfnPartition_SchemaReferenceProperty ¶
type CfnPartition_SchemaReferenceProperty struct { // A structure that contains schema identity fields. // // Either this or the `SchemaVersionId` has to be // provided. SchemaId interface{} `field:"optional" json:"schemaId" yaml:"schemaId"` // The unique ID assigned to a version of the schema. // // Either this or the `SchemaId` has to be provided. SchemaVersionId *string `field:"optional" json:"schemaVersionId" yaml:"schemaVersionId"` // The version number of the schema. SchemaVersionNumber *float64 `field:"optional" json:"schemaVersionNumber" yaml:"schemaVersionNumber"` }
An object that references a schema stored in the AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaReferenceProperty := &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }
type CfnPartition_SerdeInfoProperty ¶
type CfnPartition_SerdeInfoProperty struct { // Name of the SerDe. Name *string `field:"optional" json:"name" yaml:"name"` // These key-value pairs define initialization parameters for the SerDe. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // Usually the class that implements the SerDe. // // An example is `org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe` . SerializationLibrary *string `field:"optional" json:"serializationLibrary" yaml:"serializationLibrary"` }
Information about a serialization/deserialization program (SerDe) that serves as an extractor and loader.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} serdeInfoProperty := &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }
type CfnPartition_SkewedInfoProperty ¶
type CfnPartition_SkewedInfoProperty struct { // A list of names of columns that contain skewed values. SkewedColumnNames *[]*string `field:"optional" json:"skewedColumnNames" yaml:"skewedColumnNames"` // A mapping of skewed values to the columns that contain them. SkewedColumnValueLocationMaps interface{} `field:"optional" json:"skewedColumnValueLocationMaps" yaml:"skewedColumnValueLocationMaps"` // A list of values that appear so frequently as to be considered skewed. SkewedColumnValues *[]*string `field:"optional" json:"skewedColumnValues" yaml:"skewedColumnValues"` }
Specifies skewed values in a table.
Skewed values are those that occur with very high frequency.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var skewedColumnValueLocationMaps interface{} skewedInfoProperty := &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }
type CfnPartition_StorageDescriptorProperty ¶
type CfnPartition_StorageDescriptorProperty struct { // A list of reducer grouping columns, clustering columns, and bucketing columns in the table. BucketColumns *[]*string `field:"optional" json:"bucketColumns" yaml:"bucketColumns"` // A list of the `Columns` in the table. Columns interface{} `field:"optional" json:"columns" yaml:"columns"` // `True` if the data in the table is compressed, or `False` if not. Compressed interface{} `field:"optional" json:"compressed" yaml:"compressed"` // The input format: `SequenceFileInputFormat` (binary), or `TextInputFormat` , or a custom format. InputFormat *string `field:"optional" json:"inputFormat" yaml:"inputFormat"` // The physical location of the table. // // By default, this takes the form of the warehouse location, followed by the database location in the warehouse, followed by the table name. Location *string `field:"optional" json:"location" yaml:"location"` // The number of buckets. // // You must specify this property if the partition contains any dimension columns. NumberOfBuckets *float64 `field:"optional" json:"numberOfBuckets" yaml:"numberOfBuckets"` // The output format: `SequenceFileOutputFormat` (binary), or `IgnoreKeyTextOutputFormat` , or a custom format. OutputFormat *string `field:"optional" json:"outputFormat" yaml:"outputFormat"` // The user-supplied properties in key-value form. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // An object that references a schema stored in the AWS Glue Schema Registry. SchemaReference interface{} `field:"optional" json:"schemaReference" yaml:"schemaReference"` // The serialization/deserialization (SerDe) information. SerdeInfo interface{} `field:"optional" json:"serdeInfo" yaml:"serdeInfo"` // The information about values that appear frequently in a column (skewed values). SkewedInfo interface{} `field:"optional" json:"skewedInfo" yaml:"skewedInfo"` // A list specifying the sort order of each bucket in the table. SortColumns interface{} `field:"optional" json:"sortColumns" yaml:"sortColumns"` // `True` if the table data is stored in subdirectories, or `False` if not. StoredAsSubDirectories interface{} `field:"optional" json:"storedAsSubDirectories" yaml:"storedAsSubDirectories"` }
Describes the physical storage of table data.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} storageDescriptorProperty := &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), // the properties below are optional sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }
type CfnRegistry ¶
type CfnRegistry interface { awscdk.CfnResource awscdk.IInspectable AttrArn() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A description of the registry. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the registry. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // AWS tags that contain a key value pair and may be searched by console, command line, or API. Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Registry`.
The AWS::Glue::Registry is an AWS Glue resource type that manages registries of schemas in the AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnRegistry := awscdk.Aws_glue.NewCfnRegistry(this, jsii.String("MyCfnRegistry"), &cfnRegistryProps{ name: jsii.String("name"), // the properties below are optional description: jsii.String("description"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnRegistry ¶
func NewCfnRegistry(scope awscdk.Construct, id *string, props *CfnRegistryProps) CfnRegistry
Create a new `AWS::Glue::Registry`.
type CfnRegistryProps ¶
type CfnRegistryProps struct { // The name of the registry. Name *string `field:"required" json:"name" yaml:"name"` // A description of the registry. Description *string `field:"optional" json:"description" yaml:"description"` // AWS tags that contain a key value pair and may be searched by console, command line, or API. Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnRegistry`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnRegistryProps := &cfnRegistryProps{ name: jsii.String("name"), // the properties below are optional description: jsii.String("description"), tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnSchema ¶
type CfnSchema interface { awscdk.CfnResource awscdk.IInspectable // The Amazon Resource Name (ARN) of the schema. AttrArn() *string AttrInitialSchemaVersionId() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Specify the `VersionNumber` or the `IsLatest` for setting the checkpoint for the schema. // // This is only required for updating a checkpoint. CheckpointVersion() interface{} SetCheckpointVersion(val interface{}) // The compatibility mode of the schema. Compatibility() *string SetCompatibility(val *string) // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The data format of the schema definition. // // Currently only `AVRO` is supported. DataFormat() *string SetDataFormat(val *string) // A description of the schema if specified when created. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // Name of the schema to be created of max length of 255, and may only contain letters, numbers, hyphen, underscore, dollar sign, or hash mark. // // No whitespace. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The registry where a schema is stored. Registry() interface{} SetRegistry(val interface{}) // The schema definition using the `DataFormat` setting for `SchemaName` . SchemaDefinition() *string SetSchemaDefinition(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // AWS tags that contain a key value pair and may be searched by console, command line, or API. Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Schema`.
The `AWS::Glue::Schema` is an AWS Glue resource type that manages schemas in the AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSchema := awscdk.Aws_glue.NewCfnSchema(this, jsii.String("MyCfnSchema"), &cfnSchemaProps{ compatibility: jsii.String("compatibility"), dataFormat: jsii.String("dataFormat"), name: jsii.String("name"), schemaDefinition: jsii.String("schemaDefinition"), // the properties below are optional checkpointVersion: &schemaVersionProperty{ isLatest: jsii.Boolean(false), versionNumber: jsii.Number(123), }, description: jsii.String("description"), registry: ®istryProperty{ arn: jsii.String("arn"), name: jsii.String("name"), }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, })
func NewCfnSchema ¶
func NewCfnSchema(scope awscdk.Construct, id *string, props *CfnSchemaProps) CfnSchema
Create a new `AWS::Glue::Schema`.
type CfnSchemaProps ¶
type CfnSchemaProps struct { // The compatibility mode of the schema. Compatibility *string `field:"required" json:"compatibility" yaml:"compatibility"` // The data format of the schema definition. // // Currently only `AVRO` is supported. DataFormat *string `field:"required" json:"dataFormat" yaml:"dataFormat"` // Name of the schema to be created of max length of 255, and may only contain letters, numbers, hyphen, underscore, dollar sign, or hash mark. // // No whitespace. Name *string `field:"required" json:"name" yaml:"name"` // The schema definition using the `DataFormat` setting for `SchemaName` . SchemaDefinition *string `field:"required" json:"schemaDefinition" yaml:"schemaDefinition"` // Specify the `VersionNumber` or the `IsLatest` for setting the checkpoint for the schema. // // This is only required for updating a checkpoint. CheckpointVersion interface{} `field:"optional" json:"checkpointVersion" yaml:"checkpointVersion"` // A description of the schema if specified when created. Description *string `field:"optional" json:"description" yaml:"description"` // The registry where a schema is stored. Registry interface{} `field:"optional" json:"registry" yaml:"registry"` // AWS tags that contain a key value pair and may be searched by console, command line, or API. Tags *[]*awscdk.CfnTag `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnSchema`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSchemaProps := &cfnSchemaProps{ compatibility: jsii.String("compatibility"), dataFormat: jsii.String("dataFormat"), name: jsii.String("name"), schemaDefinition: jsii.String("schemaDefinition"), // the properties below are optional checkpointVersion: &schemaVersionProperty{ isLatest: jsii.Boolean(false), versionNumber: jsii.Number(123), }, description: jsii.String("description"), registry: ®istryProperty{ arn: jsii.String("arn"), name: jsii.String("name"), }, tags: []cfnTag{ &cfnTag{ key: jsii.String("key"), value: jsii.String("value"), }, }, }
type CfnSchemaVersion ¶
type CfnSchemaVersion interface { awscdk.CfnResource awscdk.IInspectable AttrVersionId() *string // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The schema that includes the schema version. Schema() interface{} SetSchema(val interface{}) // The schema definition for the schema version. SchemaDefinition() *string SetSchemaDefinition(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::SchemaVersion`.
The `AWS::Glue::SchemaVersion` is an AWS Glue resource type that manages schema versions of schemas in the AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSchemaVersion := awscdk.Aws_glue.NewCfnSchemaVersion(this, jsii.String("MyCfnSchemaVersion"), &cfnSchemaVersionProps{ schema: &schemaProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaDefinition: jsii.String("schemaDefinition"), })
func NewCfnSchemaVersion ¶
func NewCfnSchemaVersion(scope awscdk.Construct, id *string, props *CfnSchemaVersionProps) CfnSchemaVersion
Create a new `AWS::Glue::SchemaVersion`.
type CfnSchemaVersionMetadata ¶
type CfnSchemaVersionMetadata interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A metadata key in a key-value pair for metadata. Key() *string SetKey(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The version number of the schema. SchemaVersionId() *string SetSchemaVersionId(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // A metadata key's corresponding value. Value() *string SetValue(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::SchemaVersionMetadata`.
The `AWS::Glue::SchemaVersionMetadata` is an AWS Glue resource type that defines the metadata key-value pairs for a schema version in AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSchemaVersionMetadata := awscdk.Aws_glue.NewCfnSchemaVersionMetadata(this, jsii.String("MyCfnSchemaVersionMetadata"), &cfnSchemaVersionMetadataProps{ key: jsii.String("key"), schemaVersionId: jsii.String("schemaVersionId"), value: jsii.String("value"), })
func NewCfnSchemaVersionMetadata ¶
func NewCfnSchemaVersionMetadata(scope awscdk.Construct, id *string, props *CfnSchemaVersionMetadataProps) CfnSchemaVersionMetadata
Create a new `AWS::Glue::SchemaVersionMetadata`.
type CfnSchemaVersionMetadataProps ¶
type CfnSchemaVersionMetadataProps struct { // A metadata key in a key-value pair for metadata. Key *string `field:"required" json:"key" yaml:"key"` // The version number of the schema. SchemaVersionId *string `field:"required" json:"schemaVersionId" yaml:"schemaVersionId"` // A metadata key's corresponding value. Value *string `field:"required" json:"value" yaml:"value"` }
Properties for defining a `CfnSchemaVersionMetadata`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSchemaVersionMetadataProps := &cfnSchemaVersionMetadataProps{ key: jsii.String("key"), schemaVersionId: jsii.String("schemaVersionId"), value: jsii.String("value"), }
type CfnSchemaVersionProps ¶
type CfnSchemaVersionProps struct { // The schema that includes the schema version. Schema interface{} `field:"required" json:"schema" yaml:"schema"` // The schema definition for the schema version. SchemaDefinition *string `field:"required" json:"schemaDefinition" yaml:"schemaDefinition"` }
Properties for defining a `CfnSchemaVersion`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSchemaVersionProps := &cfnSchemaVersionProps{ schema: &schemaProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaDefinition: jsii.String("schemaDefinition"), }
type CfnSchemaVersion_SchemaProperty ¶
type CfnSchemaVersion_SchemaProperty struct { // The name of the registry where the schema is stored. // // Either `SchemaArn` , or `SchemaName` and `RegistryName` has to be provided. RegistryName *string `field:"optional" json:"registryName" yaml:"registryName"` // The Amazon Resource Name (ARN) of the schema. // // Either `SchemaArn` , or `SchemaName` and `RegistryName` has to be provided. SchemaArn *string `field:"optional" json:"schemaArn" yaml:"schemaArn"` // The name of the schema. // // Either `SchemaArn` , or `SchemaName` and `RegistryName` has to be provided. SchemaName *string `field:"optional" json:"schemaName" yaml:"schemaName"` }
A wrapper structure to contain schema identity fields.
Either `SchemaArn` , or `SchemaName` and `RegistryName` has to be provided.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaProperty := &schemaProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }
type CfnSchema_RegistryProperty ¶
type CfnSchema_RegistryProperty struct { // The Amazon Resource Name (ARN) of the registry. Arn *string `field:"optional" json:"arn" yaml:"arn"` // The name of the registry. Name *string `field:"optional" json:"name" yaml:"name"` }
Specifies a registry in the AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" registryProperty := ®istryProperty{ arn: jsii.String("arn"), name: jsii.String("name"), }
type CfnSchema_SchemaVersionProperty ¶
type CfnSchema_SchemaVersionProperty struct { // Indicates if this version is the latest version of the schema. IsLatest interface{} `field:"optional" json:"isLatest" yaml:"isLatest"` // The version number of the schema. VersionNumber *float64 `field:"optional" json:"versionNumber" yaml:"versionNumber"` }
Specifies the version of a schema.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaVersionProperty := &schemaVersionProperty{ isLatest: jsii.Boolean(false), versionNumber: jsii.Number(123), }
type CfnSecurityConfiguration ¶
type CfnSecurityConfiguration interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The encryption configuration associated with this security configuration. EncryptionConfiguration() interface{} SetEncryptionConfiguration(val interface{}) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the security configuration. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::SecurityConfiguration`.
Creates a new security configuration. A security configuration is a set of security properties that can be used by AWS Glue . You can use a security configuration to encrypt data at rest. For information about using security configurations in AWS Glue , see [Encrypting Data Written by Crawlers, Jobs, and Development Endpoints](https://docs.aws.amazon.com/glue/latest/dg/encryption-security-configuration.html) .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSecurityConfiguration := awscdk.Aws_glue.NewCfnSecurityConfiguration(this, jsii.String("MyCfnSecurityConfiguration"), &cfnSecurityConfigurationProps{ encryptionConfiguration: &encryptionConfigurationProperty{ cloudWatchEncryption: &cloudWatchEncryptionProperty{ cloudWatchEncryptionMode: jsii.String("cloudWatchEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }, jobBookmarksEncryption: &jobBookmarksEncryptionProperty{ jobBookmarksEncryptionMode: jsii.String("jobBookmarksEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }, s3Encryptions: []interface{}{ &s3EncryptionProperty{ kmsKeyArn: jsii.String("kmsKeyArn"), s3EncryptionMode: jsii.String("s3EncryptionMode"), }, }, }, name: jsii.String("name"), })
func NewCfnSecurityConfiguration ¶
func NewCfnSecurityConfiguration(scope awscdk.Construct, id *string, props *CfnSecurityConfigurationProps) CfnSecurityConfiguration
Create a new `AWS::Glue::SecurityConfiguration`.
type CfnSecurityConfigurationProps ¶
type CfnSecurityConfigurationProps struct { // The encryption configuration associated with this security configuration. EncryptionConfiguration interface{} `field:"required" json:"encryptionConfiguration" yaml:"encryptionConfiguration"` // The name of the security configuration. Name *string `field:"required" json:"name" yaml:"name"` }
Properties for defining a `CfnSecurityConfiguration`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cfnSecurityConfigurationProps := &cfnSecurityConfigurationProps{ encryptionConfiguration: &encryptionConfigurationProperty{ cloudWatchEncryption: &cloudWatchEncryptionProperty{ cloudWatchEncryptionMode: jsii.String("cloudWatchEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }, jobBookmarksEncryption: &jobBookmarksEncryptionProperty{ jobBookmarksEncryptionMode: jsii.String("jobBookmarksEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }, s3Encryptions: []interface{}{ &s3EncryptionProperty{ kmsKeyArn: jsii.String("kmsKeyArn"), s3EncryptionMode: jsii.String("s3EncryptionMode"), }, }, }, name: jsii.String("name"), }
type CfnSecurityConfiguration_CloudWatchEncryptionProperty ¶
type CfnSecurityConfiguration_CloudWatchEncryptionProperty struct { // The encryption mode to use for CloudWatch data. CloudWatchEncryptionMode *string `field:"optional" json:"cloudWatchEncryptionMode" yaml:"cloudWatchEncryptionMode"` // The Amazon Resource Name (ARN) of the KMS key to be used to encrypt the data. KmsKeyArn *string `field:"optional" json:"kmsKeyArn" yaml:"kmsKeyArn"` }
Specifies how Amazon CloudWatch data should be encrypted.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" cloudWatchEncryptionProperty := &cloudWatchEncryptionProperty{ cloudWatchEncryptionMode: jsii.String("cloudWatchEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }
type CfnSecurityConfiguration_EncryptionConfigurationProperty ¶
type CfnSecurityConfiguration_EncryptionConfigurationProperty struct { // The encryption configuration for Amazon CloudWatch. CloudWatchEncryption interface{} `field:"optional" json:"cloudWatchEncryption" yaml:"cloudWatchEncryption"` // The encryption configuration for job bookmarks. JobBookmarksEncryption interface{} `field:"optional" json:"jobBookmarksEncryption" yaml:"jobBookmarksEncryption"` // The encyption configuration for Amazon Simple Storage Service (Amazon S3) data. S3Encryptions interface{} `field:"optional" json:"s3Encryptions" yaml:"s3Encryptions"` }
Specifies an encryption configuration.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" encryptionConfigurationProperty := &encryptionConfigurationProperty{ cloudWatchEncryption: &cloudWatchEncryptionProperty{ cloudWatchEncryptionMode: jsii.String("cloudWatchEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }, jobBookmarksEncryption: &jobBookmarksEncryptionProperty{ jobBookmarksEncryptionMode: jsii.String("jobBookmarksEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }, s3Encryptions: []interface{}{ &s3EncryptionProperty{ kmsKeyArn: jsii.String("kmsKeyArn"), s3EncryptionMode: jsii.String("s3EncryptionMode"), }, }, }
type CfnSecurityConfiguration_JobBookmarksEncryptionProperty ¶
type CfnSecurityConfiguration_JobBookmarksEncryptionProperty struct { // The encryption mode to use for job bookmarks data. JobBookmarksEncryptionMode *string `field:"optional" json:"jobBookmarksEncryptionMode" yaml:"jobBookmarksEncryptionMode"` // The Amazon Resource Name (ARN) of the KMS key to be used to encrypt the data. KmsKeyArn *string `field:"optional" json:"kmsKeyArn" yaml:"kmsKeyArn"` }
Specifies how job bookmark data should be encrypted.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jobBookmarksEncryptionProperty := &jobBookmarksEncryptionProperty{ jobBookmarksEncryptionMode: jsii.String("jobBookmarksEncryptionMode"), kmsKeyArn: jsii.String("kmsKeyArn"), }
type CfnSecurityConfiguration_S3EncryptionProperty ¶
type CfnSecurityConfiguration_S3EncryptionProperty struct { // The Amazon Resource Name (ARN) of the KMS key to be used to encrypt the data. KmsKeyArn *string `field:"optional" json:"kmsKeyArn" yaml:"kmsKeyArn"` // The encryption mode to use for Amazon S3 data. S3EncryptionMode *string `field:"optional" json:"s3EncryptionMode" yaml:"s3EncryptionMode"` }
Specifies how Amazon Simple Storage Service (Amazon S3) data should be encrypted.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" s3EncryptionProperty := &s3EncryptionProperty{ kmsKeyArn: jsii.String("kmsKeyArn"), s3EncryptionMode: jsii.String("s3EncryptionMode"), }
type CfnTable ¶
type CfnTable interface { awscdk.CfnResource awscdk.IInspectable // The ID of the Data Catalog in which to create the `Table` . // // If none is supplied, the AWS account ID is used by default. CatalogId() *string SetCatalogId(val *string) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // The name of the database where the table metadata resides. // // For Hive compatibility, this must be all lowercase. DatabaseName() *string SetDatabaseName(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // A structure used to define a table. TableInput() interface{} SetTableInput(val interface{}) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Table`.
The `AWS::Glue::Table` resource specifies tabular data in the AWS Glue data catalog. For more information, see [Defining Tables in the AWS Glue Data Catalog](https://docs.aws.amazon.com/glue/latest/dg/tables-described.html) and [Table Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-tables.html#aws-glue-api-catalog-tables-Table) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} cfnTable := awscdk.Aws_glue.NewCfnTable(this, jsii.String("MyCfnTable"), &cfnTableProps{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), tableInput: &tableInputProperty{ description: jsii.String("description"), name: jsii.String("name"), owner: jsii.String("owner"), parameters: parameters, partitionKeys: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, retention: jsii.Number(123), storageDescriptor: &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }, tableType: jsii.String("tableType"), targetTable: &tableIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), name: jsii.String("name"), }, viewExpandedText: jsii.String("viewExpandedText"), viewOriginalText: jsii.String("viewOriginalText"), }, })
func NewCfnTable ¶
func NewCfnTable(scope awscdk.Construct, id *string, props *CfnTableProps) CfnTable
Create a new `AWS::Glue::Table`.
type CfnTableProps ¶
type CfnTableProps struct { // The ID of the Data Catalog in which to create the `Table` . // // If none is supplied, the AWS account ID is used by default. CatalogId *string `field:"required" json:"catalogId" yaml:"catalogId"` // The name of the database where the table metadata resides. // // For Hive compatibility, this must be all lowercase. DatabaseName *string `field:"required" json:"databaseName" yaml:"databaseName"` // A structure used to define a table. TableInput interface{} `field:"required" json:"tableInput" yaml:"tableInput"` }
Properties for defining a `CfnTable`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} cfnTableProps := &cfnTableProps{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), tableInput: &tableInputProperty{ description: jsii.String("description"), name: jsii.String("name"), owner: jsii.String("owner"), parameters: parameters, partitionKeys: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, retention: jsii.Number(123), storageDescriptor: &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }, tableType: jsii.String("tableType"), targetTable: &tableIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), name: jsii.String("name"), }, viewExpandedText: jsii.String("viewExpandedText"), viewOriginalText: jsii.String("viewOriginalText"), }, }
type CfnTable_ColumnProperty ¶
type CfnTable_ColumnProperty struct { // The name of the `Column` . Name *string `field:"required" json:"name" yaml:"name"` // A free-form text comment. Comment *string `field:"optional" json:"comment" yaml:"comment"` // The data type of the `Column` . Type *string `field:"optional" json:"type" yaml:"type"` }
A column in a `Table` .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" columnProperty := &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }
type CfnTable_OrderProperty ¶
type CfnTable_OrderProperty struct { // The name of the column. Column *string `field:"required" json:"column" yaml:"column"` // Indicates that the column is sorted in ascending order ( `== 1` ), or in descending order ( `==0` ). SortOrder *float64 `field:"required" json:"sortOrder" yaml:"sortOrder"` }
Specifies the sort order of a sorted column.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" orderProperty := &orderProperty{ column: jsii.String("column"), sortOrder: jsii.Number(123), }
type CfnTable_SchemaIdProperty ¶
type CfnTable_SchemaIdProperty struct { // The name of the schema registry that contains the schema. RegistryName *string `field:"optional" json:"registryName" yaml:"registryName"` // The Amazon Resource Name (ARN) of the schema. // // One of `SchemaArn` or `SchemaName` has to be // provided. SchemaArn *string `field:"optional" json:"schemaArn" yaml:"schemaArn"` // The name of the schema. // // One of `SchemaArn` or `SchemaName` has to be provided. SchemaName *string `field:"optional" json:"schemaName" yaml:"schemaName"` }
A structure that contains schema identity fields.
Either this or the `SchemaVersionId` has to be provided.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaIdProperty := &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }
type CfnTable_SchemaReferenceProperty ¶
type CfnTable_SchemaReferenceProperty struct { // A structure that contains schema identity fields. // // Either this or the `SchemaVersionId` has to be // provided. SchemaId interface{} `field:"optional" json:"schemaId" yaml:"schemaId"` // The unique ID assigned to a version of the schema. // // Either this or the `SchemaId` has to be provided. SchemaVersionId *string `field:"optional" json:"schemaVersionId" yaml:"schemaVersionId"` // The version number of the schema. SchemaVersionNumber *float64 `field:"optional" json:"schemaVersionNumber" yaml:"schemaVersionNumber"` }
An object that references a schema stored in the AWS Glue Schema Registry.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" schemaReferenceProperty := &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }
type CfnTable_SerdeInfoProperty ¶
type CfnTable_SerdeInfoProperty struct { // Name of the SerDe. Name *string `field:"optional" json:"name" yaml:"name"` // These key-value pairs define initialization parameters for the SerDe. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // Usually the class that implements the SerDe. // // An example is `org.apache.hadoop.hive.serde2.columnar.ColumnarSerDe` . SerializationLibrary *string `field:"optional" json:"serializationLibrary" yaml:"serializationLibrary"` }
Information about a serialization/deserialization program (SerDe) that serves as an extractor and loader.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} serdeInfoProperty := &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }
type CfnTable_SkewedInfoProperty ¶
type CfnTable_SkewedInfoProperty struct { // A list of names of columns that contain skewed values. SkewedColumnNames *[]*string `field:"optional" json:"skewedColumnNames" yaml:"skewedColumnNames"` // A mapping of skewed values to the columns that contain them. SkewedColumnValueLocationMaps interface{} `field:"optional" json:"skewedColumnValueLocationMaps" yaml:"skewedColumnValueLocationMaps"` // A list of values that appear so frequently as to be considered skewed. SkewedColumnValues *[]*string `field:"optional" json:"skewedColumnValues" yaml:"skewedColumnValues"` }
Specifies skewed values in a table.
Skewed values are those that occur with very high frequency.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var skewedColumnValueLocationMaps interface{} skewedInfoProperty := &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }
type CfnTable_StorageDescriptorProperty ¶
type CfnTable_StorageDescriptorProperty struct { // A list of reducer grouping columns, clustering columns, and bucketing columns in the table. BucketColumns *[]*string `field:"optional" json:"bucketColumns" yaml:"bucketColumns"` // A list of the `Columns` in the table. Columns interface{} `field:"optional" json:"columns" yaml:"columns"` // `True` if the data in the table is compressed, or `False` if not. Compressed interface{} `field:"optional" json:"compressed" yaml:"compressed"` // The input format: `SequenceFileInputFormat` (binary), or `TextInputFormat` , or a custom format. InputFormat *string `field:"optional" json:"inputFormat" yaml:"inputFormat"` // The physical location of the table. // // By default, this takes the form of the warehouse location, followed by the database location in the warehouse, followed by the table name. Location *string `field:"optional" json:"location" yaml:"location"` // Must be specified if the table contains any dimension columns. NumberOfBuckets *float64 `field:"optional" json:"numberOfBuckets" yaml:"numberOfBuckets"` // The output format: `SequenceFileOutputFormat` (binary), or `IgnoreKeyTextOutputFormat` , or a custom format. OutputFormat *string `field:"optional" json:"outputFormat" yaml:"outputFormat"` // The user-supplied properties in key-value form. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // An object that references a schema stored in the AWS Glue Schema Registry. SchemaReference interface{} `field:"optional" json:"schemaReference" yaml:"schemaReference"` // The serialization/deserialization (SerDe) information. SerdeInfo interface{} `field:"optional" json:"serdeInfo" yaml:"serdeInfo"` // The information about values that appear frequently in a column (skewed values). SkewedInfo interface{} `field:"optional" json:"skewedInfo" yaml:"skewedInfo"` // A list specifying the sort order of each bucket in the table. SortColumns interface{} `field:"optional" json:"sortColumns" yaml:"sortColumns"` // `True` if the table data is stored in subdirectories, or `False` if not. StoredAsSubDirectories interface{} `field:"optional" json:"storedAsSubDirectories" yaml:"storedAsSubDirectories"` }
Describes the physical storage of table data.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} storageDescriptorProperty := &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }
type CfnTable_TableIdentifierProperty ¶
type CfnTable_TableIdentifierProperty struct { // The ID of the Data Catalog in which the table resides. CatalogId *string `field:"optional" json:"catalogId" yaml:"catalogId"` // The name of the catalog database that contains the target table. DatabaseName *string `field:"optional" json:"databaseName" yaml:"databaseName"` // The name of the target table. Name *string `field:"optional" json:"name" yaml:"name"` }
A structure that describes a target table for resource linking.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" tableIdentifierProperty := &tableIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), name: jsii.String("name"), }
type CfnTable_TableInputProperty ¶
type CfnTable_TableInputProperty struct { // A description of the table. Description *string `field:"optional" json:"description" yaml:"description"` // The table name. // // For Hive compatibility, this is folded to lowercase when it is stored. Name *string `field:"optional" json:"name" yaml:"name"` // The table owner. Owner *string `field:"optional" json:"owner" yaml:"owner"` // These key-value pairs define properties associated with the table. Parameters interface{} `field:"optional" json:"parameters" yaml:"parameters"` // A list of columns by which the table is partitioned. Only primitive types are supported as partition keys. // // When you create a table used by Amazon Athena, and you do not specify any `partitionKeys` , you must at least set the value of `partitionKeys` to an empty list. For example: // // `"PartitionKeys": []`. PartitionKeys interface{} `field:"optional" json:"partitionKeys" yaml:"partitionKeys"` // The retention time for this table. Retention *float64 `field:"optional" json:"retention" yaml:"retention"` // A storage descriptor containing information about the physical storage of this table. StorageDescriptor interface{} `field:"optional" json:"storageDescriptor" yaml:"storageDescriptor"` // The type of this table ( `EXTERNAL_TABLE` , `VIRTUAL_VIEW` , etc.). TableType *string `field:"optional" json:"tableType" yaml:"tableType"` // A `TableIdentifier` structure that describes a target table for resource linking. TargetTable interface{} `field:"optional" json:"targetTable" yaml:"targetTable"` // If the table is a view, the expanded text of the view; // // otherwise `null` . ViewExpandedText *string `field:"optional" json:"viewExpandedText" yaml:"viewExpandedText"` // If the table is a view, the original text of the view; // // otherwise `null` . ViewOriginalText *string `field:"optional" json:"viewOriginalText" yaml:"viewOriginalText"` }
A structure used to define a table.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var parameters interface{} var skewedColumnValueLocationMaps interface{} tableInputProperty := &tableInputProperty{ description: jsii.String("description"), name: jsii.String("name"), owner: jsii.String("owner"), parameters: parameters, partitionKeys: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, retention: jsii.Number(123), storageDescriptor: &storageDescriptorProperty{ bucketColumns: []*string{ jsii.String("bucketColumns"), }, columns: []interface{}{ &columnProperty{ name: jsii.String("name"), // the properties below are optional comment: jsii.String("comment"), type: jsii.String("type"), }, }, compressed: jsii.Boolean(false), inputFormat: jsii.String("inputFormat"), location: jsii.String("location"), numberOfBuckets: jsii.Number(123), outputFormat: jsii.String("outputFormat"), parameters: parameters, schemaReference: &schemaReferenceProperty{ schemaId: &schemaIdProperty{ registryName: jsii.String("registryName"), schemaArn: jsii.String("schemaArn"), schemaName: jsii.String("schemaName"), }, schemaVersionId: jsii.String("schemaVersionId"), schemaVersionNumber: jsii.Number(123), }, serdeInfo: &serdeInfoProperty{ name: jsii.String("name"), parameters: parameters, serializationLibrary: jsii.String("serializationLibrary"), }, skewedInfo: &skewedInfoProperty{ skewedColumnNames: []*string{ jsii.String("skewedColumnNames"), }, skewedColumnValueLocationMaps: skewedColumnValueLocationMaps, skewedColumnValues: []*string{ jsii.String("skewedColumnValues"), }, }, sortColumns: []interface{}{ &orderProperty{ column: jsii.String("column"), sortOrder: jsii.Number(123), }, }, storedAsSubDirectories: jsii.Boolean(false), }, tableType: jsii.String("tableType"), targetTable: &tableIdentifierProperty{ catalogId: jsii.String("catalogId"), databaseName: jsii.String("databaseName"), name: jsii.String("name"), }, viewExpandedText: jsii.String("viewExpandedText"), viewOriginalText: jsii.String("viewOriginalText"), }
type CfnTrigger ¶
type CfnTrigger interface { awscdk.CfnResource awscdk.IInspectable // The actions initiated by this trigger. Actions() interface{} SetActions(val interface{}) // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A description of this trigger. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the trigger. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // The predicate of this trigger, which defines when it will fire. Predicate() interface{} SetPredicate(val interface{}) // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // A `cron` expression used to specify the schedule. // // For more information, see [Time-Based Schedules for Jobs and Crawlers](https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html) in the *AWS Glue Developer Guide* . For example, to run something every day at 12:15 UTC, specify `cron(15 12 * * ? *)` . Schedule() *string SetSchedule(val *string) // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // Set to true to start `SCHEDULED` and `CONDITIONAL` triggers when created. // // True is not supported for `ON_DEMAND` triggers. StartOnCreation() interface{} SetStartOnCreation(val interface{}) // The tags to use with this trigger. Tags() awscdk.TagManager // The type of trigger that this is. Type() *string SetType(val *string) // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // The name of the workflow associated with the trigger. WorkflowName() *string SetWorkflowName(val *string) // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Trigger`.
The `AWS::Glue::Trigger` resource specifies triggers that run AWS Glue jobs. For more information, see [Triggering Jobs in AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/trigger-job.html) and [Trigger Structure](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-trigger.html#aws-glue-api-jobs-trigger-Trigger) in the *AWS Glue Developer Guide* .
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var arguments_ interface{} var tags interface{} cfnTrigger := awscdk.Aws_glue.NewCfnTrigger(this, jsii.String("MyCfnTrigger"), &cfnTriggerProps{ actions: []interface{}{ &actionProperty{ arguments: arguments_, crawlerName: jsii.String("crawlerName"), jobName: jsii.String("jobName"), notificationProperty: ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }, securityConfiguration: jsii.String("securityConfiguration"), timeout: jsii.Number(123), }, }, type: jsii.String("type"), // the properties below are optional description: jsii.String("description"), name: jsii.String("name"), predicate: &predicateProperty{ conditions: []interface{}{ &conditionProperty{ crawlerName: jsii.String("crawlerName"), crawlState: jsii.String("crawlState"), jobName: jsii.String("jobName"), logicalOperator: jsii.String("logicalOperator"), state: jsii.String("state"), }, }, logical: jsii.String("logical"), }, schedule: jsii.String("schedule"), startOnCreation: jsii.Boolean(false), tags: tags, workflowName: jsii.String("workflowName"), })
func NewCfnTrigger ¶
func NewCfnTrigger(scope awscdk.Construct, id *string, props *CfnTriggerProps) CfnTrigger
Create a new `AWS::Glue::Trigger`.
type CfnTriggerProps ¶
type CfnTriggerProps struct { // The actions initiated by this trigger. Actions interface{} `field:"required" json:"actions" yaml:"actions"` // The type of trigger that this is. Type *string `field:"required" json:"type" yaml:"type"` // A description of this trigger. Description *string `field:"optional" json:"description" yaml:"description"` // The name of the trigger. Name *string `field:"optional" json:"name" yaml:"name"` // The predicate of this trigger, which defines when it will fire. Predicate interface{} `field:"optional" json:"predicate" yaml:"predicate"` // A `cron` expression used to specify the schedule. // // For more information, see [Time-Based Schedules for Jobs and Crawlers](https://docs.aws.amazon.com/glue/latest/dg/monitor-data-warehouse-schedule.html) in the *AWS Glue Developer Guide* . For example, to run something every day at 12:15 UTC, specify `cron(15 12 * * ? *)` . Schedule *string `field:"optional" json:"schedule" yaml:"schedule"` // Set to true to start `SCHEDULED` and `CONDITIONAL` triggers when created. // // True is not supported for `ON_DEMAND` triggers. StartOnCreation interface{} `field:"optional" json:"startOnCreation" yaml:"startOnCreation"` // The tags to use with this trigger. Tags interface{} `field:"optional" json:"tags" yaml:"tags"` // The name of the workflow associated with the trigger. WorkflowName *string `field:"optional" json:"workflowName" yaml:"workflowName"` }
Properties for defining a `CfnTrigger`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var arguments_ interface{} var tags interface{} cfnTriggerProps := &cfnTriggerProps{ actions: []interface{}{ &actionProperty{ arguments: arguments_, crawlerName: jsii.String("crawlerName"), jobName: jsii.String("jobName"), notificationProperty: ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }, securityConfiguration: jsii.String("securityConfiguration"), timeout: jsii.Number(123), }, }, type: jsii.String("type"), // the properties below are optional description: jsii.String("description"), name: jsii.String("name"), predicate: &predicateProperty{ conditions: []interface{}{ &conditionProperty{ crawlerName: jsii.String("crawlerName"), crawlState: jsii.String("crawlState"), jobName: jsii.String("jobName"), logicalOperator: jsii.String("logicalOperator"), state: jsii.String("state"), }, }, logical: jsii.String("logical"), }, schedule: jsii.String("schedule"), startOnCreation: jsii.Boolean(false), tags: tags, workflowName: jsii.String("workflowName"), }
type CfnTrigger_ActionProperty ¶
type CfnTrigger_ActionProperty struct { // The job arguments used when this trigger fires. // // For this job run, they replace the default arguments set in the job definition itself. // // You can specify arguments here that your own job-execution script consumes, in addition to arguments that AWS Glue itself consumes. // // For information about how to specify and consume your own job arguments, see [Calling AWS Glue APIs in Python](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html) in the *AWS Glue Developer Guide* . // // For information about the key-value pairs that AWS Glue consumes to set up your job, see the [Special Parameters Used by AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html) topic in the developer guide. Arguments interface{} `field:"optional" json:"arguments" yaml:"arguments"` // The name of the crawler to be used with this action. CrawlerName *string `field:"optional" json:"crawlerName" yaml:"crawlerName"` // The name of a job to be executed. JobName *string `field:"optional" json:"jobName" yaml:"jobName"` // Specifies configuration properties of a job run notification. NotificationProperty interface{} `field:"optional" json:"notificationProperty" yaml:"notificationProperty"` // The name of the `SecurityConfiguration` structure to be used with this action. SecurityConfiguration *string `field:"optional" json:"securityConfiguration" yaml:"securityConfiguration"` // The `JobRun` timeout in minutes. // // This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours). This overrides the timeout value set in the parent job. Timeout *float64 `field:"optional" json:"timeout" yaml:"timeout"` }
Defines an action to be initiated by a trigger.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var arguments_ interface{} actionProperty := &actionProperty{ arguments: arguments_, crawlerName: jsii.String("crawlerName"), jobName: jsii.String("jobName"), notificationProperty: ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }, securityConfiguration: jsii.String("securityConfiguration"), timeout: jsii.Number(123), }
type CfnTrigger_ConditionProperty ¶
type CfnTrigger_ConditionProperty struct { // The name of the crawler to which this condition applies. CrawlerName *string `field:"optional" json:"crawlerName" yaml:"crawlerName"` // The state of the crawler to which this condition applies. CrawlState *string `field:"optional" json:"crawlState" yaml:"crawlState"` // The name of the job whose `JobRuns` this condition applies to, and on which this trigger waits. JobName *string `field:"optional" json:"jobName" yaml:"jobName"` // A logical operator. LogicalOperator *string `field:"optional" json:"logicalOperator" yaml:"logicalOperator"` // The condition state. // // Currently, the values supported are `SUCCEEDED` , `STOPPED` , `TIMEOUT` , and `FAILED` . State *string `field:"optional" json:"state" yaml:"state"` }
Defines a condition under which a trigger fires.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" conditionProperty := &conditionProperty{ crawlerName: jsii.String("crawlerName"), crawlState: jsii.String("crawlState"), jobName: jsii.String("jobName"), logicalOperator: jsii.String("logicalOperator"), state: jsii.String("state"), }
type CfnTrigger_NotificationPropertyProperty ¶
type CfnTrigger_NotificationPropertyProperty struct { // After a job run starts, the number of minutes to wait before sending a job run delay notification. NotifyDelayAfter *float64 `field:"optional" json:"notifyDelayAfter" yaml:"notifyDelayAfter"` }
Specifies configuration properties of a job run notification.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" notificationPropertyProperty := ¬ificationPropertyProperty{ notifyDelayAfter: jsii.Number(123), }
type CfnTrigger_PredicateProperty ¶
type CfnTrigger_PredicateProperty struct { // A list of the conditions that determine when the trigger will fire. Conditions interface{} `field:"optional" json:"conditions" yaml:"conditions"` // An optional field if only one condition is listed. // // If multiple conditions are listed, then this field is required. Logical *string `field:"optional" json:"logical" yaml:"logical"` }
Defines the predicate of the trigger, which determines when it fires.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" predicateProperty := &predicateProperty{ conditions: []interface{}{ &conditionProperty{ crawlerName: jsii.String("crawlerName"), crawlState: jsii.String("crawlState"), jobName: jsii.String("jobName"), logicalOperator: jsii.String("logicalOperator"), state: jsii.String("state"), }, }, logical: jsii.String("logical"), }
type CfnWorkflow ¶
type CfnWorkflow interface { awscdk.CfnResource awscdk.IInspectable // Options for this resource, such as condition, update policy etc. // Experimental. CfnOptions() awscdk.ICfnResourceOptions CfnProperties() *map[string]interface{} // AWS resource type. // Experimental. CfnResourceType() *string // Returns: the stack trace of the point where this Resource was created from, sourced // from the +metadata+ entry typed +aws:cdk:logicalId+, and with the bottom-most // node +internal+ entries filtered. // Experimental. CreationStack() *[]*string // A collection of properties to be used as part of each execution of the workflow. DefaultRunProperties() interface{} SetDefaultRunProperties(val interface{}) // A description of the workflow. Description() *string SetDescription(val *string) // The logical ID for this CloudFormation stack element. // // The logical ID of the element // is calculated from the path of the resource node in the construct tree. // // To override this value, use `overrideLogicalId(newLogicalId)`. // // Returns: the logical ID as a stringified token. This value will only get // resolved during synthesis. // Experimental. LogicalId() *string // The name of the workflow representing the flow. Name() *string SetName(val *string) // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // Return a string that will be resolved to a CloudFormation `{ Ref }` for this element. // // If, by any chance, the intrinsic reference of a resource is not a string, you could // coerce it to an IResolvable through `Lazy.any({ produce: resource.ref })`. // Experimental. Ref() *string // The stack in which this element is defined. // // CfnElements must be defined within a stack scope (directly or indirectly). // Experimental. Stack() awscdk.Stack // The tags to use with this workflow. Tags() awscdk.TagManager // Return properties modified after initiation. // // Resources that expose mutable properties should override this function to // collect and return the properties object for this resource. // Experimental. UpdatedProperites() *map[string]interface{} // Syntactic sugar for `addOverride(path, undefined)`. // Experimental. AddDeletionOverride(path *string) // Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned. // // This can be used for resources across stacks (or nested stack) boundaries // and the dependency will automatically be transferred to the relevant scope. // Experimental. AddDependsOn(target awscdk.CfnResource) // Add a value to the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. AddMetadata(key *string, value interface{}) // Adds an override to the synthesized CloudFormation resource. // // To add a // property override, either use `addPropertyOverride` or prefix `path` with // "Properties." (i.e. `Properties.TopicName`). // // If the override is nested, separate each nested level using a dot (.) in the path parameter. // If there is an array as part of the nesting, specify the index in the path. // // To include a literal `.` in the property name, prefix with a `\`. In most // programming languages you will need to write this as `"\\."` because the // `\` itself will need to be escaped. // // For example, // “`typescript // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes', ['myattribute']); // cfnResource.addOverride('Properties.GlobalSecondaryIndexes.1.ProjectionType', 'INCLUDE'); // “` // would add the overrides // “`json // "Properties": { // "GlobalSecondaryIndexes": [ // { // "Projection": { // "NonKeyAttributes": [ "myattribute" ] // ... // } // ... // }, // { // "ProjectionType": "INCLUDE" // ... // }, // ] // ... // } // “` // // The `value` argument to `addOverride` will not be processed or translated // in any way. Pass raw JSON values in here with the correct capitalization // for CloudFormation. If you pass CDK classes or structs, they will be // rendered with lowercased key names, and CloudFormation will reject the // template. // Experimental. AddOverride(path *string, value interface{}) // Adds an override that deletes the value of a property from the resource definition. // Experimental. AddPropertyDeletionOverride(propertyPath *string) // Adds an override to a resource property. // // Syntactic sugar for `addOverride("Properties.<...>", value)`. // Experimental. AddPropertyOverride(propertyPath *string, value interface{}) // Sets the deletion policy of the resource based on the removal policy specified. // // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy, options *awscdk.RemovalPolicyOptions) // Returns a token for an runtime attribute of this resource. // // Ideally, use generated attribute accessors (e.g. `resource.arn`), but this can be used for future compatibility // in case there is no generated attribute. // Experimental. GetAtt(attributeName *string) awscdk.Reference // Retrieve a value value from the CloudFormation Resource Metadata. // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/metadata-section-structure.html // // Note that this is a different set of metadata from CDK node metadata; this // metadata ends up in the stack template under the resource, whereas CDK // node metadata ends up in the Cloud Assembly. // // Experimental. GetMetadata(key *string) interface{} // Examines the CloudFormation resource and discloses attributes. Inspect(inspector awscdk.TreeInspector) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() RenderProperties(props *map[string]interface{}) *map[string]interface{} // Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template. // // Returns: `true` if the resource should be included or `false` is the resource // should be omitted. // Experimental. ShouldSynthesize() *bool // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // // Returns: a string representation of this resource. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string // Experimental. ValidateProperties(_properties interface{}) }
A CloudFormation `AWS::Glue::Workflow`.
The `AWS::Glue::Workflow` is an AWS Glue resource type that manages AWS Glue workflows. A workflow is a container for a set of related jobs, crawlers, and triggers in AWS Glue . Using a workflow, you can design a complex multi-job extract, transform, and load (ETL) activity that AWS Glue can execute and track as single entity.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var defaultRunProperties interface{} var tags interface{} cfnWorkflow := awscdk.Aws_glue.NewCfnWorkflow(this, jsii.String("MyCfnWorkflow"), &cfnWorkflowProps{ defaultRunProperties: defaultRunProperties, description: jsii.String("description"), name: jsii.String("name"), tags: tags, })
func NewCfnWorkflow ¶
func NewCfnWorkflow(scope awscdk.Construct, id *string, props *CfnWorkflowProps) CfnWorkflow
Create a new `AWS::Glue::Workflow`.
type CfnWorkflowProps ¶
type CfnWorkflowProps struct { // A collection of properties to be used as part of each execution of the workflow. DefaultRunProperties interface{} `field:"optional" json:"defaultRunProperties" yaml:"defaultRunProperties"` // A description of the workflow. Description *string `field:"optional" json:"description" yaml:"description"` // The name of the workflow representing the flow. Name *string `field:"optional" json:"name" yaml:"name"` // The tags to use with this workflow. Tags interface{} `field:"optional" json:"tags" yaml:"tags"` }
Properties for defining a `CfnWorkflow`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var defaultRunProperties interface{} var tags interface{} cfnWorkflowProps := &cfnWorkflowProps{ defaultRunProperties: defaultRunProperties, description: jsii.String("description"), name: jsii.String("name"), tags: tags, }
type ClassificationString ¶
type ClassificationString interface { // Experimental. Value() *string }
Classification string given to tables with this data format.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" classificationString := awscdk.Aws_glue.classificationString_AVRO()
See: https://docs.aws.amazon.com/glue/latest/dg/add-classifier.html#classifier-built-in
Experimental.
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
Experimental.
type CloudWatchEncryption ¶
type CloudWatchEncryption struct { // Encryption mode. // Experimental. Mode CloudWatchEncryptionMode `field:"required" json:"mode" yaml:"mode"` // The KMS key to be used to encrypt the data. // Experimental. KmsKey awskms.IKey `field:"optional" json:"kmsKey" yaml:"kmsKey"` }
CloudWatch Logs encryption configuration.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
type CloudWatchEncryptionMode ¶
type CloudWatchEncryptionMode string
Encryption mode for CloudWatch Logs.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
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 // // Experimental. CloudWatchEncryptionMode_KMS CloudWatchEncryptionMode = "KMS" )
type Code ¶
type Code interface { // Called when the Job is initialized to allow this object to bind. // Experimental. 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).
Example:
var bucket bucket glue.NewJob(this, jsii.String("PythonShellJob"), &jobProps{ executable: glue.jobExecutable.pythonShell(&pythonShellExecutableProps{ glueVersion: glue.glueVersion_V1_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromBucket(bucket, jsii.String("script.py")), }), description: jsii.String("an example Python Shell job"), })
Experimental.
type CodeConfig ¶
type CodeConfig struct { // The location of the code in S3. // Experimental. S3Location *awss3.Location `field:"required" json:"s3Location" yaml:"s3Location"` }
Result of binding `Code` into a `Job`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" codeConfig := &codeConfig{ s3Location: &location{ bucketName: jsii.String("bucketName"), objectKey: jsii.String("objectKey"), // the properties below are optional objectVersion: jsii.String("objectVersion"), }, }
Experimental.
type Column ¶
type Column struct { // Name of the column. // Experimental. Name *string `field:"required" json:"name" yaml:"name"` // Type of the column. // Experimental. Type *Type `field:"required" json:"type" yaml:"type"` // Coment describing the column. // Experimental. Comment *string `field:"optional" json:"comment" yaml:"comment"` }
A column of a table.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" column := &column{ name: jsii.String("name"), type: &type{ inputString: jsii.String("inputString"), isPrimitive: jsii.Boolean(false), }, // the properties below are optional comment: jsii.String("comment"), }
Experimental.
type Connection ¶
type Connection interface { awscdk.Resource IConnection // The ARN of the connection. // Experimental. ConnectionArn() *string // The name of the connection. // Experimental. ConnectionName() *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. // Experimental. Env() *awscdk.ResourceEnvironment // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // 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. // Experimental. PhysicalName() *string // The stack in which this resource is defined. // Experimental. Stack() awscdk.Stack // Add additional connection parameters. // Experimental. 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy) // Experimental. 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`. // Experimental. 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. // Experimental. GetResourceNameAttribute(nameAttr *string) *string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string }
An AWS Glue connection to a data source.
Example:
var securityGroup securityGroup var subnet subnet glue.NewConnection(this, jsii.String("MyConnection"), &connectionProps{ type: glue.connectionType_NETWORK(), // The security groups granting AWS Glue inbound access to the data source within the VPC securityGroups: []iSecurityGroup{ securityGroup, }, // The VPC subnet which contains the data source subnet: subnet, })
Experimental.
func NewConnection ¶
func NewConnection(scope constructs.Construct, id *string, props *ConnectionProps) Connection
Experimental.
type ConnectionOptions ¶
type ConnectionOptions struct { // The name of the connection. // Experimental. ConnectionName *string `field:"optional" json:"connectionName" yaml:"connectionName"` // The description of the connection. // Experimental. Description *string `field:"optional" json:"description" yaml:"description"` // A list of criteria that can be used in selecting this connection. // // This is useful for filtering the results of https://awscli.amazonaws.com/v2/documentation/api/latest/reference/glue/get-connections.html // Experimental. MatchCriteria *[]*string `field:"optional" json:"matchCriteria" yaml:"matchCriteria"` // Key-Value pairs that define parameters for the connection. // See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect.html // // Experimental. Properties *map[string]*string `field:"optional" json:"properties" yaml:"properties"` // The list of security groups needed to successfully make this connection e.g. to successfully connect to VPC. // Experimental. SecurityGroups *[]awsec2.ISecurityGroup `field:"optional" json:"securityGroups" yaml:"securityGroups"` // The VPC subnet to connect to resources within a VPC. // // See more at https://docs.aws.amazon.com/glue/latest/dg/start-connecting.html. // Experimental. Subnet awsec2.ISubnet `field:"optional" json:"subnet" yaml:"subnet"` }
Base Connection Options.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var securityGroup securityGroup var subnet subnet connectionOptions := &connectionOptions{ connectionName: jsii.String("connectionName"), description: jsii.String("description"), matchCriteria: []*string{ jsii.String("matchCriteria"), }, properties: map[string]*string{ "propertiesKey": jsii.String("properties"), }, securityGroups: []iSecurityGroup{ securityGroup, }, subnet: subnet, }
Experimental.
type ConnectionProps ¶
type ConnectionProps struct { // The name of the connection. // Experimental. ConnectionName *string `field:"optional" json:"connectionName" yaml:"connectionName"` // The description of the connection. // Experimental. Description *string `field:"optional" json:"description" yaml:"description"` // A list of criteria that can be used in selecting this connection. // // This is useful for filtering the results of https://awscli.amazonaws.com/v2/documentation/api/latest/reference/glue/get-connections.html // Experimental. MatchCriteria *[]*string `field:"optional" json:"matchCriteria" yaml:"matchCriteria"` // Key-Value pairs that define parameters for the connection. // See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-connect.html // // Experimental. Properties *map[string]*string `field:"optional" json:"properties" yaml:"properties"` // The list of security groups needed to successfully make this connection e.g. to successfully connect to VPC. // Experimental. SecurityGroups *[]awsec2.ISecurityGroup `field:"optional" json:"securityGroups" yaml:"securityGroups"` // The VPC subnet to connect to resources within a VPC. // // See more at https://docs.aws.amazon.com/glue/latest/dg/start-connecting.html. // Experimental. Subnet awsec2.ISubnet `field:"optional" json:"subnet" yaml:"subnet"` // The type of the connection. // Experimental. Type ConnectionType `field:"required" json:"type" yaml:"type"` }
Construction properties for {@link Connection}.
Example:
var securityGroup securityGroup var subnet subnet glue.NewConnection(this, jsii.String("MyConnection"), &connectionProps{ type: glue.connectionType_NETWORK(), // The security groups granting AWS Glue inbound access to the data source within the VPC securityGroups: []iSecurityGroup{ securityGroup, }, // The VPC subnet which contains the data source subnet: subnet, })
Experimental.
type ConnectionType ¶
type ConnectionType interface { // The name of this ConnectionType, as expected by Connection resource. // Experimental. Name() *string // The connection type name as expected by Connection resource. // Experimental. ToString() *string }
The type of the glue connection.
If you need to use a connection type that doesn't exist as a static member, you can instantiate a `ConnectionType` object, e.g: `new ConnectionType('NEW_TYPE')`.
Example:
var securityGroup securityGroup var subnet subnet glue.NewConnection(this, jsii.String("MyConnection"), &connectionProps{ type: glue.connectionType_NETWORK(), // The security groups granting AWS Glue inbound access to the data source within the VPC securityGroups: []iSecurityGroup{ securityGroup, }, // The VPC subnet which contains the data source subnet: subnet, })
Experimental.
func ConnectionType_JDBC ¶
func ConnectionType_JDBC() ConnectionType
func ConnectionType_KAFKA ¶
func ConnectionType_KAFKA() ConnectionType
func ConnectionType_MONGODB ¶
func ConnectionType_MONGODB() ConnectionType
func ConnectionType_NETWORK ¶
func ConnectionType_NETWORK() ConnectionType
type ContinuousLoggingProps ¶
type ContinuousLoggingProps struct { // Enable continouous logging. // Experimental. 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. // Experimental. ConversionPattern *string `field:"optional" json:"conversionPattern" yaml:"conversionPattern"` // Specify a custom CloudWatch log group name. // Experimental. LogGroup awslogs.ILogGroup `field:"optional" json:"logGroup" yaml:"logGroup"` // Specify a custom CloudWatch log stream prefix. // Experimental. LogStreamPrefix *string `field:"optional" json:"logStreamPrefix" yaml:"logStreamPrefix"` // Filter out non-useful Apache Spark driver/executor and Apache Hadoop YARN heartbeat log messages. // Experimental. Quiet *bool `field:"optional" json:"quiet" yaml:"quiet"` }
Properties for enabling Continuous Logging for Glue Jobs.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var logGroup logGroup continuousLoggingProps := &continuousLoggingProps{ enabled: jsii.Boolean(false), // the properties below are optional conversionPattern: jsii.String("conversionPattern"), logGroup: logGroup, logStreamPrefix: jsii.String("logStreamPrefix"), quiet: jsii.Boolean(false), }
See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
Experimental.
type DataFormat ¶
type DataFormat interface { // Classification string given to tables with this data format. // Experimental. ClassificationString() ClassificationString // `InputFormat` for this data format. // Experimental. InputFormat() InputFormat // `OutputFormat` for this data format. // Experimental. OutputFormat() OutputFormat // Serialization library for this data format. // Experimental. SerializationLibrary() SerializationLibrary }
Defines the input/output formats and ser/de for a single DataFormat.
Example:
var myDatabase database glue.NewTable(this, jsii.String("MyTable"), &tableProps{ database: myDatabase, tableName: jsii.String("my_table"), columns: []column{ &column{ name: jsii.String("col1"), type: glue.schema_STRING(), }, }, partitionKeys: []*column{ &column{ name: jsii.String("year"), type: glue.*schema_SMALL_INT(), }, &column{ name: jsii.String("month"), type: glue.*schema_SMALL_INT(), }, }, dataFormat: glue.dataFormat_JSON(), })
Experimental.
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
type DataFormatProps ¶
type DataFormatProps struct { // `InputFormat` for this data format. // Experimental. InputFormat InputFormat `field:"required" json:"inputFormat" yaml:"inputFormat"` // `OutputFormat` for this data format. // Experimental. OutputFormat OutputFormat `field:"required" json:"outputFormat" yaml:"outputFormat"` // Serialization library for this data format. // Experimental. SerializationLibrary SerializationLibrary `field:"required" json:"serializationLibrary" yaml:"serializationLibrary"` // Classification string given to tables with this data format. // Experimental. ClassificationString ClassificationString `field:"optional" json:"classificationString" yaml:"classificationString"` }
Properties of a DataFormat instance.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var classificationString classificationString var inputFormat inputFormat var outputFormat outputFormat var serializationLibrary serializationLibrary dataFormatProps := &dataFormatProps{ inputFormat: inputFormat, outputFormat: outputFormat, serializationLibrary: serializationLibrary, // the properties below are optional classificationString: classificationString, }
Experimental.
type Database ¶
type Database interface { awscdk.Resource IDatabase // ARN of the Glue catalog in which this database is stored. // Experimental. CatalogArn() *string // The catalog id of the database (usually, the AWS account id). // Experimental. CatalogId() *string // ARN of this database. // Experimental. DatabaseArn() *string // Name of this database. // Experimental. DatabaseName() *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. // Experimental. Env() *awscdk.ResourceEnvironment // Location URI of this database. // Experimental. LocationUri() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // 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. // Experimental. PhysicalName() *string // The stack in which this resource is defined. // Experimental. 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy) // Experimental. 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`. // Experimental. 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. // Experimental. GetResourceNameAttribute(nameAttr *string) *string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string }
A Glue database.
Example:
glue.NewDatabase(this, jsii.String("MyDatabase"), &databaseProps{ databaseName: jsii.String("my_database"), })
Experimental.
func NewDatabase ¶
func NewDatabase(scope constructs.Construct, id *string, props *DatabaseProps) Database
Experimental.
type DatabaseProps ¶
type DatabaseProps struct { // The name of the database. // Experimental. DatabaseName *string `field:"required" json:"databaseName" yaml:"databaseName"` // The location of the database (for example, an HDFS path). // See: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-database-databaseinput.html // // Experimental. LocationUri *string `field:"optional" json:"locationUri" yaml:"locationUri"` }
Example:
glue.NewDatabase(this, jsii.String("MyDatabase"), &databaseProps{ databaseName: jsii.String("my_database"), })
Experimental.
type GlueVersion ¶
type GlueVersion interface { // The name of this GlueVersion, as expected by Job resource. // Experimental. Name() *string }
AWS Glue version determines the versions of Apache Spark and Python that are available to the job.
Example:
var bucket bucket glue.NewJob(this, jsii.String("PythonShellJob"), &jobProps{ executable: glue.jobExecutable.pythonShell(&pythonShellExecutableProps{ glueVersion: glue.glueVersion_V1_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromBucket(bucket, jsii.String("script.py")), }), description: jsii.String("an example Python Shell job"), })
See: https://docs.aws.amazon.com/glue/latest/dg/add-job.html.
If you need to use a GlueVersion that doesn't exist as a static member, you can instantiate a `GlueVersion` object, e.g: `GlueVersion.of('1.5')`.
Experimental.
func GlueVersion_Of ¶
func GlueVersion_Of(version *string) GlueVersion
Custom Glue version. Experimental.
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 IConnection ¶
type IConnection interface { awscdk.IResource // The ARN of the connection. // Experimental. ConnectionArn() *string // The name of the connection. // Experimental. ConnectionName() *string }
Interface representing a created or an imported {@link Connection}. Experimental.
func Connection_FromConnectionArn ¶
func Connection_FromConnectionArn(scope constructs.Construct, id *string, connectionArn *string) IConnection
Creates a Connection construct that represents an external connection. Experimental.
func Connection_FromConnectionName ¶
func Connection_FromConnectionName(scope constructs.Construct, id *string, connectionName *string) IConnection
Creates a Connection construct that represents an external connection. Experimental.
type IDatabase ¶
type IDatabase interface { awscdk.IResource // The ARN of the catalog. // Experimental. CatalogArn() *string // The catalog id of the database (usually, the AWS account id). // Experimental. CatalogId() *string // The ARN of the database. // Experimental. DatabaseArn() *string // The name of the database. // Experimental. DatabaseName() *string }
Experimental.
func Database_FromDatabaseArn ¶
func Database_FromDatabaseArn(scope constructs.Construct, id *string, databaseArn *string) IDatabase
Experimental.
type IJob ¶
type IJob interface { awsiam.IGrantable awscdk.IResource // Create a CloudWatch metric. // See: https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html // // Experimental. Metric(metricName *string, type_ MetricType, props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Create a CloudWatch Metric indicating job failure. // Experimental. MetricFailure(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Create a CloudWatch Metric indicating job success. // Experimental. MetricSuccess(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Create a CloudWatch Metric indicating job timeout. // Experimental. MetricTimeout(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Defines a CloudWatch event rule triggered when something happens with this job. // See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types // // Experimental. OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule triggered when this job moves to the FAILED state. // See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types // // Experimental. OnFailure(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule triggered when this job moves to the input jobState. // See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types // // Experimental. OnStateChange(id *string, jobState JobState, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule triggered when this job moves to the SUCCEEDED state. // See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types // // Experimental. OnSuccess(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Defines a CloudWatch event rule triggered when this job moves to the TIMEOUT state. // See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types // // Experimental. OnTimeout(id *string, options *awsevents.OnEventOptions) awsevents.Rule // The ARN of the job. // Experimental. JobArn() *string // The name of the job. // Experimental. JobName() *string }
Interface representing a created or an imported {@link Job}. Experimental.
func Job_FromJobAttributes ¶
func Job_FromJobAttributes(scope constructs.Construct, id *string, attrs *JobAttributes) IJob
Creates a Glue Job. Experimental.
type ISecurityConfiguration ¶
type ISecurityConfiguration interface { awscdk.IResource // The name of the security configuration. // Experimental. SecurityConfigurationName() *string }
Interface representing a created or an imported {@link SecurityConfiguration}. Experimental.
func SecurityConfiguration_FromSecurityConfigurationName ¶
func SecurityConfiguration_FromSecurityConfigurationName(scope constructs.Construct, id *string, securityConfigurationName *string) ISecurityConfiguration
Creates a Connection construct that represents an external security configuration. Experimental.
type ITable ¶
type ITable interface { awscdk.IResource // Experimental. TableArn() *string // Experimental. TableName() *string }
Experimental.
func Table_FromTableArn ¶
Experimental.
func Table_FromTableAttributes ¶
func Table_FromTableAttributes(scope constructs.Construct, id *string, attrs *TableAttributes) ITable
Creates a Table construct that represents an external table. Experimental.
type InputFormat ¶
type InputFormat interface { // Experimental. ClassName() *string }
Absolute class name of the Hadoop `InputFormat` to use when reading table files.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" inputFormat := awscdk.Aws_glue.inputFormat_AVRO()
Experimental.
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 OutputFormat_AVRO ¶
func OutputFormat_AVRO() InputFormat
func OutputFormat_ORC ¶
func OutputFormat_ORC() InputFormat
type Job ¶
type Job interface { awscdk.Resource IJob // 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. // Experimental. Env() *awscdk.ResourceEnvironment // The principal this Glue Job is running as. // Experimental. GrantPrincipal() awsiam.IPrincipal // The ARN of the job. // Experimental. JobArn() *string // The name of the job. // Experimental. JobName() *string // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // 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. // Experimental. PhysicalName() *string // The IAM role Glue assumes to run this job. // Experimental. Role() awsiam.IRole // The Spark UI logs location if Spark UI monitoring and debugging is enabled. // See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html // // Experimental. SparkUILoggingLocation() *SparkUILoggingLocation // The stack in which this resource is defined. // Experimental. 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy) // Experimental. 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`. // Experimental. 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. // Experimental. GetResourceNameAttribute(nameAttr *string) *string // Create a CloudWatch metric. // See: https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html // // Experimental. Metric(metricName *string, type_ MetricType, props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Return a CloudWatch Metric indicating job failure. // // This metric is based on the Rule returned by no-args onFailure() call. // Experimental. MetricFailure(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Return a CloudWatch Metric indicating job success. // // This metric is based on the Rule returned by no-args onSuccess() call. // Experimental. MetricSuccess(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Return a CloudWatch Metric indicating job timeout. // // This metric is based on the Rule returned by no-args onTimeout() call. // Experimental. MetricTimeout(props *awscloudwatch.MetricOptions) awscloudwatch.Metric // Create a CloudWatch Event Rule for this Glue Job when it's in a given state. // See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types // // Experimental. OnEvent(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Return a CloudWatch Event Rule matching FAILED state. // Experimental. OnFailure(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Create a CloudWatch Event Rule for the transition into the input jobState. // Experimental. OnStateChange(id *string, jobState JobState, options *awsevents.OnEventOptions) awsevents.Rule // Create a CloudWatch Event Rule matching JobState.SUCCEEDED. // Experimental. OnSuccess(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Return a CloudWatch Event Rule matching TIMEOUT state. // Experimental. OnTimeout(id *string, options *awsevents.OnEventOptions) awsevents.Rule // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string }
A Glue Job.
Example:
var bucket bucket glue.NewJob(this, jsii.String("PythonShellJob"), &jobProps{ executable: glue.jobExecutable.pythonShell(&pythonShellExecutableProps{ glueVersion: glue.glueVersion_V1_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromBucket(bucket, jsii.String("script.py")), }), description: jsii.String("an example Python Shell job"), })
Experimental.
type JobAttributes ¶
type JobAttributes struct { // The name of the job. // Experimental. JobName *string `field:"required" json:"jobName" yaml:"jobName"` // The IAM role assumed by Glue to run this job. // Experimental. Role awsiam.IRole `field:"optional" json:"role" yaml:"role"` }
Attributes for importing {@link Job}.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var role role jobAttributes := &jobAttributes{ jobName: jsii.String("jobName"), // the properties below are optional role: role, }
Experimental.
type JobBookmarksEncryption ¶
type JobBookmarksEncryption struct { // Encryption mode. // Experimental. Mode JobBookmarksEncryptionMode `field:"required" json:"mode" yaml:"mode"` // The KMS key to be used to encrypt the data. // Experimental. KmsKey awskms.IKey `field:"optional" json:"kmsKey" yaml:"kmsKey"` }
Job bookmarks encryption configuration.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
type JobBookmarksEncryptionMode ¶
type JobBookmarksEncryptionMode string
Encryption mode for Job Bookmarks.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
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 // // Experimental. JobBookmarksEncryptionMode_CLIENT_SIDE_KMS JobBookmarksEncryptionMode = "CLIENT_SIDE_KMS" )
type JobExecutable ¶
type JobExecutable interface { // Called during Job initialization to get JobExecutableConfig. // Experimental. Bind() *JobExecutableConfig }
The executable properties related to the Glue job's GlueVersion, JobType and code.
Example:
var bucket bucket glue.NewJob(this, jsii.String("PythonShellJob"), &jobProps{ executable: glue.jobExecutable.pythonShell(&pythonShellExecutableProps{ glueVersion: glue.glueVersion_V1_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromBucket(bucket, jsii.String("script.py")), }), description: jsii.String("an example Python Shell job"), })
Experimental.
func JobExecutable_Of ¶
func JobExecutable_Of(config *JobExecutableConfig) JobExecutable
Create a custom JobExecutable. Experimental.
func JobExecutable_PythonEtl ¶
func JobExecutable_PythonEtl(props *PythonSparkJobExecutableProps) JobExecutable
Create Python executable props for Apache Spark ETL job. Experimental.
func JobExecutable_PythonShell ¶
func JobExecutable_PythonShell(props *PythonShellExecutableProps) JobExecutable
Create Python executable props for python shell jobs. Experimental.
func JobExecutable_PythonStreaming ¶
func JobExecutable_PythonStreaming(props *PythonSparkJobExecutableProps) JobExecutable
Create Python executable props for Apache Spark Streaming job. Experimental.
func JobExecutable_ScalaEtl ¶
func JobExecutable_ScalaEtl(props *ScalaJobExecutableProps) JobExecutable
Create Scala executable props for Apache Spark ETL job. Experimental.
func JobExecutable_ScalaStreaming ¶
func JobExecutable_ScalaStreaming(props *ScalaJobExecutableProps) JobExecutable
Create Scala executable props for Apache Spark Streaming job. Experimental.
type JobExecutableConfig ¶
type JobExecutableConfig struct { // Glue version. // See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html // // Experimental. 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 // // Experimental. Language JobLanguage `field:"required" json:"language" yaml:"language"` // The script that is executed by a job. // Experimental. 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. // Experimental. 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 // // Experimental. 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 // // Experimental. 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 // // Experimental. 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 // // Experimental. 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 // // Experimental. ExtraPythonFiles *[]Code `field:"optional" json:"extraPythonFiles" yaml:"extraPythonFiles"` // The Python version to use. // Experimental. PythonVersion PythonVersion `field:"optional" json:"pythonVersion" yaml:"pythonVersion"` }
Result of binding a `JobExecutable` into a `Job`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" var code code var glueVersion glueVersion var jobType jobType jobExecutableConfig := &jobExecutableConfig{ glueVersion: glueVersion, language: awscdk.Aws_glue.jobLanguage_SCALA, script: code, type: jobType, // the properties below are optional className: jsii.String("className"), extraFiles: []*code{ code, }, extraJars: []*code{ code, }, extraJarsFirst: jsii.Boolean(false), extraPythonFiles: []*code{ code, }, pythonVersion: awscdk.*Aws_glue.pythonVersion_TWO, }
Experimental.
type JobLanguage ¶
type JobLanguage string
Runtime language of the Glue job. Experimental.
const ( // Scala. // Experimental. JobLanguage_SCALA JobLanguage = "SCALA" // Python. // Experimental. JobLanguage_PYTHON JobLanguage = "PYTHON" )
type JobProps ¶
type JobProps struct { // The job's executable properties. // Experimental. Executable JobExecutable `field:"required" json:"executable" yaml:"executable"` // The {@link Connection}s used for this job. // // Connections are used to connect to other AWS Service or resources within a VPC. // Experimental. Connections *[]IConnection `field:"optional" json:"connections" yaml:"connections"` // Enables continuous logging with the specified props. // See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html // // Experimental. ContinuousLogging *ContinuousLoggingProps `field:"optional" json:"continuousLogging" yaml:"continuousLogging"` // The default arguments for this job, specified as name-value pairs. // See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html for a list of reserved parameters // // Experimental. DefaultArguments *map[string]*string `field:"optional" json:"defaultArguments" yaml:"defaultArguments"` // The description of the job. // Experimental. Description *string `field:"optional" json:"description" yaml:"description"` // Enables the collection of metrics for job profiling. // See: `--enable-metrics` at https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html // // Experimental. EnableProfilingMetrics *bool `field:"optional" json:"enableProfilingMetrics" yaml:"enableProfilingMetrics"` // The name of the job. // Experimental. JobName *string `field:"optional" json:"jobName" yaml:"jobName"` // The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. // // Cannot be used for Glue version 2.0 and later - workerType and workerCount should be used instead. // Experimental. MaxCapacity *float64 `field:"optional" json:"maxCapacity" yaml:"maxCapacity"` // The maximum number of concurrent runs allowed for the job. // // An error is returned when this threshold is reached. The maximum value you can specify is controlled by a service limit. // Experimental. MaxConcurrentRuns *float64 `field:"optional" json:"maxConcurrentRuns" yaml:"maxConcurrentRuns"` // The maximum number of times to retry this job after a job run fails. // Experimental. MaxRetries *float64 `field:"optional" json:"maxRetries" yaml:"maxRetries"` // The number of minutes to wait after a job run starts, before sending a job run delay notification. // Experimental. NotifyDelayAfter awscdk.Duration `field:"optional" json:"notifyDelayAfter" yaml:"notifyDelayAfter"` // The IAM role assumed by Glue to run this job. // // If providing a custom role, it needs to trust the Glue service principal (glue.amazonaws.com) and be granted sufficient permissions. // See: https://docs.aws.amazon.com/glue/latest/dg/getting-started-access.html // // Experimental. Role awsiam.IRole `field:"optional" json:"role" yaml:"role"` // The {@link SecurityConfiguration} to use for this job. // Experimental. SecurityConfiguration ISecurityConfiguration `field:"optional" json:"securityConfiguration" yaml:"securityConfiguration"` // Enables the Spark UI debugging and monitoring with the specified props. // See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html // // Experimental. SparkUI *SparkUIProps `field:"optional" json:"sparkUI" yaml:"sparkUI"` // The tags to add to the resources on which the job runs. // Experimental. Tags *map[string]*string `field:"optional" json:"tags" yaml:"tags"` // The maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. // Experimental. Timeout awscdk.Duration `field:"optional" json:"timeout" yaml:"timeout"` // The number of workers of a defined {@link WorkerType} that are allocated when a job runs. // Experimental. WorkerCount *float64 `field:"optional" json:"workerCount" yaml:"workerCount"` // The type of predefined worker that is allocated when a job runs. // Experimental. WorkerType WorkerType `field:"optional" json:"workerType" yaml:"workerType"` }
Construction properties for {@link Job}.
Example:
var bucket bucket glue.NewJob(this, jsii.String("PythonShellJob"), &jobProps{ executable: glue.jobExecutable.pythonShell(&pythonShellExecutableProps{ glueVersion: glue.glueVersion_V1_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromBucket(bucket, jsii.String("script.py")), }), description: jsii.String("an example Python Shell job"), })
Experimental.
type JobState ¶
type JobState string
Job states emitted by Glue to CloudWatch Events. See: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/EventTypes.html#glue-event-types for more information.
Experimental.
const ( // State indicating job run succeeded. // Experimental. JobState_SUCCEEDED JobState = "SUCCEEDED" // State indicating job run failed. // Experimental. JobState_FAILED JobState = "FAILED" // State indicating job run timed out. // Experimental. JobState_TIMEOUT JobState = "TIMEOUT" // State indicating job is starting. // Experimental. JobState_STARTING JobState = "STARTING" // State indicating job is running. // Experimental. JobState_RUNNING JobState = "RUNNING" // State indicating job is stopping. // Experimental. JobState_STOPPING JobState = "STOPPING" // State indicating job stopped. // Experimental. JobState_STOPPED JobState = "STOPPED" )
type JobType ¶
type JobType interface { // The name of this JobType, as expected by Job resource. // Experimental. 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')`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" jobType := awscdk.Aws_glue.jobType_ETL()
Experimental.
func JobType_ETL ¶
func JobType_ETL() JobType
func JobType_PYTHON_SHELL ¶
func JobType_PYTHON_SHELL() JobType
func JobType_STREAMING ¶
func JobType_STREAMING() JobType
type MetricType ¶
type MetricType string
The Glue CloudWatch metric type. See: https://docs.aws.amazon.com/glue/latest/dg/monitoring-awsglue-with-cloudwatch-metrics.html
Experimental.
const ( // A value at a point in time. // Experimental. MetricType_GAUGE MetricType = "GAUGE" // An aggregate number. // Experimental. MetricType_COUNT MetricType = "COUNT" )
type OutputFormat ¶
type OutputFormat interface { // Experimental. ClassName() *string }
Absolute class name of the Hadoop `OutputFormat` to use when writing table files.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" outputFormat := awscdk.Aws_glue.NewOutputFormat(jsii.String("className"))
Experimental.
func OutputFormat_HIVE_IGNORE_KEY_TEXT ¶
func OutputFormat_HIVE_IGNORE_KEY_TEXT() OutputFormat
func OutputFormat_PARQUET ¶
func OutputFormat_PARQUET() OutputFormat
type PartitionIndex ¶
type PartitionIndex struct { // The partition key names that comprise the partition index. // // The names must correspond to a name in the // table's partition keys. // Experimental. KeyNames *[]*string `field:"required" json:"keyNames" yaml:"keyNames"` // The name of the partition index. // Experimental. IndexName *string `field:"optional" json:"indexName" yaml:"indexName"` }
Properties of a Partition Index.
Example:
var myTable table myTable.addPartitionIndex(&partitionIndex{ indexName: jsii.String("my-index"), keyNames: []*string{ jsii.String("year"), }, })
Experimental.
type PythonShellExecutableProps ¶
type PythonShellExecutableProps struct { // Glue version. // See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html // // Experimental. GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"` // The Python version to use. // Experimental. PythonVersion PythonVersion `field:"required" json:"pythonVersion" yaml:"pythonVersion"` // The script that executes a job. // Experimental. 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 // // Experimental. 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 // // Experimental. ExtraPythonFiles *[]Code `field:"optional" json:"extraPythonFiles" yaml:"extraPythonFiles"` }
Props for creating a Python shell job executable.
Example:
var bucket bucket glue.NewJob(this, jsii.String("PythonShellJob"), &jobProps{ executable: glue.jobExecutable.pythonShell(&pythonShellExecutableProps{ glueVersion: glue.glueVersion_V1_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromBucket(bucket, jsii.String("script.py")), }), description: jsii.String("an example Python Shell job"), })
Experimental.
type PythonSparkJobExecutableProps ¶
type PythonSparkJobExecutableProps struct { // Glue version. // See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html // // Experimental. GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"` // The Python version to use. // Experimental. PythonVersion PythonVersion `field:"required" json:"pythonVersion" yaml:"pythonVersion"` // The script that executes a job. // Experimental. 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 // // Experimental. 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 // // Experimental. 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 // // Experimental. 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 // // Experimental. ExtraPythonFiles *[]Code `field:"optional" json:"extraPythonFiles" yaml:"extraPythonFiles"` }
Props for creating a Python Spark (ETL or Streaming) job executable.
Example:
glue.NewJob(this, jsii.String("PythonSparkStreamingJob"), &jobProps{ executable: glue.jobExecutable.pythonStreaming(&pythonSparkJobExecutableProps{ glueVersion: glue.glueVersion_V2_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromAsset(path.join(__dirname, jsii.String("job-script/hello_world.py"))), }), description: jsii.String("an example Python Streaming job"), })
Experimental.
type PythonVersion ¶
type PythonVersion string
Python version.
Example:
glue.NewJob(this, jsii.String("PythonSparkStreamingJob"), &jobProps{ executable: glue.jobExecutable.pythonStreaming(&pythonSparkJobExecutableProps{ glueVersion: glue.glueVersion_V2_0(), pythonVersion: glue.pythonVersion_THREE, script: glue.code.fromAsset(path.join(__dirname, jsii.String("job-script/hello_world.py"))), }), description: jsii.String("an example Python Streaming job"), })
Experimental.
const ( // Python 2 (the exact version depends on GlueVersion and JobCommand used). // Experimental. PythonVersion_TWO PythonVersion = "TWO" // Python 3 (the exact version depends on GlueVersion and JobCommand used). // Experimental. PythonVersion_THREE PythonVersion = "THREE" )
type S3Code ¶
type S3Code interface { Code // Called when the Job is initialized to allow this object to bind. // Experimental. Bind(_scope constructs.Construct, grantable awsiam.IGrantable) *CodeConfig }
Glue job Code from an S3 bucket.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var bucket bucket s3Code := awscdk.Aws_glue.NewS3Code(bucket, jsii.String("key"))
Experimental.
func AssetCode_FromBucket ¶
Job code as an S3 object. Experimental.
func Code_FromBucket ¶
Job code as an S3 object. Experimental.
type S3Encryption ¶
type S3Encryption struct { // Encryption mode. // Experimental. Mode S3EncryptionMode `field:"required" json:"mode" yaml:"mode"` // The KMS key to be used to encrypt the data. // Experimental. KmsKey awskms.IKey `field:"optional" json:"kmsKey" yaml:"kmsKey"` }
S3 encryption configuration.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
type S3EncryptionMode ¶
type S3EncryptionMode string
Encryption mode for S3.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
const ( // Server side encryption (SSE) with an Amazon S3-managed key. // See: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html // // Experimental. S3EncryptionMode_S3_MANAGED S3EncryptionMode = "S3_MANAGED" // 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 // // Experimental. S3EncryptionMode_KMS S3EncryptionMode = "KMS" )
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 // // Experimental. ClassName *string `field:"required" json:"className" yaml:"className"` // Glue version. // See: https://docs.aws.amazon.com/glue/latest/dg/release-notes.html // // Experimental. GlueVersion GlueVersion `field:"required" json:"glueVersion" yaml:"glueVersion"` // The script that executes a job. // Experimental. 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 // // Experimental. 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 // // Experimental. 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 // // Experimental. ExtraJarsFirst *bool `field:"optional" json:"extraJarsFirst" yaml:"extraJarsFirst"` }
Props for creating a Scala Spark (ETL or Streaming) job executable.
Example:
var bucket bucket glue.NewJob(this, jsii.String("ScalaSparkEtlJob"), &jobProps{ executable: glue.jobExecutable.scalaEtl(&scalaJobExecutableProps{ glueVersion: glue.glueVersion_V2_0(), script: glue.code.fromBucket(bucket, jsii.String("src/com/example/HelloWorld.scala")), className: jsii.String("com.example.HelloWorld"), extraJars: []*code{ glue.*code.fromBucket(bucket, jsii.String("jars/HelloWorld.jar")), }, }), description: jsii.String("an example Scala ETL job"), })
Experimental.
type Schema ¶
type Schema interface { }
Example:
var myDatabase database glue.NewTable(this, jsii.String("MyTable"), &tableProps{ database: myDatabase, tableName: jsii.String("my_table"), columns: []column{ &column{ name: jsii.String("col1"), type: glue.schema_STRING(), }, }, partitionKeys: []*column{ &column{ name: jsii.String("year"), type: glue.*schema_SMALL_INT(), }, &column{ name: jsii.String("month"), type: glue.*schema_SMALL_INT(), }, }, dataFormat: glue.dataFormat_JSON(), })
See: https://docs.aws.amazon.com/athena/latest/ug/data-types.html
Experimental.
type SecurityConfiguration ¶
type SecurityConfiguration interface { awscdk.Resource ISecurityConfiguration // The KMS key used in CloudWatch encryption if it requires a kms key. // Experimental. CloudWatchEncryptionKey() awskms.IKey // 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. // Experimental. Env() *awscdk.ResourceEnvironment // The KMS key used in job bookmarks encryption if it requires a kms key. // Experimental. JobBookmarksEncryptionKey() awskms.IKey // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // 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. // Experimental. PhysicalName() *string // The KMS key used in S3 encryption if it requires a kms key. // Experimental. S3EncryptionKey() awskms.IKey // The name of the security configuration. // Experimental. SecurityConfigurationName() *string // The stack in which this resource is defined. // Experimental. 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy) // Experimental. 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`. // Experimental. 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. // Experimental. GetResourceNameAttribute(nameAttr *string) *string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string }
A security configuration is a set of security properties that can be used by AWS Glue to encrypt data at rest.
The following scenarios show some of the ways that you can use a security configuration. - Attach a security configuration to an AWS Glue crawler to write encrypted Amazon CloudWatch Logs. - Attach a security configuration to an extract, transform, and load (ETL) job to write encrypted Amazon Simple Storage Service (Amazon S3) targets and encrypted CloudWatch Logs. - Attach a security configuration to an ETL job to write its jobs bookmarks as encrypted Amazon S3 data. - Attach a security configuration to a development endpoint to write encrypted Amazon S3 targets.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
func NewSecurityConfiguration ¶
func NewSecurityConfiguration(scope constructs.Construct, id *string, props *SecurityConfigurationProps) SecurityConfiguration
Experimental.
type SecurityConfigurationProps ¶
type SecurityConfigurationProps struct { // The name of the security configuration. // Experimental. SecurityConfigurationName *string `field:"required" json:"securityConfigurationName" yaml:"securityConfigurationName"` // The encryption configuration for Amazon CloudWatch Logs. // Experimental. CloudWatchEncryption *CloudWatchEncryption `field:"optional" json:"cloudWatchEncryption" yaml:"cloudWatchEncryption"` // The encryption configuration for Glue Job Bookmarks. // Experimental. JobBookmarksEncryption *JobBookmarksEncryption `field:"optional" json:"jobBookmarksEncryption" yaml:"jobBookmarksEncryption"` // The encryption configuration for Amazon Simple Storage Service (Amazon S3) data. // Experimental. S3Encryption *S3Encryption `field:"optional" json:"s3Encryption" yaml:"s3Encryption"` }
Constructions properties of {@link SecurityConfiguration}.
Example:
glue.NewSecurityConfiguration(this, jsii.String("MySecurityConfiguration"), &securityConfigurationProps{ securityConfigurationName: jsii.String("name"), cloudWatchEncryption: &cloudWatchEncryption{ mode: glue.cloudWatchEncryptionMode_KMS, }, jobBookmarksEncryption: &jobBookmarksEncryption{ mode: glue.jobBookmarksEncryptionMode_CLIENT_SIDE_KMS, }, s3Encryption: &s3Encryption{ mode: glue.s3EncryptionMode_KMS, }, })
Experimental.
type SerializationLibrary ¶
type SerializationLibrary interface { // Experimental. ClassName() *string }
Serialization library to use when serializing/deserializing (SerDe) table records.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" serializationLibrary := awscdk.Aws_glue.serializationLibrary_AVRO()
See: https://cwiki.apache.org/confluence/display/Hive/SerDe
Experimental.
func NewSerializationLibrary ¶
func NewSerializationLibrary(className *string) SerializationLibrary
Experimental.
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 SparkUILoggingLocation ¶
type SparkUILoggingLocation struct { // The bucket where the Glue job stores the logs. // Experimental. Bucket awss3.IBucket `field:"required" json:"bucket" yaml:"bucket"` // The path inside the bucket (objects prefix) where the Glue job stores the logs. // Experimental. Prefix *string `field:"optional" json:"prefix" yaml:"prefix"` }
The Spark UI logging location.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var bucket bucket sparkUILoggingLocation := &sparkUILoggingLocation{ bucket: bucket, // the properties below are optional prefix: jsii.String("prefix"), }
See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
Experimental.
type SparkUIProps ¶
type SparkUIProps struct { // Enable Spark UI. // Experimental. Enabled *bool `field:"required" json:"enabled" yaml:"enabled"` // The bucket where the Glue job stores the logs. // Experimental. Bucket awss3.IBucket `field:"optional" json:"bucket" yaml:"bucket"` // The path inside the bucket (objects prefix) where the Glue job stores the logs. // Experimental. Prefix *string `field:"optional" json:"prefix" yaml:"prefix"` }
Properties for enabling Spark UI monitoring feature for Spark-based Glue jobs.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" import "github.com/aws/aws-cdk-go/awscdk" var bucket bucket sparkUIProps := &sparkUIProps{ enabled: jsii.Boolean(false), // the properties below are optional bucket: bucket, prefix: jsii.String("prefix"), }
See: https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html
Experimental.
type Table ¶
type Table interface { awscdk.Resource ITable // S3 bucket in which the table's data resides. // Experimental. Bucket() awss3.IBucket // This table's columns. // Experimental. Columns() *[]*Column // Indicates whether the table's data is compressed or not. // Experimental. Compressed() *bool // Database this table belongs to. // Experimental. Database() IDatabase // Format of this table's data files. // Experimental. DataFormat() DataFormat // The type of encryption enabled for the table. // Experimental. Encryption() TableEncryption // The KMS key used to secure the data if `encryption` is set to `CSE-KMS` or `SSE-KMS`. // // Otherwise, `undefined`. // Experimental. EncryptionKey() awskms.IKey // 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. // Experimental. Env() *awscdk.ResourceEnvironment // The construct tree node associated with this construct. // Experimental. Node() awscdk.ConstructNode // This table's partition indexes. // Experimental. PartitionIndexes() *[]*PartitionIndex // This table's partition keys if the table is partitioned. // Experimental. PartitionKeys() *[]*Column // 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. // Experimental. PhysicalName() *string // S3 Key Prefix under which this table's files are stored in S3. // Experimental. S3Prefix() *string // The stack in which this resource is defined. // Experimental. Stack() awscdk.Stack // ARN of this table. // Experimental. TableArn() *string // Name of this table. // Experimental. TableName() *string // Add a partition index to the table. // // You can have a maximum of 3 partition // indexes to a table. Partition index keys must be a subset of the table's // partition keys. // See: https://docs.aws.amazon.com/glue/latest/dg/partition-indexes.html // // Experimental. AddPartitionIndex(index *PartitionIndex) // 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`). // Experimental. ApplyRemovalPolicy(policy awscdk.RemovalPolicy) // Experimental. 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`. // Experimental. 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. // Experimental. GetResourceNameAttribute(nameAttr *string) *string // Grant the given identity custom permissions. // Experimental. Grant(grantee awsiam.IGrantable, actions *[]*string) awsiam.Grant // Grant read permissions to the table and the underlying data stored in S3 to an IAM principal. // Experimental. GrantRead(grantee awsiam.IGrantable) awsiam.Grant // Grant read and write permissions to the table and the underlying data stored in S3 to an IAM principal. // Experimental. GrantReadWrite(grantee awsiam.IGrantable) awsiam.Grant // Grant the given identity custom permissions to ALL underlying resources of the table. // // Permissions will be granted to the catalog, the database, and the table. // Experimental. GrantToUnderlyingResources(grantee awsiam.IGrantable, actions *[]*string) awsiam.Grant // Grant write permissions to the table and the underlying data stored in S3 to an IAM principal. // Experimental. GrantWrite(grantee awsiam.IGrantable) awsiam.Grant // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. OnPrepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. OnSynthesize(session constructs.ISynthesisSession) // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. OnValidate() *[]*string // Perform final modifications before synthesis. // // This method can be implemented by derived constructs in order to perform // final changes before synthesis. prepare() will be called after child // constructs have been prepared. // // This is an advanced framework feature. Only use this if you // understand the implications. // Experimental. Prepare() // Allows this construct to emit artifacts into the cloud assembly during synthesis. // // This method is usually implemented by framework-level constructs such as `Stack` and `Asset` // as they participate in synthesizing the cloud assembly. // Experimental. Synthesize(session awscdk.ISynthesisSession) // Returns a string representation of this construct. // Experimental. ToString() *string // Validate the current construct. // // This method can be implemented by derived constructs in order to perform // validation logic. It is called on all constructs before synthesis. // // Returns: An array of validation error messages, or an empty array if the construct is valid. // Experimental. Validate() *[]*string }
A Glue table.
Example:
var myDatabase database glue.NewTable(this, jsii.String("MyTable"), &tableProps{ database: myDatabase, tableName: jsii.String("my_table"), columns: []column{ &column{ name: jsii.String("col1"), type: glue.schema_STRING(), }, }, partitionKeys: []*column{ &column{ name: jsii.String("year"), type: glue.*schema_SMALL_INT(), }, &column{ name: jsii.String("month"), type: glue.*schema_SMALL_INT(), }, }, dataFormat: glue.dataFormat_JSON(), })
Experimental.
func NewTable ¶
func NewTable(scope constructs.Construct, id *string, props *TableProps) Table
Experimental.
type TableAttributes ¶
type TableAttributes struct { // Experimental. TableArn *string `field:"required" json:"tableArn" yaml:"tableArn"` // Experimental. TableName *string `field:"required" json:"tableName" yaml:"tableName"` }
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" tableAttributes := &tableAttributes{ tableArn: jsii.String("tableArn"), tableName: jsii.String("tableName"), }
Experimental.
type TableEncryption ¶
type TableEncryption string
Encryption options for a Table.
Example:
var myDatabase database glue.NewTable(this, jsii.String("MyTable"), &tableProps{ encryption: glue.tableEncryption_S3_MANAGED, // ... database: myDatabase, tableName: jsii.String("my_table"), columns: []column{ &column{ name: jsii.String("col1"), type: glue.schema_STRING(), }, }, dataFormat: glue.dataFormat_JSON(), })
See: https://docs.aws.amazon.com/athena/latest/ug/encryption.html
Experimental.
const ( // Experimental. TableEncryption_UNENCRYPTED TableEncryption = "UNENCRYPTED" // Server side encryption (SSE) with an Amazon S3-managed key. // See: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html // // Experimental. TableEncryption_S3_MANAGED TableEncryption = "S3_MANAGED" // 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 // // Experimental. TableEncryption_KMS TableEncryption = "KMS" // Server-side encryption (SSE) with an AWS KMS key managed by the KMS service. // Experimental. TableEncryption_KMS_MANAGED TableEncryption = "KMS_MANAGED" // 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 // // Experimental. TableEncryption_CLIENT_SIDE_KMS TableEncryption = "CLIENT_SIDE_KMS" )
type TableProps ¶
type TableProps struct { // Columns of the table. // Experimental. Columns *[]*Column `field:"required" json:"columns" yaml:"columns"` // Database in which to store the table. // Experimental. Database IDatabase `field:"required" json:"database" yaml:"database"` // Storage type of the table's data. // Experimental. DataFormat DataFormat `field:"required" json:"dataFormat" yaml:"dataFormat"` // Name of the table. // Experimental. TableName *string `field:"required" json:"tableName" yaml:"tableName"` // S3 bucket in which to store data. // Experimental. Bucket awss3.IBucket `field:"optional" json:"bucket" yaml:"bucket"` // Indicates whether the table's data is compressed or not. // Experimental. Compressed *bool `field:"optional" json:"compressed" yaml:"compressed"` // Description of the table. // Experimental. Description *string `field:"optional" json:"description" yaml:"description"` // The kind of encryption to secure the data with. // // You can only provide this option if you are not explicitly passing in a bucket. // // If you choose `SSE-KMS`, you *can* provide an un-managed KMS key with `encryptionKey`. // If you choose `CSE-KMS`, you *must* provide an un-managed KMS key with `encryptionKey`. // Experimental. Encryption TableEncryption `field:"optional" json:"encryption" yaml:"encryption"` // External KMS key to use for bucket encryption. // // The `encryption` property must be `SSE-KMS` or `CSE-KMS`. // Experimental. EncryptionKey awskms.IKey `field:"optional" json:"encryptionKey" yaml:"encryptionKey"` // Partition indexes on the table. // // A maximum of 3 indexes // are allowed on a table. Keys in the index must be part // of the table's partition keys. // Experimental. PartitionIndexes *[]*PartitionIndex `field:"optional" json:"partitionIndexes" yaml:"partitionIndexes"` // Partition columns of the table. // Experimental. PartitionKeys *[]*Column `field:"optional" json:"partitionKeys" yaml:"partitionKeys"` // S3 prefix under which table objects are stored. // Experimental. S3Prefix *string `field:"optional" json:"s3Prefix" yaml:"s3Prefix"` // Indicates whether the table data is stored in subdirectories. // Experimental. StoredAsSubDirectories *bool `field:"optional" json:"storedAsSubDirectories" yaml:"storedAsSubDirectories"` }
Example:
var myDatabase database glue.NewTable(this, jsii.String("MyTable"), &tableProps{ database: myDatabase, tableName: jsii.String("my_table"), columns: []column{ &column{ name: jsii.String("col1"), type: glue.schema_STRING(), }, }, partitionKeys: []*column{ &column{ name: jsii.String("year"), type: glue.*schema_SMALL_INT(), }, &column{ name: jsii.String("month"), type: glue.*schema_SMALL_INT(), }, }, dataFormat: glue.dataFormat_JSON(), })
Experimental.
type Type ¶
type Type struct { // Glue InputString for this type. // Experimental. InputString *string `field:"required" json:"inputString" yaml:"inputString"` // Indicates whether this type is a primitive data type. // Experimental. IsPrimitive *bool `field:"required" json:"isPrimitive" yaml:"isPrimitive"` }
Represents a type of a column in a table schema.
Example:
var myDatabase database glue.NewTable(this, jsii.String("MyTable"), &tableProps{ database: myDatabase, tableName: jsii.String("my_table"), columns: []column{ &column{ name: jsii.String("col1"), type: glue.schema_STRING(), }, }, partitionKeys: []*column{ &column{ name: jsii.String("year"), type: glue.*schema_SMALL_INT(), }, &column{ name: jsii.String("month"), type: glue.*schema_SMALL_INT(), }, }, dataFormat: glue.dataFormat_JSON(), })
Experimental.
func Schema_Array ¶
Creates an array of some other type. Experimental.
func Schema_BIG_INT ¶
func Schema_BIG_INT() *Type
func Schema_BINARY ¶
func Schema_BINARY() *Type
func Schema_BOOLEAN ¶
func Schema_BOOLEAN() *Type
func Schema_Char ¶
Fixed length character data, with a specified length between 1 and 255. Experimental.
func Schema_DATE ¶
func Schema_DATE() *Type
func Schema_DOUBLE ¶
func Schema_DOUBLE() *Type
func Schema_FLOAT ¶
func Schema_FLOAT() *Type
func Schema_INTEGER ¶
func Schema_INTEGER() *Type
func Schema_Map ¶
Creates a map of some primitive key type to some value type. Experimental.
func Schema_SMALL_INT ¶
func Schema_SMALL_INT() *Type
func Schema_STRING ¶
func Schema_STRING() *Type
func Schema_Struct ¶
Creates a nested structure containing individually named and typed columns. Experimental.
func Schema_TIMESTAMP ¶
func Schema_TIMESTAMP() *Type
func Schema_TINY_INT ¶
func Schema_TINY_INT() *Type
func Schema_Varchar ¶
Variable length character data, with a specified length between 1 and 65535. Experimental.
type WorkerType ¶
type WorkerType interface { // The name of this WorkerType, as expected by Job resource. // Experimental. 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')`.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import "github.com/aws/aws-cdk-go/awscdk" workerType := awscdk.Aws_glue.workerType_G_1X()
Experimental.
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. Experimental.
func WorkerType_STANDARD ¶
func WorkerType_STANDARD() WorkerType