$schema: "http://json-schema.org/draft-06/schema#"

title: networkservices v1alpha1 HostRule export schema
description: A gcloud export/import command YAML validation schema.
type: object
required:
- hosts
- pathMatcher
additionalProperties: false
properties:
  COMMENT:
    type: object
    description: User specified info ignored by gcloud import.
    additionalProperties: false
    properties:
      template-id:
        type: string
      region:
        type: string
      description:
        type: string
      date:
        type: string
      version:
        type: string
  UNKNOWN:
    type: array
    description: Unknown API fields that cannot be imported.
    items:
      type: string
  description:
    description: A human-readable description of the `HostRule` value.
    type: string
  hosts:
    description: |-
      A list of host patterns to match. Host patterns must be valid hostnames.
      Ports are not allowed. Wildcard hosts are supported in the suffix or
      prefix form. `*` matches any string of `([a-z0-9-.]*)`. It does not match
      an empty string. When multiple hosts are specified, hosts are matched in
      the following priority: 1. Exact domain names: `www.foo.com`. 2. Suffix
      domain wildcards: `*.foo.com` or `*-bar.foo.com`. 3. Prefix domain
      wildcards: `foo.*` or `foo-*`. 4. Special wildcard `*` matching any
      domain. The wildcard doesn't match the empty string. For example,
      `*-bar.foo.com` matches `baz-bar.foo.com` but not `-bar.foo.com`. The
      longest wildcards match first. Only a single host in the entire service
      can match on ``*``. A domain must be unique across all configured hosts
      within a service. Hosts are matched against the HTTP `Host` header, or for
      HTTP/2 and HTTP/3, the `:authority` header, in the incoming request. You
      can specify up to 10 hosts.
    type: array
    items:
      type: string
  pathMatcher:
    description: |-
      The name of the PathMatcher associated with this `HostRule`.
    type: string
