---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.16.0
  name: jobs.glue.aws.crossplane.io
spec:
  group: glue.aws.crossplane.io
  names:
    categories:
    - crossplane
    - managed
    - aws
    kind: Job
    listKind: JobList
    plural: jobs
    singular: job
  scope: Cluster
  versions:
  - additionalPrinterColumns:
    - jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: READY
      type: string
    - jsonPath: .status.conditions[?(@.type=='Synced')].status
      name: SYNCED
      type: string
    - jsonPath: .metadata.annotations.crossplane\.io/external-name
      name: EXTERNAL-NAME
      type: string
    - jsonPath: .metadata.creationTimestamp
      name: AGE
      type: date
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Job is the Schema for the Jobs API
        properties:
          apiVersion:
            description: |-
              APIVersion defines the versioned schema of this representation of an object.
              Servers should convert recognized schemas to the latest internal value, and
              may reject unrecognized values.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
            type: string
          kind:
            description: |-
              Kind is a string value representing the REST resource this object represents.
              Servers may infer this from the endpoint the client submits requests to.
              Cannot be updated.
              In CamelCase.
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
            type: string
          metadata:
            type: object
          spec:
            description: JobSpec defines the desired state of Job
            properties:
              deletionPolicy:
                default: Delete
                description: |-
                  DeletionPolicy specifies what will happen to the underlying external
                  when this managed resource is deleted - either "Delete" or "Orphan" the
                  external resource.
                  This field is planned to be deprecated in favor of the ManagementPolicies
                  field in a future release. Currently, both could be set independently and
                  non-default values would be honored if the feature flag is enabled.
                  See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223
                enum:
                - Orphan
                - Delete
                type: string
              forProvider:
                description: JobParameters defines the desired state of Job
                properties:
                  allocatedCapacity:
                    description: |-
                      This parameter is deprecated. Use MaxCapacity instead.

                      The number of Glue data processing units (DPUs) to allocate to this Job.
                      You can allocate a minimum of 2 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 Glue pricing page (https://aws.amazon.com/glue/pricing/).
                    format: int64
                    type: integer
                  codeGenConfigurationNodes:
                    additionalProperties:
                      properties:
                        aggregate:
                          description: |-
                            Specifies a transform that groups rows by chosen fields and computes the
                            aggregated value by specified function.
                          properties:
                            aggs:
                              items:
                                properties:
                                  aggFunc:
                                    type: string
                                  column:
                                    items:
                                      type: string
                                    type: array
                                type: object
                              type: array
                            groups:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        amazonRedshiftSource:
                          description: Specifies an Amazon Redshift source.
                          properties:
                            data:
                              description: Specifies an Amazon Redshift node.
                              properties:
                                accessType:
                                  type: string
                                action:
                                  type: string
                                advancedOptions:
                                  items:
                                    properties:
                                      key:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                catalogDatabase:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                catalogRedshiftSchema:
                                  type: string
                                catalogRedshiftTable:
                                  type: string
                                catalogTable:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                connection:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                crawlerConnection:
                                  type: string
                                iamRole:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                mergeAction:
                                  type: string
                                mergeClause:
                                  type: string
                                mergeWhenMatched:
                                  type: string
                                mergeWhenNotMatched:
                                  type: string
                                postAction:
                                  type: string
                                preAction:
                                  type: string
                                sampleQuery:
                                  type: string
                                schema:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                selectedColumns:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                sourceType:
                                  type: string
                                stagingTable:
                                  type: string
                                table:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                tablePrefix:
                                  type: string
                                tableSchema:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                tempDir:
                                  type: string
                                upsert:
                                  type: boolean
                              type: object
                            name:
                              type: string
                          type: object
                        amazonRedshiftTarget:
                          description: Specifies an Amazon Redshift target.
                          properties:
                            data:
                              description: Specifies an Amazon Redshift node.
                              properties:
                                accessType:
                                  type: string
                                action:
                                  type: string
                                advancedOptions:
                                  items:
                                    properties:
                                      key:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                catalogDatabase:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                catalogRedshiftSchema:
                                  type: string
                                catalogRedshiftTable:
                                  type: string
                                catalogTable:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                connection:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                crawlerConnection:
                                  type: string
                                iamRole:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                mergeAction:
                                  type: string
                                mergeClause:
                                  type: string
                                mergeWhenMatched:
                                  type: string
                                mergeWhenNotMatched:
                                  type: string
                                postAction:
                                  type: string
                                preAction:
                                  type: string
                                sampleQuery:
                                  type: string
                                schema:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                selectedColumns:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                sourceType:
                                  type: string
                                stagingTable:
                                  type: string
                                table:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                tablePrefix:
                                  type: string
                                tableSchema:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                tempDir:
                                  type: string
                                upsert:
                                  type: boolean
                              type: object
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        applyMapping:
                          description: |-
                            Specifies a transform that maps data property keys in the data source to
                            data property keys in the data target. You can rename keys, modify the data
                            types for keys, and choose which keys to drop from the dataset.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            mapping:
                              items:
                                properties:
                                  dropped:
                                    type: boolean
                                  fromPath:
                                    items:
                                      type: string
                                    type: array
                                  fromType:
                                    type: string
                                  toKey:
                                    type: string
                                  toType:
                                    type: string
                                type: object
                              type: array
                            name:
                              type: string
                          type: object
                        athenaConnectorSource:
                          description: Specifies a connector to an Amazon Athena data
                            source.
                          properties:
                            connectionName:
                              type: string
                            connectionTable:
                              type: string
                            connectionType:
                              type: string
                            connectorName:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            schemaName:
                              type: string
                          type: object
                        catalogDeltaSource:
                          description: Specifies a Delta Lake data source that is
                            registered in the Glue Data Catalog.
                          properties:
                            additionalDeltaOptions:
                              additionalProperties:
                                type: string
                              type: object
                            database:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            table:
                              type: string
                          type: object
                        catalogHudiSource:
                          description: Specifies a Hudi data source that is registered
                            in the Glue Data Catalog.
                          properties:
                            additionalHudiOptions:
                              additionalProperties:
                                type: string
                              type: object
                            database:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            table:
                              type: string
                          type: object
                        catalogKafkaSource:
                          description: Specifies an Apache Kafka data store in the
                            Data Catalog.
                          properties:
                            dataPreviewOptions:
                              description: Specifies options related to data preview
                                for viewing a sample of your data.
                              properties:
                                pollingTime:
                                  format: int64
                                  type: integer
                                recordPollingLimit:
                                  format: int64
                                  type: integer
                              type: object
                            database:
                              type: string
                            detectSchema:
                              type: boolean
                            name:
                              type: string
                            streamingOptions:
                              description: Additional options for streaming.
                              properties:
                                addRecordTimestamp:
                                  type: string
                                assign:
                                  type: string
                                bootstrapServers:
                                  type: string
                                classification:
                                  type: string
                                connectionName:
                                  type: string
                                delimiter:
                                  type: string
                                emitConsumerLagMetrics:
                                  type: string
                                endingOffsets:
                                  type: string
                                includeHeaders:
                                  type: boolean
                                maxOffsetsPerTrigger:
                                  format: int64
                                  type: integer
                                minPartitions:
                                  format: int64
                                  type: integer
                                numRetries:
                                  format: int64
                                  type: integer
                                pollTimeoutMs:
                                  format: int64
                                  type: integer
                                retryIntervalMs:
                                  format: int64
                                  type: integer
                                securityProtocol:
                                  type: string
                                startingOffsets:
                                  type: string
                                startingTimestamp:
                                  format: date-time
                                  type: string
                                subscribePattern:
                                  type: string
                                topicName:
                                  type: string
                              type: object
                            table:
                              type: string
                            windowSize:
                              format: int64
                              type: integer
                          type: object
                        catalogKinesisSource:
                          description: Specifies a Kinesis data source in the Glue
                            Data Catalog.
                          properties:
                            dataPreviewOptions:
                              description: Specifies options related to data preview
                                for viewing a sample of your data.
                              properties:
                                pollingTime:
                                  format: int64
                                  type: integer
                                recordPollingLimit:
                                  format: int64
                                  type: integer
                              type: object
                            database:
                              type: string
                            detectSchema:
                              type: boolean
                            name:
                              type: string
                            streamingOptions:
                              description: Additional options for the Amazon Kinesis
                                streaming data source.
                              properties:
                                addIdleTimeBetweenReads:
                                  type: boolean
                                addRecordTimestamp:
                                  type: string
                                avoidEmptyBatches:
                                  type: boolean
                                classification:
                                  type: string
                                delimiter:
                                  type: string
                                describeShardInterval:
                                  format: int64
                                  type: integer
                                emitConsumerLagMetrics:
                                  type: string
                                endpointURL:
                                  type: string
                                idleTimeBetweenReadsInMs:
                                  format: int64
                                  type: integer
                                maxFetchRecordsPerShard:
                                  format: int64
                                  type: integer
                                maxFetchTimeInMs:
                                  format: int64
                                  type: integer
                                maxRecordPerRead:
                                  format: int64
                                  type: integer
                                maxRetryIntervalMs:
                                  format: int64
                                  type: integer
                                numRetries:
                                  format: int64
                                  type: integer
                                retryIntervalMs:
                                  format: int64
                                  type: integer
                                roleARN:
                                  type: string
                                roleSessionName:
                                  type: string
                                startingPosition:
                                  type: string
                                startingTimestamp:
                                  format: date-time
                                  type: string
                                streamARN:
                                  type: string
                                streamName:
                                  type: string
                              type: object
                            table:
                              type: string
                            windowSize:
                              format: int64
                              type: integer
                          type: object
                        catalogSource:
                          description: Specifies a data store in the Glue Data Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        catalogTarget:
                          description: Specifies a target that uses a Glue Data Catalog
                            table.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        connectorDataSource:
                          description: Specifies a source generated with standard
                            connection options.
                          properties:
                            connectionType:
                              type: string
                            data:
                              additionalProperties:
                                type: string
                              type: object
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                          type: object
                        connectorDataTarget:
                          description: Specifies a target generated with standard
                            connection options.
                          properties:
                            connectionType:
                              type: string
                            data:
                              additionalProperties:
                                type: string
                              type: object
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        customCode:
                          description: |-
                            Specifies a transform that uses custom code you provide to perform the data
                            transformation. The output is a collection of DynamicFrames.
                          properties:
                            className:
                              type: string
                            code:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                          type: object
                        directJDBCSource:
                          description: Specifies the direct JDBC source connection.
                          properties:
                            connectionName:
                              type: string
                            connectionType:
                              type: string
                            database:
                              type: string
                            name:
                              type: string
                            redshiftTmpDir:
                              type: string
                            table:
                              type: string
                          type: object
                        directKafkaSource:
                          description: Specifies an Apache Kafka data store.
                          properties:
                            dataPreviewOptions:
                              description: Specifies options related to data preview
                                for viewing a sample of your data.
                              properties:
                                pollingTime:
                                  format: int64
                                  type: integer
                                recordPollingLimit:
                                  format: int64
                                  type: integer
                              type: object
                            detectSchema:
                              type: boolean
                            name:
                              type: string
                            streamingOptions:
                              description: Additional options for streaming.
                              properties:
                                addRecordTimestamp:
                                  type: string
                                assign:
                                  type: string
                                bootstrapServers:
                                  type: string
                                classification:
                                  type: string
                                connectionName:
                                  type: string
                                delimiter:
                                  type: string
                                emitConsumerLagMetrics:
                                  type: string
                                endingOffsets:
                                  type: string
                                includeHeaders:
                                  type: boolean
                                maxOffsetsPerTrigger:
                                  format: int64
                                  type: integer
                                minPartitions:
                                  format: int64
                                  type: integer
                                numRetries:
                                  format: int64
                                  type: integer
                                pollTimeoutMs:
                                  format: int64
                                  type: integer
                                retryIntervalMs:
                                  format: int64
                                  type: integer
                                securityProtocol:
                                  type: string
                                startingOffsets:
                                  type: string
                                startingTimestamp:
                                  format: date-time
                                  type: string
                                subscribePattern:
                                  type: string
                                topicName:
                                  type: string
                              type: object
                            windowSize:
                              format: int64
                              type: integer
                          type: object
                        directKinesisSource:
                          description: Specifies a direct Amazon Kinesis data source.
                          properties:
                            dataPreviewOptions:
                              description: Specifies options related to data preview
                                for viewing a sample of your data.
                              properties:
                                pollingTime:
                                  format: int64
                                  type: integer
                                recordPollingLimit:
                                  format: int64
                                  type: integer
                              type: object
                            detectSchema:
                              type: boolean
                            name:
                              type: string
                            streamingOptions:
                              description: Additional options for the Amazon Kinesis
                                streaming data source.
                              properties:
                                addIdleTimeBetweenReads:
                                  type: boolean
                                addRecordTimestamp:
                                  type: string
                                avoidEmptyBatches:
                                  type: boolean
                                classification:
                                  type: string
                                delimiter:
                                  type: string
                                describeShardInterval:
                                  format: int64
                                  type: integer
                                emitConsumerLagMetrics:
                                  type: string
                                endpointURL:
                                  type: string
                                idleTimeBetweenReadsInMs:
                                  format: int64
                                  type: integer
                                maxFetchRecordsPerShard:
                                  format: int64
                                  type: integer
                                maxFetchTimeInMs:
                                  format: int64
                                  type: integer
                                maxRecordPerRead:
                                  format: int64
                                  type: integer
                                maxRetryIntervalMs:
                                  format: int64
                                  type: integer
                                numRetries:
                                  format: int64
                                  type: integer
                                retryIntervalMs:
                                  format: int64
                                  type: integer
                                roleARN:
                                  type: string
                                roleSessionName:
                                  type: string
                                startingPosition:
                                  type: string
                                startingTimestamp:
                                  format: date-time
                                  type: string
                                streamARN:
                                  type: string
                                streamName:
                                  type: string
                              type: object
                            windowSize:
                              format: int64
                              type: integer
                          type: object
                        dropDuplicates:
                          description: Specifies a transform that removes rows of
                            repeating data from a data set.
                          properties:
                            columns:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        dropFields:
                          description: |-
                            Specifies a transform that chooses the data property keys that you want to
                            drop.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            paths:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                          type: object
                        dropNullFields:
                          description: |-
                            Specifies a transform that removes columns from the dataset if all values
                            in the column are 'null'. By default, Glue Studio will recognize null objects,
                            but some values such as empty strings, strings that are "null", -1 integers
                            or other placeholders such as zeros, are not automatically recognized as
                            nulls.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            nullCheckBoxList:
                              description: Represents whether certain values are recognized
                                as null values for removal.
                              properties:
                                isEmpty:
                                  type: boolean
                                isNegOne:
                                  type: boolean
                                isNullString:
                                  type: boolean
                              type: object
                            nullTextList:
                              items:
                                properties:
                                  datatype:
                                    description: A structure representing the datatype
                                      of the value.
                                    properties:
                                      id:
                                        type: string
                                      label:
                                        type: string
                                    type: object
                                  value:
                                    type: string
                                type: object
                              type: array
                          type: object
                        dynamicTransform:
                          description: Specifies the set of parameters needed to perform
                            the dynamic transform.
                          properties:
                            functionName:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            parameters:
                              items:
                                properties:
                                  isOptional:
                                    type: boolean
                                  listType:
                                    type: string
                                  name:
                                    type: string
                                  type_:
                                    type: string
                                  validationMessage:
                                    type: string
                                  validationRule:
                                    type: string
                                  value:
                                    items:
                                      type: string
                                    type: array
                                type: object
                              type: array
                            path:
                              type: string
                            transformName:
                              type: string
                            version:
                              type: string
                          type: object
                        dynamoDBCatalogSource:
                          description: Specifies a DynamoDB data source in the Glue
                            Data Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        evaluateDataQuality:
                          description: Specifies your data quality evaluation criteria.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            output:
                              type: string
                            publishingOptions:
                              description: Options to configure how your data quality
                                evaluation results are published.
                              properties:
                                cloudWatchMetricsEnabled:
                                  type: boolean
                                evaluationContext:
                                  type: string
                                resultsPublishingEnabled:
                                  type: boolean
                                resultsS3Prefix:
                                  type: string
                              type: object
                            ruleset:
                              type: string
                            stopJobOnFailureOptions:
                              description: |-
                                Options to configure how your job will stop if your data quality evaluation
                                fails.
                              properties:
                                stopJobOnFailureTiming:
                                  type: string
                              type: object
                          type: object
                        evaluateDataQualityMultiFrame:
                          description: Specifies your data quality evaluation criteria.
                          properties:
                            additionalDataSources:
                              additionalProperties:
                                type: string
                              type: object
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            publishingOptions:
                              description: Options to configure how your data quality
                                evaluation results are published.
                              properties:
                                cloudWatchMetricsEnabled:
                                  type: boolean
                                evaluationContext:
                                  type: string
                                resultsPublishingEnabled:
                                  type: boolean
                                resultsS3Prefix:
                                  type: string
                              type: object
                            ruleset:
                              type: string
                            stopJobOnFailureOptions:
                              description: |-
                                Options to configure how your job will stop if your data quality evaluation
                                fails.
                              properties:
                                stopJobOnFailureTiming:
                                  type: string
                              type: object
                          type: object
                        fillMissingValues:
                          description: |-
                            Specifies a transform that locates records in the dataset that have missing
                            values and adds a new field with a value determined by imputation. The input
                            data set is used to train the machine learning model that determines what
                            the missing value should be.
                          properties:
                            filledPath:
                              type: string
                            imputedPath:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        filter:
                          description: Specifies a transform that splits a dataset
                            into two, based on a filter condition.
                          properties:
                            filters:
                              items:
                                properties:
                                  negated:
                                    type: boolean
                                  operation:
                                    type: string
                                  values:
                                    items:
                                      properties:
                                        type_:
                                          type: string
                                        value:
                                          items:
                                            type: string
                                          type: array
                                      type: object
                                    type: array
                                type: object
                              type: array
                            inputs:
                              items:
                                type: string
                              type: array
                            logicalOperator:
                              type: string
                            name:
                              type: string
                          type: object
                        governedCatalogSource:
                          description: Specifies the data store in the governed Glue
                            Data Catalog.
                          properties:
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                              type: object
                            database:
                              type: string
                            name:
                              type: string
                            partitionPredicate:
                              type: string
                            table:
                              type: string
                          type: object
                        governedCatalogTarget:
                          description: Specifies a data target that writes to Amazon
                            S3 using the Glue Data Catalog.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                enableUpdateCatalog:
                                  type: boolean
                                updateBehavior:
                                  type: string
                              type: object
                            table:
                              type: string
                          type: object
                        jDBCConnectorSource:
                          description: Specifies a connector to a JDBC data source.
                          properties:
                            additionalOptions:
                              description: Additional connection options for the connector.
                              properties:
                                dataTypeMapping:
                                  additionalProperties:
                                    type: string
                                  type: object
                                filterPredicate:
                                  type: string
                                jobBookmarkKeys:
                                  items:
                                    type: string
                                  type: array
                                jobBookmarkKeysSortOrder:
                                  type: string
                                lowerBound:
                                  format: int64
                                  type: integer
                                numPartitions:
                                  format: int64
                                  type: integer
                                partitionColumn:
                                  type: string
                                upperBound:
                                  format: int64
                                  type: integer
                              type: object
                            connectionName:
                              type: string
                            connectionTable:
                              type: string
                            connectionType:
                              type: string
                            connectorName:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            query:
                              type: string
                          type: object
                        jDBCConnectorTarget:
                          description: |-
                            Specifies a data target that writes to Amazon S3 in Apache Parquet columnar
                            storage.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            connectionName:
                              type: string
                            connectionTable:
                              type: string
                            connectionType:
                              type: string
                            connectorName:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                          type: object
                        join:
                          description: |-
                            Specifies a transform that joins two datasets into one dataset using a comparison
                            phrase on the specified data property keys. You can use inner, outer, left,
                            right, left semi, and left anti joins.
                          properties:
                            columns:
                              items:
                                properties:
                                  from:
                                    type: string
                                  keys:
                                    items:
                                      items:
                                        type: string
                                      type: array
                                    type: array
                                type: object
                              type: array
                            inputs:
                              items:
                                type: string
                              type: array
                            joinType:
                              type: string
                            name:
                              type: string
                          type: object
                        merge:
                          description: |-
                            Specifies a transform that merges a DynamicFrame with a staging DynamicFrame
                            based on the specified primary keys to identify records. Duplicate records
                            (records with the same primary keys) are not de-duplicated.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            primaryKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            source:
                              type: string
                          type: object
                        microsoftSQLServerCatalogSource:
                          description: Specifies a Microsoft SQL server data source
                            in the Glue Data Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        microsoftSQLServerCatalogTarget:
                          description: Specifies a target that uses Microsoft SQL.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        mySQLCatalogSource:
                          description: Specifies a MySQL data source in the Glue Data
                            Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        mySQLCatalogTarget:
                          description: Specifies a target that uses MySQL.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        oracleSQLCatalogSource:
                          description: Specifies an Oracle data source in the Glue
                            Data Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        oracleSQLCatalogTarget:
                          description: Specifies a target that uses Oracle SQL.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        pIIDetection:
                          description: Specifies a transform that identifies, removes
                            or masks PII data.
                          properties:
                            entityTypesToDetect:
                              items:
                                type: string
                              type: array
                            inputs:
                              items:
                                type: string
                              type: array
                            maskValue:
                              type: string
                            name:
                              type: string
                            outputColumnName:
                              type: string
                            piiType:
                              type: string
                            sampleFraction:
                              type: number
                            thresholdFraction:
                              type: number
                          type: object
                        postgreSQLCatalogSource:
                          description: Specifies a PostgresSQL data source in the
                            Glue Data Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        postgreSQLCatalogTarget:
                          description: Specifies a target that uses Postgres SQL.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        recipe:
                          description: A Glue Studio node that uses a Glue DataBrew
                            recipe in Glue jobs.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            recipeReference:
                              description: A reference to a Glue DataBrew recipe.
                              properties:
                                recipeARN:
                                  type: string
                                recipeVersion:
                                  type: string
                              type: object
                          type: object
                        redshiftSource:
                          description: Specifies an Amazon Redshift data store.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            redshiftTmpDir:
                              type: string
                            table:
                              type: string
                            tmpDirIAMRole:
                              type: string
                          type: object
                        redshiftTarget:
                          description: Specifies a target that uses Amazon Redshift.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            redshiftTmpDir:
                              type: string
                            table:
                              type: string
                            tmpDirIAMRole:
                              type: string
                            upsertRedshiftOptions:
                              description: The options to configure an upsert operation
                                when writing to a Redshift target .
                              properties:
                                connectionName:
                                  type: string
                                tableLocation:
                                  type: string
                                upsertKeys:
                                  items:
                                    type: string
                                  type: array
                              type: object
                          type: object
                        relationalCatalogSource:
                          description: Specifies a Relational database data source
                            in the Glue Data Catalog.
                          properties:
                            database:
                              type: string
                            name:
                              type: string
                            table:
                              type: string
                          type: object
                        renameField:
                          description: Specifies a transform that renames a single
                            data property key.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            sourcePath:
                              items:
                                type: string
                              type: array
                            targetPath:
                              items:
                                type: string
                              type: array
                          type: object
                        s3CatalogDeltaSource:
                          description: |-
                            Specifies a Delta Lake data source that is registered in the Glue Data Catalog.
                            The data source must be stored in Amazon S3.
                          properties:
                            additionalDeltaOptions:
                              additionalProperties:
                                type: string
                              type: object
                            database:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            table:
                              type: string
                          type: object
                        s3CatalogHudiSource:
                          description: |-
                            Specifies a Hudi data source that is registered in the Glue Data Catalog.
                            The Hudi data source must be stored in Amazon S3.
                          properties:
                            additionalHudiOptions:
                              additionalProperties:
                                type: string
                              type: object
                            database:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            table:
                              type: string
                          type: object
                        s3CatalogSource:
                          description: Specifies an Amazon S3 data store in the Glue
                            Data Catalog.
                          properties:
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                              type: object
                            database:
                              type: string
                            name:
                              type: string
                            partitionPredicate:
                              type: string
                            table:
                              type: string
                          type: object
                        s3CatalogTarget:
                          description: Specifies a data target that writes to Amazon
                            S3 using the Glue Data Catalog.
                          properties:
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                enableUpdateCatalog:
                                  type: boolean
                                updateBehavior:
                                  type: string
                              type: object
                            table:
                              type: string
                          type: object
                        s3CsvSource:
                          description: Specifies a command-separated value (CSV) data
                            store stored in Amazon S3.
                          properties:
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                                enableSamplePath:
                                  type: boolean
                                samplePath:
                                  type: string
                              type: object
                            compressionType:
                              type: string
                            escaper:
                              type: string
                            exclusions:
                              items:
                                type: string
                              type: array
                            groupFiles:
                              type: string
                            groupSize:
                              type: string
                            maxBand:
                              format: int64
                              type: integer
                            maxFilesInBand:
                              format: int64
                              type: integer
                            multiline:
                              type: boolean
                            name:
                              type: string
                            optimizePerformance:
                              type: boolean
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            paths:
                              items:
                                type: string
                              type: array
                            quoteChar:
                              type: string
                            recurse:
                              type: boolean
                            separator:
                              type: string
                            skipFirst:
                              type: boolean
                            withHeader:
                              type: boolean
                            writeHeader:
                              type: boolean
                          type: object
                        s3DeltaCatalogTarget:
                          description: |-
                            Specifies a target that writes to a Delta Lake data source in the Glue Data
                            Catalog.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                enableUpdateCatalog:
                                  type: boolean
                                updateBehavior:
                                  type: string
                              type: object
                            table:
                              type: string
                          type: object
                        s3DeltaDirectTarget:
                          description: Specifies a target that writes to a Delta Lake
                            data source in Amazon S3.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            compression:
                              type: string
                            format:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            path:
                              type: string
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                database:
                                  type: string
                                enableUpdateCatalog:
                                  type: boolean
                                table:
                                  type: string
                                updateBehavior:
                                  type: string
                              type: object
                          type: object
                        s3DeltaSource:
                          description: Specifies a Delta Lake data source stored in
                            Amazon S3.
                          properties:
                            additionalDeltaOptions:
                              additionalProperties:
                                type: string
                              type: object
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                                enableSamplePath:
                                  type: boolean
                                samplePath:
                                  type: string
                              type: object
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            paths:
                              items:
                                type: string
                              type: array
                          type: object
                        s3DirectTarget:
                          description: Specifies a data target that writes to Amazon
                            S3.
                          properties:
                            compression:
                              type: string
                            format:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            path:
                              type: string
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                database:
                                  type: string
                                enableUpdateCatalog:
                                  type: boolean
                                table:
                                  type: string
                                updateBehavior:
                                  type: string
                              type: object
                          type: object
                        s3GlueParquetTarget:
                          description: |-
                            Specifies a data target that writes to Amazon S3 in Apache Parquet columnar
                            storage.
                          properties:
                            compression:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            path:
                              type: string
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                database:
                                  type: string
                                enableUpdateCatalog:
                                  type: boolean
                                table:
                                  type: string
                                updateBehavior:
                                  type: string
                              type: object
                          type: object
                        s3HudiCatalogTarget:
                          description: Specifies a target that writes to a Hudi data
                            source in the Glue Data Catalog.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            database:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                enableUpdateCatalog:
                                  type: boolean
                                updateBehavior:
                                  type: string
                              type: object
                            table:
                              type: string
                          type: object
                        s3HudiDirectTarget:
                          description: Specifies a target that writes to a Hudi data
                            source in Amazon S3.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            compression:
                              type: string
                            format:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            partitionKeys:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                            path:
                              type: string
                            schemaChangePolicy:
                              description: A policy that specifies update behavior
                                for the crawler.
                              properties:
                                database:
                                  type: string
                                enableUpdateCatalog:
                                  type: boolean
                                table:
                                  type: string
                                updateBehavior:
                                  type: string
                              type: object
                          type: object
                        s3HudiSource:
                          description: Specifies a Hudi data source stored in Amazon
                            S3.
                          properties:
                            additionalHudiOptions:
                              additionalProperties:
                                type: string
                              type: object
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                                enableSamplePath:
                                  type: boolean
                                samplePath:
                                  type: string
                              type: object
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            paths:
                              items:
                                type: string
                              type: array
                          type: object
                        s3JSONSource:
                          description: Specifies a JSON data store stored in Amazon
                            S3.
                          properties:
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                                enableSamplePath:
                                  type: boolean
                                samplePath:
                                  type: string
                              type: object
                            compressionType:
                              type: string
                            exclusions:
                              items:
                                type: string
                              type: array
                            groupFiles:
                              type: string
                            groupSize:
                              type: string
                            jsonPath:
                              type: string
                            maxBand:
                              format: int64
                              type: integer
                            maxFilesInBand:
                              format: int64
                              type: integer
                            multiline:
                              type: boolean
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            paths:
                              items:
                                type: string
                              type: array
                            recurse:
                              type: boolean
                          type: object
                        s3ParquetSource:
                          description: Specifies an Apache Parquet data store stored
                            in Amazon S3.
                          properties:
                            additionalOptions:
                              description: Specifies additional connection options
                                for the Amazon S3 data store.
                              properties:
                                boundedFiles:
                                  format: int64
                                  type: integer
                                boundedSize:
                                  format: int64
                                  type: integer
                                enableSamplePath:
                                  type: boolean
                                samplePath:
                                  type: string
                              type: object
                            compressionType:
                              type: string
                            exclusions:
                              items:
                                type: string
                              type: array
                            groupFiles:
                              type: string
                            groupSize:
                              type: string
                            maxBand:
                              format: int64
                              type: integer
                            maxFilesInBand:
                              format: int64
                              type: integer
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            paths:
                              items:
                                type: string
                              type: array
                            recurse:
                              type: boolean
                          type: object
                        selectFields:
                          description: |-
                            Specifies a transform that chooses the data property keys that you want to
                            keep.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            paths:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                          type: object
                        selectFromCollection:
                          description: |-
                            Specifies a transform that chooses one DynamicFrame from a collection of
                            DynamicFrames. The output is the selected DynamicFrame
                          properties:
                            index:
                              format: int64
                              type: integer
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        snowflakeSource:
                          description: Specifies a Snowflake data source.
                          properties:
                            data:
                              description: Specifies configuration for Snowflake nodes
                                in Glue Studio.
                              properties:
                                action:
                                  type: string
                                additionalOptions:
                                  additionalProperties:
                                    type: string
                                  type: object
                                autoPushdown:
                                  type: boolean
                                connection:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                database:
                                  type: string
                                iamRole:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                mergeAction:
                                  type: string
                                mergeClause:
                                  type: string
                                mergeWhenMatched:
                                  type: string
                                mergeWhenNotMatched:
                                  type: string
                                postAction:
                                  type: string
                                preAction:
                                  type: string
                                sampleQuery:
                                  type: string
                                schema:
                                  type: string
                                selectedColumns:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                sourceType:
                                  type: string
                                stagingTable:
                                  type: string
                                table:
                                  type: string
                                tableSchema:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                tempDir:
                                  type: string
                                upsert:
                                  type: boolean
                              type: object
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                          type: object
                        snowflakeTarget:
                          description: Specifies a Snowflake target.
                          properties:
                            data:
                              description: Specifies configuration for Snowflake nodes
                                in Glue Studio.
                              properties:
                                action:
                                  type: string
                                additionalOptions:
                                  additionalProperties:
                                    type: string
                                  type: object
                                autoPushdown:
                                  type: boolean
                                connection:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                database:
                                  type: string
                                iamRole:
                                  description: Specifies an option value.
                                  properties:
                                    description:
                                      type: string
                                    label:
                                      type: string
                                    value:
                                      type: string
                                  type: object
                                mergeAction:
                                  type: string
                                mergeClause:
                                  type: string
                                mergeWhenMatched:
                                  type: string
                                mergeWhenNotMatched:
                                  type: string
                                postAction:
                                  type: string
                                preAction:
                                  type: string
                                sampleQuery:
                                  type: string
                                schema:
                                  type: string
                                selectedColumns:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                sourceType:
                                  type: string
                                stagingTable:
                                  type: string
                                table:
                                  type: string
                                tableSchema:
                                  items:
                                    properties:
                                      description:
                                        type: string
                                      label:
                                        type: string
                                      value:
                                        type: string
                                    type: object
                                  type: array
                                tempDir:
                                  type: string
                                upsert:
                                  type: boolean
                              type: object
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                          type: object
                        sparkConnectorSource:
                          description: Specifies a connector to an Apache Spark data
                            source.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            connectionName:
                              type: string
                            connectionType:
                              type: string
                            connectorName:
                              type: string
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                          type: object
                        sparkConnectorTarget:
                          description: Specifies a target that uses an Apache Spark
                            connector.
                          properties:
                            additionalOptions:
                              additionalProperties:
                                type: string
                              type: object
                            connectionName:
                              type: string
                            connectionType:
                              type: string
                            connectorName:
                              type: string
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                          type: object
                        sparkSQL:
                          description: |-
                            Specifies a transform where you enter a SQL query using Spark SQL syntax
                            to transform the data. The output is a single DynamicFrame.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            outputSchemas:
                              items:
                                properties:
                                  columns:
                                    items:
                                      properties:
                                        name:
                                          type: string
                                        type_:
                                          type: string
                                      type: object
                                    type: array
                                type: object
                              type: array
                            sqlAliases:
                              items:
                                properties:
                                  alias:
                                    type: string
                                  from:
                                    type: string
                                type: object
                              type: array
                            sqlQuery:
                              type: string
                          type: object
                        spigot:
                          description: Specifies a transform that writes samples of
                            the data to an Amazon S3 bucket.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            path:
                              type: string
                            prob:
                              type: number
                            topk:
                              format: int64
                              type: integer
                          type: object
                        splitFields:
                          description: |-
                            Specifies a transform that splits data property keys into two DynamicFrames.
                            The output is a collection of DynamicFrames: one with selected data property
                            keys, and one with the remaining data property keys.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            paths:
                              items:
                                items:
                                  type: string
                                type: array
                              type: array
                          type: object
                        union:
                          description: |-
                            Specifies a transform that combines the rows from two or more datasets into
                            a single result.
                          properties:
                            inputs:
                              items:
                                type: string
                              type: array
                            name:
                              type: string
                            unionType:
                              type: string
                          type: object
                      type: object
                    description: |-
                      The representation of a directed acyclic graph on which both the Glue Studio
                      visual component and Glue Studio code generation is based.
                    type: object
                  command:
                    description: The JobCommand that runs this job.
                    properties:
                      name:
                        type: string
                      pythonVersion:
                        type: string
                      runtime:
                        type: string
                      scriptLocation:
                        type: string
                    type: object
                  connectionRefs:
                    description: |-
                      ConnectionRefs is a list of references to Connections used to set
                      the Connections.
                    items:
                      description: A Reference to a named object.
                      properties:
                        name:
                          description: Name of the referenced object.
                          type: string
                        policy:
                          description: Policies for referencing.
                          properties:
                            resolution:
                              default: Required
                              description: |-
                                Resolution specifies whether resolution of this reference is required.
                                The default is 'Required', which means the reconcile will fail if the
                                reference cannot be resolved. 'Optional' means this reference will be
                                a no-op if it cannot be resolved.
                              enum:
                              - Required
                              - Optional
                              type: string
                            resolve:
                              description: |-
                                Resolve specifies when this reference should be resolved. The default
                                is 'IfNotPresent', which will attempt to resolve the reference only when
                                the corresponding field is not present. Use 'Always' to resolve the
                                reference on every reconcile.
                              enum:
                              - Always
                              - IfNotPresent
                              type: string
                          type: object
                      required:
                      - name
                      type: object
                    type: array
                  connectionSelector:
                    description: |-
                      ConnectionsSelector selects references to Connections used
                      to set the Connections.
                    properties:
                      matchControllerRef:
                        description: |-
                          MatchControllerRef ensures an object with the same controller reference
                          as the selecting object is selected.
                        type: boolean
                      matchLabels:
                        additionalProperties:
                          type: string
                        description: MatchLabels ensures an object with matching labels
                          is selected.
                        type: object
                      policy:
                        description: Policies for selection.
                        properties:
                          resolution:
                            default: Required
                            description: |-
                              Resolution specifies whether resolution of this reference is required.
                              The default is 'Required', which means the reconcile will fail if the
                              reference cannot be resolved. 'Optional' means this reference will be
                              a no-op if it cannot be resolved.
                            enum:
                            - Required
                            - Optional
                            type: string
                          resolve:
                            description: |-
                              Resolve specifies when this reference should be resolved. The default
                              is 'IfNotPresent', which will attempt to resolve the reference only when
                              the corresponding field is not present. Use 'Always' to resolve the
                              reference on every reconcile.
                            enum:
                            - Always
                            - IfNotPresent
                            type: string
                        type: object
                    type: object
                  connections:
                    description: The connections used for this job.
                    items:
                      type: string
                    type: array
                  defaultArguments:
                    additionalProperties:
                      type: string
                    description: |-
                      The default arguments for every run of this job, specified as name-value
                      pairs.

                      You can specify arguments here that your own job-execution script consumes,
                      as well as arguments that Glue itself consumes.

                      Job arguments may be logged. Do not pass plaintext secrets as arguments.
                      Retrieve secrets from a Glue Connection, Secrets Manager or other secret
                      management mechanism if you intend to keep them within the Job.

                      For information about how to specify and consume your own Job arguments,
                      see the Calling Glue APIs in Python (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html)
                      topic in the developer guide.

                      For information about the arguments you can provide to this field when configuring
                      Spark jobs, see the Special Parameters Used by Glue (https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html)
                      topic in the developer guide.

                      For information about the arguments you can provide to this field when configuring
                      Ray jobs, see Using job parameters in Ray jobs (https://docs.aws.amazon.com/glue/latest/dg/author-job-ray-job-parameters.html)
                      in the developer guide.
                    type: object
                  description:
                    description: Description of the job being defined.
                    type: string
                  executionClass:
                    description: |-
                      Indicates whether the job is run with a standard or flexible execution class.
                      The standard execution-class is ideal for time-sensitive workloads that require
                      fast job startup and dedicated resources.

                      The flexible execution class is appropriate for time-insensitive jobs whose
                      start and completion times may vary.

                      Only jobs with Glue version 3.0 and above and command type glueetl will be
                      allowed to set ExecutionClass to FLEX. The flexible execution class is available
                      for Spark jobs.
                    type: string
                  executionProperty:
                    description: |-
                      An ExecutionProperty specifying the maximum number of concurrent runs allowed
                      for this job.
                    properties:
                      maxConcurrentRuns:
                        format: int64
                        type: integer
                    type: object
                  glueVersion:
                    description: |-
                      In Spark jobs, GlueVersion determines the versions of Apache Spark and Python
                      that Glue available in a job. The Python version indicates the version supported
                      for jobs of type Spark.

                      Ray jobs should set GlueVersion to 4.0 or greater. However, the versions
                      of Ray, Python and additional libraries available in your Ray job are determined
                      by the Runtime parameter of the Job command.

                      For more information about the available 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.
                    type: string
                  logURI:
                    description: This field is reserved for future use.
                    type: string
                  maxCapacity:
                    description: |-
                      For Glue version 1.0 or earlier jobs, using the standard worker type, the
                      number of 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. For more information, see
                      the Glue pricing page (https://aws.amazon.com/glue/pricing/).

                      For Glue version 2.0+ jobs, you cannot specify a Maximum capacity. Instead,
                      you should specify a Worker type and the Number of workers.

                      Do not set MaxCapacity if using WorkerType and NumberOfWorkers.

                      The value that can be allocated for MaxCapacity depends on whether you are
                      running a Python shell job, an Apache Spark ETL job, or an Apache Spark streaming
                      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")
                         or Apache Spark streaming ETL job (JobCommand.Name="gluestreaming"), you
                         can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job type
                         cannot have a fractional DPU allocation.
                    type: number
                  maxRetries:
                    description: The maximum number of times to retry this job if
                      it fails.
                    format: int64
                    type: integer
                  nonOverridableArguments:
                    additionalProperties:
                      type: string
                    description: |-
                      Arguments for this job that are not overridden when providing job arguments
                      in a job run, specified as name-value pairs.
                    type: object
                  notificationProperty:
                    description: Specifies configuration properties of a job notification.
                    properties:
                      notifyDelayAfter:
                        format: int64
                        type: integer
                    type: object
                  numberOfWorkers:
                    description: |-
                      The number of workers of a defined workerType that are allocated when a job
                      runs.
                    format: int64
                    type: integer
                  region:
                    description: Region is which region the Job will be created.
                    type: string
                  role:
                    description: |-
                      The name or Amazon Resource Name (ARN) of the IAM role associated with this
                      job. Role is a required field
                    type: string
                  roleRef:
                    description: |-
                      RoleRef is a reference to an IAMRole used to set
                      the Role.
                    properties:
                      name:
                        description: Name of the referenced object.
                        type: string
                      policy:
                        description: Policies for referencing.
                        properties:
                          resolution:
                            default: Required
                            description: |-
                              Resolution specifies whether resolution of this reference is required.
                              The default is 'Required', which means the reconcile will fail if the
                              reference cannot be resolved. 'Optional' means this reference will be
                              a no-op if it cannot be resolved.
                            enum:
                            - Required
                            - Optional
                            type: string
                          resolve:
                            description: |-
                              Resolve specifies when this reference should be resolved. The default
                              is 'IfNotPresent', which will attempt to resolve the reference only when
                              the corresponding field is not present. Use 'Always' to resolve the
                              reference on every reconcile.
                            enum:
                            - Always
                            - IfNotPresent
                            type: string
                        type: object
                    required:
                    - name
                    type: object
                  roleSelector:
                    description: |-
                      RoleSelector selects references to IAMRole used
                      to set the Role.
                    properties:
                      matchControllerRef:
                        description: |-
                          MatchControllerRef ensures an object with the same controller reference
                          as the selecting object is selected.
                        type: boolean
                      matchLabels:
                        additionalProperties:
                          type: string
                        description: MatchLabels ensures an object with matching labels
                          is selected.
                        type: object
                      policy:
                        description: Policies for selection.
                        properties:
                          resolution:
                            default: Required
                            description: |-
                              Resolution specifies whether resolution of this reference is required.
                              The default is 'Required', which means the reconcile will fail if the
                              reference cannot be resolved. 'Optional' means this reference will be
                              a no-op if it cannot be resolved.
                            enum:
                            - Required
                            - Optional
                            type: string
                          resolve:
                            description: |-
                              Resolve specifies when this reference should be resolved. The default
                              is 'IfNotPresent', which will attempt to resolve the reference only when
                              the corresponding field is not present. Use 'Always' to resolve the
                              reference on every reconcile.
                            enum:
                            - Always
                            - IfNotPresent
                            type: string
                        type: object
                    type: object
                  securityConfiguration:
                    description: The name of the SecurityConfiguration structure to
                      be used with this job.
                    type: string
                  securityConfigurationRef:
                    description: |-
                      SecurityConfigurationRef is a reference to an SecurityConfiguration used to set
                      the SecurityConfiguration.
                    properties:
                      name:
                        description: Name of the referenced object.
                        type: string
                      policy:
                        description: Policies for referencing.
                        properties:
                          resolution:
                            default: Required
                            description: |-
                              Resolution specifies whether resolution of this reference is required.
                              The default is 'Required', which means the reconcile will fail if the
                              reference cannot be resolved. 'Optional' means this reference will be
                              a no-op if it cannot be resolved.
                            enum:
                            - Required
                            - Optional
                            type: string
                          resolve:
                            description: |-
                              Resolve specifies when this reference should be resolved. The default
                              is 'IfNotPresent', which will attempt to resolve the reference only when
                              the corresponding field is not present. Use 'Always' to resolve the
                              reference on every reconcile.
                            enum:
                            - Always
                            - IfNotPresent
                            type: string
                        type: object
                    required:
                    - name
                    type: object
                  securityConfigurationSelector:
                    description: |-
                      SecurityConfigurationSelector selects references to SecurityConfiguration used
                      to set the SecurityConfiguration.
                    properties:
                      matchControllerRef:
                        description: |-
                          MatchControllerRef ensures an object with the same controller reference
                          as the selecting object is selected.
                        type: boolean
                      matchLabels:
                        additionalProperties:
                          type: string
                        description: MatchLabels ensures an object with matching labels
                          is selected.
                        type: object
                      policy:
                        description: Policies for selection.
                        properties:
                          resolution:
                            default: Required
                            description: |-
                              Resolution specifies whether resolution of this reference is required.
                              The default is 'Required', which means the reconcile will fail if the
                              reference cannot be resolved. 'Optional' means this reference will be
                              a no-op if it cannot be resolved.
                            enum:
                            - Required
                            - Optional
                            type: string
                          resolve:
                            description: |-
                              Resolve specifies when this reference should be resolved. The default
                              is 'IfNotPresent', which will attempt to resolve the reference only when
                              the corresponding field is not present. Use 'Always' to resolve the
                              reference on every reconcile.
                            enum:
                            - Always
                            - IfNotPresent
                            type: string
                        type: object
                    type: object
                  sourceControlDetails:
                    description: |-
                      The details for a source control configuration for a job, allowing synchronization
                      of job artifacts to or from a remote repository.
                    properties:
                      authStrategy:
                        type: string
                      authToken:
                        type: string
                      branch:
                        type: string
                      folder:
                        type: string
                      lastCommitID:
                        type: string
                      owner:
                        type: string
                      provider:
                        type: string
                      repository:
                        type: string
                    type: object
                  tags:
                    additionalProperties:
                      type: string
                    description: |-
                      The tags to use with this job. You may use tags to limit access to the job.
                      For more information about tags in Glue, see Amazon Web Services Tags in
                      Glue (https://docs.aws.amazon.com/glue/latest/dg/monitor-tags.html) in the
                      developer guide.
                    type: object
                  timeout:
                    description: |-
                      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).
                    format: int64
                    type: integer
                  workerType:
                    description: |-
                      The type of predefined worker that is allocated when a job runs. Accepts
                      a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value
                      Z.2X for Ray jobs.

                         * For the G.1X worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB
                         of memory) with 84GB disk (approximately 34GB free), and provides 1 executor
                         per worker. We recommend this worker type for workloads such as data transforms,
                         joins, and queries, to offers a scalable and cost effective way to run
                         most jobs.

                         * For the G.2X worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB
                         of memory) with 128GB disk (approximately 77GB free), and provides 1 executor
                         per worker. We recommend this worker type for workloads such as data transforms,
                         joins, and queries, to offers a scalable and cost effective way to run
                         most jobs.

                         * For the G.4X worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB
                         of memory) with 256GB disk (approximately 235GB free), and provides 1
                         executor per worker. We recommend this worker type for jobs whose workloads
                         contain your most demanding transforms, aggregations, joins, and queries.
                         This worker type is available only for Glue version 3.0 or later Spark
                         ETL jobs in the following Amazon Web Services Regions: US East (Ohio),
                         US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia
                         Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt),
                         Europe (Ireland), and Europe (Stockholm).

                         * For the G.8X worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB
                         of memory) with 512GB disk (approximately 487GB free), and provides 1
                         executor per worker. We recommend this worker type for jobs whose workloads
                         contain your most demanding transforms, aggregations, joins, and queries.
                         This worker type is available only for Glue version 3.0 or later Spark
                         ETL jobs, in the same Amazon Web Services Regions as supported for the
                         G.4X worker type.

                         * For the G.025X worker type, each worker maps to 0.25 DPU (2 vCPUs, 4
                         GB of memory) with 84GB disk (approximately 34GB free), and provides 1
                         executor per worker. We recommend this worker type for low volume streaming
                         jobs. This worker type is only available for Glue version 3.0 streaming
                         jobs.

                         * For the Z.2X worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB
                         of memory) with 128 GB disk (approximately 120GB free), and provides up
                         to 8 Ray workers based on the autoscaler.
                    type: string
                required:
                - command
                - region
                type: object
              managementPolicies:
                default:
                - '*'
                description: |-
                  THIS IS A BETA FIELD. It is on by default but can be opted out
                  through a Crossplane feature flag.
                  ManagementPolicies specify the array of actions Crossplane is allowed to
                  take on the managed and external resources.
                  This field is planned to replace the DeletionPolicy field in a future
                  release. Currently, both could be set independently and non-default
                  values would be honored if the feature flag is enabled. If both are
                  custom, the DeletionPolicy field will be ignored.
                  See the design doc for more information: https://github.com/crossplane/crossplane/blob/499895a25d1a1a0ba1604944ef98ac7a1a71f197/design/design-doc-observe-only-resources.md?plain=1#L223
                  and this one: https://github.com/crossplane/crossplane/blob/444267e84783136daa93568b364a5f01228cacbe/design/one-pager-ignore-changes.md
                items:
                  description: |-
                    A ManagementAction represents an action that the Crossplane controllers
                    can take on an external resource.
                  enum:
                  - Observe
                  - Create
                  - Update
                  - Delete
                  - LateInitialize
                  - '*'
                  type: string
                type: array
              providerConfigRef:
                default:
                  name: default
                description: |-
                  ProviderConfigReference specifies how the provider that will be used to
                  create, observe, update, and delete this managed resource should be
                  configured.
                properties:
                  name:
                    description: Name of the referenced object.
                    type: string
                  policy:
                    description: Policies for referencing.
                    properties:
                      resolution:
                        default: Required
                        description: |-
                          Resolution specifies whether resolution of this reference is required.
                          The default is 'Required', which means the reconcile will fail if the
                          reference cannot be resolved. 'Optional' means this reference will be
                          a no-op if it cannot be resolved.
                        enum:
                        - Required
                        - Optional
                        type: string
                      resolve:
                        description: |-
                          Resolve specifies when this reference should be resolved. The default
                          is 'IfNotPresent', which will attempt to resolve the reference only when
                          the corresponding field is not present. Use 'Always' to resolve the
                          reference on every reconcile.
                        enum:
                        - Always
                        - IfNotPresent
                        type: string
                    type: object
                required:
                - name
                type: object
              publishConnectionDetailsTo:
                description: |-
                  PublishConnectionDetailsTo specifies the connection secret config which
                  contains a name, metadata and a reference to secret store config to
                  which any connection details for this managed resource should be written.
                  Connection details frequently include the endpoint, username,
                  and password required to connect to the managed resource.
                properties:
                  configRef:
                    default:
                      name: default
                    description: |-
                      SecretStoreConfigRef specifies which secret store config should be used
                      for this ConnectionSecret.
                    properties:
                      name:
                        description: Name of the referenced object.
                        type: string
                      policy:
                        description: Policies for referencing.
                        properties:
                          resolution:
                            default: Required
                            description: |-
                              Resolution specifies whether resolution of this reference is required.
                              The default is 'Required', which means the reconcile will fail if the
                              reference cannot be resolved. 'Optional' means this reference will be
                              a no-op if it cannot be resolved.
                            enum:
                            - Required
                            - Optional
                            type: string
                          resolve:
                            description: |-
                              Resolve specifies when this reference should be resolved. The default
                              is 'IfNotPresent', which will attempt to resolve the reference only when
                              the corresponding field is not present. Use 'Always' to resolve the
                              reference on every reconcile.
                            enum:
                            - Always
                            - IfNotPresent
                            type: string
                        type: object
                    required:
                    - name
                    type: object
                  metadata:
                    description: Metadata is the metadata for connection secret.
                    properties:
                      annotations:
                        additionalProperties:
                          type: string
                        description: |-
                          Annotations are the annotations to be added to connection secret.
                          - For Kubernetes secrets, this will be used as "metadata.annotations".
                          - It is up to Secret Store implementation for others store types.
                        type: object
                      labels:
                        additionalProperties:
                          type: string
                        description: |-
                          Labels are the labels/tags to be added to connection secret.
                          - For Kubernetes secrets, this will be used as "metadata.labels".
                          - It is up to Secret Store implementation for others store types.
                        type: object
                      type:
                        description: |-
                          Type is the SecretType for the connection secret.
                          - Only valid for Kubernetes Secret Stores.
                        type: string
                    type: object
                  name:
                    description: Name is the name of the connection secret.
                    type: string
                required:
                - name
                type: object
              writeConnectionSecretToRef:
                description: |-
                  WriteConnectionSecretToReference specifies the namespace and name of a
                  Secret to which any connection details for this managed resource should
                  be written. Connection details frequently include the endpoint, username,
                  and password required to connect to the managed resource.
                  This field is planned to be replaced in a future release in favor of
                  PublishConnectionDetailsTo. Currently, both could be set independently
                  and connection details would be published to both without affecting
                  each other.
                properties:
                  name:
                    description: Name of the secret.
                    type: string
                  namespace:
                    description: Namespace of the secret.
                    type: string
                required:
                - name
                - namespace
                type: object
            required:
            - forProvider
            type: object
          status:
            description: JobStatus defines the observed state of Job.
            properties:
              atProvider:
                description: JobObservation defines the observed state of Job
                properties:
                  createdOn:
                    description: The time and date that this job definition was created.
                    format: date-time
                    type: string
                  lastModifiedOn:
                    description: The last point in time when this job definition was
                      modified.
                    format: date-time
                    type: string
                  name:
                    description: The unique name that was provided for this job definition.
                    type: string
                type: object
              conditions:
                description: Conditions of the resource.
                items:
                  description: A Condition that may apply to a resource.
                  properties:
                    lastTransitionTime:
                      description: |-
                        LastTransitionTime is the last time this condition transitioned from one
                        status to another.
                      format: date-time
                      type: string
                    message:
                      description: |-
                        A Message containing details about this condition's last transition from
                        one status to another, if any.
                      type: string
                    observedGeneration:
                      description: |-
                        ObservedGeneration represents the .metadata.generation that the condition was set based upon.
                        For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
                        with respect to the current state of the instance.
                      format: int64
                      type: integer
                    reason:
                      description: A Reason for this condition's last transition from
                        one status to another.
                      type: string
                    status:
                      description: Status of this condition; is it currently True,
                        False, or Unknown?
                      type: string
                    type:
                      description: |-
                        Type of this condition. At most one of each condition type may apply to
                        a resource at any point in time.
                      type: string
                  required:
                  - lastTransitionTime
                  - reason
                  - status
                  - type
                  type: object
                type: array
                x-kubernetes-list-map-keys:
                - type
                x-kubernetes-list-type: map
              observedGeneration:
                description: |-
                  ObservedGeneration is the latest metadata.generation
                  which resulted in either a ready state, or stalled due to error
                  it can not recover from without human intervention.
                format: int64
                type: integer
            type: object
        required:
        - spec
        type: object
    served: true
    storage: true
    subresources:
      status: {}
