...

Text file src/github.com/GoogleCloudPlatform/k8s-config-connector/config/servicemappings/dataflow.yaml

Documentation: github.com/GoogleCloudPlatform/k8s-config-connector/config/servicemappings

     1# Copyright 2022 Google LLC
     2#
     3# Licensed under the Apache License, Version 2.0 (the "License");
     4# you may not use this file except in compliance with the License.
     5# You may obtain a copy of the License at
     6#
     7#      http://www.apache.org/licenses/LICENSE-2.0
     8#
     9# Unless required by applicable law or agreed to in writing, software
    10# distributed under the License is distributed on an "AS IS" BASIS,
    11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12# See the License for the specific language governing permissions and
    13# limitations under the License.
    14
    15apiVersion: core.cnrm.cloud.google.com/v1alpha1
    16kind: ServiceMapping
    17metadata:
    18  name: dataflow.cnrm.cloud.google.com
    19  namespace: cnrm-system
    20spec:
    21  name: Dataflow
    22  version: v1beta1
    23  serviceHostName: "dataflow.googleapis.com"
    24  resources:
    25    - name: google_dataflow_flex_template_job
    26      kind: DataflowFlexTemplateJob
    27      metadataMapping:
    28        name: name
    29      ignoredFields:
    30        # TODO(b/254868598): Enable support for labels field
    31        - labels
    32        # TODO(b/288129227): Enable support for problematic dataflow fields.
    33        - additional_experiments
    34        - autoscaling_algorithm
    35        - enable_streaming_engine
    36        - ip_configuration
    37        - kms_key_name
    38        - launcher_machine_type
    39        - machine_type
    40        - max_workers
    41        - network
    42        - num_workers
    43        - sdk_container_image
    44        - service_account_email
    45        - staging_location
    46        - subnetwork
    47        - temp_location
    48        - transform_name_mapping
    49      serverGeneratedIDField: "job_id"
    50      idTemplate: "{{job_id}}"
    51      # doesn't have an importer
    52      idTemplateCanBeUsedToMatchResourceName: false
    53      resourceAvailableInAssetInventory: false
    54      skipImport: true
    55      directives:
    56        - on_delete
    57        - skip_wait_on_job_termination
    58      containers:
    59        - type: project
    60          tfField: project
    61      # resourceReferences:
    62        # - tfField: kms_key_name
    63        #   key: kmsKeyNameRef
    64        #   gvk:
    65        #     kind: KMSCryptoKey
    66        #     version: v1beta1
    67        #     group: kms.cnrm.cloud.google.com
    68        #   description: |-
    69        #     The name for the Cloud KMS key for the job.
    70        #   targetField: self_link
    71        # - tfField: service_account_email
    72        #   key: serviceAccountEmailRef
    73        #   gvk:
    74        #     kind: IAMServiceAccount
    75        #     version: v1beta1
    76        #     group: iam.cnrm.cloud.google.com
    77        #   targetField: email
    78        # - tfField: network
    79        #   key: networkRef
    80        #   gvk:
    81        #     kind: ComputeNetwork
    82        #     version: v1beta1
    83        #     group: compute.cnrm.cloud.google.com
    84        #   targetField: self_link
    85        # - tfField: subnetwork
    86        #   key: subnetworkRef
    87        #   gvk:
    88        #     kind: ComputeSubnetwork
    89        #     version: v1beta1
    90        #     group: compute.cnrm.cloud.google.com
    91        #  targetField: self_link
    92      mutableButUnreadableFields:
    93        - container_spec_gcs_path
    94        - parameters
    95    - name: google_dataflow_job
    96      kind: DataflowJob
    97      metadataMapping:
    98        name: name
    99        labels: labels
   100      resourceID:
   101        targetField: name
   102      idTemplate: "{{project}}/{{region?}}/{{name}}"
   103      # doesn't have an importer
   104      idTemplateCanBeUsedToMatchResourceName: false
   105      resourceAvailableInAssetInventory: true
   106      skipImport: true
   107      directives:
   108        - on_delete
   109        - skip_wait_on_job_termination
   110      containers:
   111        - type: project
   112          tfField: project
   113      resourceReferences:
   114        - tfField: service_account_email
   115          key: serviceAccountRef
   116          gvk:
   117            kind: IAMServiceAccount
   118            version: v1beta1
   119            group: iam.cnrm.cloud.google.com
   120          targetField: email
   121        - tfField: network
   122          key: networkRef
   123          gvk:
   124            kind: ComputeNetwork
   125            version: v1beta1
   126            group: compute.cnrm.cloud.google.com
   127          targetField: self_link
   128        - tfField: subnetwork
   129          key: subnetworkRef
   130          gvk:
   131            kind: ComputeSubnetwork
   132            version: v1beta1
   133            group: compute.cnrm.cloud.google.com
   134          targetField: self_link
   135        - tfField: kms_key_name
   136          key: kmsKeyRef
   137          gvk:
   138            kind: KMSCryptoKey
   139            version: v1beta1
   140            group: kms.cnrm.cloud.google.com
   141          description: |-
   142            The name for the Cloud KMS key for the job.
   143          targetField: self_link
   144      mutableButUnreadableFields:
   145        - parameters
   146        - ip_configuration

View as plain text