apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    cnrm.cloud.google.com/version: 0.0.0-dev
  creationTimestamp: null
  labels:
    cnrm.cloud.google.com/dcl2crd: "true"
    cnrm.cloud.google.com/managed-by-kcc: "true"
    cnrm.cloud.google.com/stability-level: stable
    cnrm.cloud.google.com/system: "true"
  name: dlpinspecttemplates.dlp.cnrm.cloud.google.com
spec:
  group: dlp.cnrm.cloud.google.com
  names:
    categories:
    - gcp
    kind: DLPInspectTemplate
    plural: dlpinspecttemplates
    shortNames:
    - gcpdlpinspecttemplate
    - gcpdlpinspecttemplates
    singular: dlpinspecttemplate
  preserveUnknownFields: false
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .metadata.creationTimestamp
      name: Age
      type: date
    - description: When 'True', the most recent reconcile of the resource succeeded
      jsonPath: .status.conditions[?(@.type=='Ready')].status
      name: Ready
      type: string
    - description: The reason for the value in 'Ready'
      jsonPath: .status.conditions[?(@.type=='Ready')].reason
      name: Status
      type: string
    - description: The last transition time for the value in 'Status'
      jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
      name: Status Age
      type: date
    name: v1beta1
    schema:
      openAPIV3Schema:
        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/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/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            oneOf:
            - required:
              - organizationRef
            - required:
              - projectRef
            properties:
              description:
                description: Short description (max 256 chars).
                type: string
              displayName:
                description: Display name (max 256 chars).
                type: string
              inspectConfig:
                description: The core content of the template. Configuration of the
                  scanning process.
                properties:
                  contentOptions:
                    description: List of options defining data content to scan. If
                      empty, text, images, and other content will be included.
                    items:
                      type: string
                    type: array
                  customInfoTypes:
                    description: CustomInfoTypes provided by the user. See https://cloud.google.com/dlp/docs/creating-custom-infotypes
                      to learn more.
                    items:
                      properties:
                        dictionary:
                          description: A list of phrases to detect as a CustomInfoType.
                          properties:
                            cloudStoragePath:
                              description: Newline-delimited file of words in Cloud
                                Storage. Only a single file is accepted.
                              properties:
                                path:
                                  description: 'A url representing a file or path
                                    (no wildcards) in Cloud Storage. Example: gs://[BUCKET_NAME]/dictionary.txt'
                                  type: string
                              type: object
                            wordList:
                              description: List of words or phrases to search for.
                              properties:
                                words:
                                  description: Words or phrases defining the dictionary.
                                    The dictionary must contain at least one phrase
                                    and every phrase must contain at least 2 characters
                                    that are letters or digits. [required]
                                  items:
                                    type: string
                                  type: array
                              type: object
                          type: object
                        exclusionType:
                          description: 'If set to EXCLUSION_TYPE_EXCLUDE this infoType
                            will not cause a finding to be returned. It still can
                            be used for rules matching. Possible values: EXCLUSION_TYPE_UNSPECIFIED,
                            EXCLUSION_TYPE_EXCLUDE'
                          type: string
                        infoType:
                          description: CustomInfoType can either be a new infoType,
                            or an extension of built-in infoType, when the name matches
                            one of existing infoTypes and that infoType is specified
                            in `InspectContent.info_types` field. Specifying the latter
                            adds findings to the one detected by the system. If built-in
                            info type is not specified in `InspectContent.info_types`
                            list then the name is treated as a custom info type.
                          properties:
                            name:
                              description: Name of the information type. Either a
                                name of your choosing when creating a CustomInfoType,
                                or one of the names listed at https://cloud.google.com/dlp/docs/infotypes-reference
                                when specifying a built-in type. When sending Cloud
                                DLP results to Data Catalog, infoType names should
                                conform to the pattern `[A-Za-z0-9$-_]{1,64}`.
                              type: string
                          type: object
                        likelihood:
                          description: 'Likelihood to return for this CustomInfoType.
                            This base value can be altered by a detection rule if
                            the finding meets the criteria specified by the rule.
                            Defaults to `VERY_LIKELY` if not specified. Possible values:
                            LIKELIHOOD_UNSPECIFIED, VERY_UNLIKELY, UNLIKELY, POSSIBLE,
                            LIKELY, VERY_LIKELY'
                          type: string
                        regex:
                          description: Regular expression based CustomInfoType.
                          properties:
                            groupIndexes:
                              description: The index of the submatch to extract as
                                findings. When not specified, the entire match is
                                returned. No more than 3 may be included.
                              items:
                                format: int64
                                type: integer
                              type: array
                            pattern:
                              description: Pattern defining the regular expression.
                                Its syntax (https://github.com/google/re2/wiki/Syntax)
                                can be found under the google/re2 repository on GitHub.
                              type: string
                          type: object
                        storedType:
                          description: Load an existing `StoredInfoType` resource
                            for use in `InspectDataSource`. Not currently supported
                            in `InspectContent`.
                          properties:
                            createTime:
                              description: Timestamp indicating when the version of
                                the `StoredInfoType` used for inspection was created.
                                Output-only field, populated by the system.
                              format: date-time
                              type: string
                            nameRef:
                              oneOf:
                              - not:
                                  required:
                                  - external
                                required:
                                - name
                              - not:
                                  anyOf:
                                  - required:
                                    - name
                                  - required:
                                    - namespace
                                required:
                                - external
                              properties:
                                external:
                                  description: |-
                                    Resource name of the requested `StoredInfoType`, for example `organizations/433245324/storedInfoTypes/432452342` or `projects/project-id/storedInfoTypes/432452342`.

                                    Allowed value: The Google Cloud resource name of a `DLPStoredInfoType` resource (format: `{{parent}}/storedInfoTypes/{{name}}`).
                                  type: string
                                name:
                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
                                  type: string
                                namespace:
                                  description: 'Namespace of the referent. More info:
                                    https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
                                  type: string
                              type: object
                          type: object
                        surrogateType:
                          description: Message for detecting output from deidentification
                            transformations that support reversing.
                          type: object
                          x-kubernetes-preserve-unknown-fields: true
                      type: object
                    type: array
                  excludeInfoTypes:
                    description: When true, excludes type information of the findings.
                    type: boolean
                  includeQuote:
                    description: When true, a contextual quote from the data that
                      triggered a finding is included in the response; see Finding.quote.
                    type: boolean
                  infoTypes:
                    description: Restricts what info_types to look for. The values
                      must correspond to InfoType values returned by ListInfoTypes
                      or listed at https://cloud.google.com/dlp/docs/infotypes-reference.
                      When no InfoTypes or CustomInfoTypes are specified in a request,
                      the system may automatically choose what detectors to run. By
                      default this may be all types, but may change over time as detectors
                      are updated. If you need precise control and predictability
                      as to what detectors are run you should specify specific InfoTypes
                      listed in the reference, otherwise a default list will be used,
                      which may change over time.
                    items:
                      properties:
                        name:
                          description: Name of the information type. Either a name
                            of your choosing when creating a CustomInfoType, or one
                            of the names listed at https://cloud.google.com/dlp/docs/infotypes-reference
                            when specifying a built-in type. When sending Cloud DLP
                            results to Data Catalog, infoType names should conform
                            to the pattern `[A-Za-z0-9$-_]{1,64}`.
                          type: string
                      type: object
                    type: array
                  limits:
                    description: Configuration to control the number of findings returned.
                    properties:
                      maxFindingsPerInfoType:
                        description: Configuration of findings limit given for specified
                          infoTypes.
                        items:
                          properties:
                            infoType:
                              description: Type of information the findings limit
                                applies to. Only one limit per info_type should be
                                provided. If InfoTypeLimit does not have an info_type,
                                the DLP API applies the limit against all info_types
                                that are found but not specified in another InfoTypeLimit.
                              properties:
                                name:
                                  description: Name of the information type. Either
                                    a name of your choosing when creating a CustomInfoType,
                                    or one of the names listed at https://cloud.google.com/dlp/docs/infotypes-reference
                                    when specifying a built-in type. When sending
                                    Cloud DLP results to Data Catalog, infoType names
                                    should conform to the pattern `[A-Za-z0-9$-_]{1,64}`.
                                  type: string
                              type: object
                            maxFindings:
                              description: Max findings limit for the given infoType.
                              format: int64
                              type: integer
                          type: object
                        type: array
                      maxFindingsPerItem:
                        description: Max number of findings that will be returned
                          for each item scanned. When set within `InspectJobConfig`,
                          the maximum returned is 2000 regardless if this is set higher.
                          When set within `InspectContentRequest`, this field is ignored.
                        format: int64
                        type: integer
                      maxFindingsPerRequest:
                        description: Max number of findings that will be returned
                          per request/job. When set within `InspectContentRequest`,
                          the maximum returned is 2000 regardless if this is set higher.
                        format: int64
                        type: integer
                    type: object
                  minLikelihood:
                    description: 'Only returns findings equal or above this threshold.
                      The default is POSSIBLE. See https://cloud.google.com/dlp/docs/likelihood
                      to learn more. Possible values: LIKELIHOOD_UNSPECIFIED, VERY_UNLIKELY,
                      UNLIKELY, POSSIBLE, LIKELY, VERY_LIKELY'
                    type: string
                  ruleSet:
                    description: Set of rules to apply to the findings for this InspectConfig.
                      Exclusion rules, contained in the set are executed in the end,
                      other rules are executed in the order they are specified for
                      each info type.
                    items:
                      properties:
                        infoTypes:
                          description: List of infoTypes this rule set is applied
                            to.
                          items:
                            properties:
                              name:
                                description: Name of the information type. Either
                                  a name of your choosing when creating a CustomInfoType,
                                  or one of the names listed at https://cloud.google.com/dlp/docs/infotypes-reference
                                  when specifying a built-in type. When sending Cloud
                                  DLP results to Data Catalog, infoType names should
                                  conform to the pattern `[A-Za-z0-9$-_]{1,64}`.
                                type: string
                            type: object
                          type: array
                        rules:
                          description: Set of rules to be applied to infoTypes. The
                            rules are applied in order.
                          items:
                            properties:
                              exclusionRule:
                                description: Exclusion rule.
                                properties:
                                  dictionary:
                                    description: Dictionary which defines the rule.
                                    properties:
                                      cloudStoragePath:
                                        description: Newline-delimited file of words
                                          in Cloud Storage. Only a single file is
                                          accepted.
                                        properties:
                                          path:
                                            description: 'A url representing a file
                                              or path (no wildcards) in Cloud Storage.
                                              Example: gs://[BUCKET_NAME]/dictionary.txt'
                                            type: string
                                        type: object
                                      wordList:
                                        description: List of words or phrases to search
                                          for.
                                        properties:
                                          words:
                                            description: Words or phrases defining
                                              the dictionary. The dictionary must
                                              contain at least one phrase and every
                                              phrase must contain at least 2 characters
                                              that are letters or digits. [required]
                                            items:
                                              type: string
                                            type: array
                                        type: object
                                    type: object
                                  excludeInfoTypes:
                                    description: Set of infoTypes for which findings
                                      would affect this rule.
                                    properties:
                                      infoTypes:
                                        description: InfoType list in ExclusionRule
                                          rule drops a finding when it overlaps or
                                          contained within with a finding of an infoType
                                          from this list. For example, for `InspectionRuleSet.info_types`
                                          containing "PHONE_NUMBER"` and `exclusion_rule`
                                          containing `exclude_info_types.info_types`
                                          with "EMAIL_ADDRESS" the phone number findings
                                          are dropped if they overlap with EMAIL_ADDRESS
                                          finding. That leads to "555-222-2222@example.org"
                                          to generate only a single finding, namely
                                          email address.
                                        items:
                                          properties:
                                            name:
                                              description: Name of the information
                                                type. Either a name of your choosing
                                                when creating a CustomInfoType, or
                                                one of the names listed at https://cloud.google.com/dlp/docs/infotypes-reference
                                                when specifying a built-in type. When
                                                sending Cloud DLP results to Data
                                                Catalog, infoType names should conform
                                                to the pattern `[A-Za-z0-9$-_]{1,64}`.
                                              type: string
                                          type: object
                                        type: array
                                    type: object
                                  matchingType:
                                    description: 'How the rule is applied, see MatchingType
                                      documentation for details. Possible values:
                                      MATCHING_TYPE_UNSPECIFIED, MATCHING_TYPE_FULL_MATCH,
                                      MATCHING_TYPE_PARTIAL_MATCH, MATCHING_TYPE_INVERSE_MATCH'
                                    type: string
                                  regex:
                                    description: Regular expression which defines
                                      the rule.
                                    properties:
                                      groupIndexes:
                                        description: The index of the submatch to
                                          extract as findings. When not specified,
                                          the entire match is returned. No more than
                                          3 may be included.
                                        items:
                                          format: int64
                                          type: integer
                                        type: array
                                      pattern:
                                        description: Pattern defining the regular
                                          expression. Its syntax (https://github.com/google/re2/wiki/Syntax)
                                          can be found under the google/re2 repository
                                          on GitHub.
                                        type: string
                                    type: object
                                type: object
                              hotwordRule:
                                properties:
                                  hotwordRegex:
                                    description: Regular expression pattern defining
                                      what qualifies as a hotword.
                                    properties:
                                      groupIndexes:
                                        description: The index of the submatch to
                                          extract as findings. When not specified,
                                          the entire match is returned. No more than
                                          3 may be included.
                                        items:
                                          format: int64
                                          type: integer
                                        type: array
                                      pattern:
                                        description: Pattern defining the regular
                                          expression. Its syntax (https://github.com/google/re2/wiki/Syntax)
                                          can be found under the google/re2 repository
                                          on GitHub.
                                        type: string
                                    type: object
                                  likelihoodAdjustment:
                                    description: Likelihood adjustment to apply to
                                      all matching findings.
                                    properties:
                                      fixedLikelihood:
                                        description: 'Set the likelihood of a finding
                                          to a fixed value. Possible values: LIKELIHOOD_UNSPECIFIED,
                                          VERY_UNLIKELY, UNLIKELY, POSSIBLE, LIKELY,
                                          VERY_LIKELY'
                                        type: string
                                      relativeLikelihood:
                                        description: Increase or decrease the likelihood
                                          by the specified number of levels. For example,
                                          if a finding would be `POSSIBLE` without
                                          the detection rule and `relative_likelihood`
                                          is 1, then it is upgraded to `LIKELY`, while
                                          a value of -1 would downgrade it to `UNLIKELY`.
                                          Likelihood may never drop below `VERY_UNLIKELY`
                                          or exceed `VERY_LIKELY`, so applying an
                                          adjustment of 1 followed by an adjustment
                                          of -1 when base likelihood is `VERY_LIKELY`
                                          will result in a final likelihood of `LIKELY`.
                                        format: int64
                                        type: integer
                                    type: object
                                  proximity:
                                    description: Proximity of the finding within which
                                      the entire hotword must reside. The total length
                                      of the window cannot exceed 1000 characters.
                                      Note that the finding itself will be included
                                      in the window, so that hotwords may be used
                                      to match substrings of the finding itself. For
                                      example, the certainty of a phone number regex
                                      "(d{3}) d{3}-d{4}" could be adjusted upwards
                                      if the area code is known to be the local area
                                      code of a company office using the hotword regex
                                      "(xxx)", where "xxx" is the area code in question.
                                    properties:
                                      windowAfter:
                                        description: Number of characters after the
                                          finding to consider.
                                        format: int64
                                        type: integer
                                      windowBefore:
                                        description: Number of characters before the
                                          finding to consider.
                                        format: int64
                                        type: integer
                                    type: object
                                type: object
                            type: object
                          type: array
                      type: object
                    type: array
                type: object
              location:
                description: Immutable. The location of the resource
                type: string
              organizationRef:
                description: Immutable. The Organization that this resource belongs
                  to. Only one of [organizationRef, projectRef] may be specified.
                oneOf:
                - not:
                    required:
                    - external
                  required:
                  - name
                - not:
                    anyOf:
                    - required:
                      - name
                    - required:
                      - namespace
                  required:
                  - external
                properties:
                  external:
                    description: 'Allowed value: The Google Cloud resource name of
                      a Google Cloud Organization (format: `organizations/{{name}}`).'
                    type: string
                  name:
                    description: |-
                      [WARNING] Organization not yet supported in Config Connector, use 'external' field to reference existing resources.
                      Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
                    type: string
                  namespace:
                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
                    type: string
                type: object
              projectRef:
                description: Immutable. The Project that this resource belongs to.
                  Only one of [organizationRef, projectRef] may be specified.
                oneOf:
                - not:
                    required:
                    - external
                  required:
                  - name
                - not:
                    anyOf:
                    - required:
                      - name
                    - required:
                      - namespace
                  required:
                  - external
                properties:
                  external:
                    description: 'Allowed value: The Google Cloud resource name of
                      a `Project` resource (format: `projects/{{name}}`).'
                    type: string
                  name:
                    description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
                    type: string
                  namespace:
                    description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
                    type: string
                type: object
              resourceID:
                description: Immutable. Optional. The service-generated name of the
                  resource. Used for acquisition only. Leave unset to create a new
                  resource.
                type: string
            type: object
          status:
            properties:
              conditions:
                description: Conditions represent the latest available observation
                  of the resource's current state.
                items:
                  properties:
                    lastTransitionTime:
                      description: Last time the condition transitioned from one status
                        to another.
                      type: string
                    message:
                      description: Human-readable message indicating details about
                        last transition.
                      type: string
                    reason:
                      description: Unique, one-word, CamelCase reason for the condition's
                        last transition.
                      type: string
                    status:
                      description: Status is the status of the condition. Can be True,
                        False, Unknown.
                      type: string
                    type:
                      description: Type is the type of the condition.
                      type: string
                  type: object
                type: array
              createTime:
                description: Output only. The creation timestamp of an inspectTemplate.
                format: date-time
                type: string
              locationId:
                description: Output only. The geographic location where this resource
                  is stored.
                type: string
              observedGeneration:
                description: ObservedGeneration is the generation of the resource
                  that was most recently observed by the Config Connector controller.
                  If this is equal to metadata.generation, then that means that the
                  current reported status reflects the most recent desired state of
                  the resource.
                type: integer
              updateTime:
                description: Output only. The last update timestamp of an inspectTemplate.
                format: date-time
                type: string
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: ""
    plural: ""
  conditions: []
  storedVersions: []
