Cloud Run API . namespaces . routes

Instance Methods

get(name, x__xgafv=None)

Rpc to get information about a route.

list(parent, labelSelector=None, includeUninitialized=None, x__xgafv=None, resourceVersion=None, limit=None, watch=None, continue=None, fieldSelector=None)

Rpc to list routes.

Method Details

get(name, x__xgafv=None)
Rpc to get information about a route.

Args:
  name: string, The name of the route being retrieved. If needed, replace
{namespace_id} with the project ID. (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Route is responsible for configuring ingress over a collection of Revisions.
      # Some of the Revisions a Route distributes traffic over may be specified by
      # referencing the Configuration responsible for creating them; in these cases
      # the Route is additionally responsible for monitoring the Configuration for
      # "latest ready" revision changes, and smoothly rolling out latest revisions.
      # See also:
      # https://github.com/knative/serving/blob/master/docs/spec/overview.md#route
      #
      # Cloud Run currently supports referencing a single Configuration to
      # automatically deploy the "latest ready" Revision from that Configuration.
    "status": { # RouteStatus communicates the observed state of the Route (from the # Status communicates the observed state of the Route (from the controller).
        # controller).
      "domain": "A String", # Domain holds the top-level domain that will distribute traffic over the
          # provided targets. It generally has the form
          # https://{route-hash}-{project-hash}-{cluster-level-suffix}.a.run.app
      "observedGeneration": 42, # ObservedGeneration is the 'Generation' of the Route that
          # was last processed by the controller.
          #
          # Clients polling for completed reconciliation should poll until
          # observedGeneration = metadata.generation and the Ready condition's status
          # is True or False.
          #
          # Note that providing a trafficTarget that only has a configurationName will
          # result in a Route that does not increment either its metadata.generation or
          # its observedGeneration, as new "latest ready" revisions from the
          # Configuration are processed without an update to the Route's spec.
      "traffic": [ # Traffic holds the configured traffic distribution.
          # These entries will always contain RevisionName references.
          # When ConfigurationName appears in the spec, this will hold the
          # LatestReadyRevisionName that we last observed.
        { # TrafficTarget holds a single entry of the routing table for a Route.
          "latestRevision": True or False, # LatestRevision may be optionally provided to indicate that the latest
              # ready Revision of the Configuration should be used for this traffic
              # target. When provided LatestRevision must be true if RevisionName is
              # empty; it must be false when RevisionName is non-empty.
              #
              # Not currently supported in Cloud Run.
              # +optional
          "name": "A String", # Name is optionally used to expose a dedicated hostname for referencing this
              # target exclusively.
              #
              # Not currently supported by Cloud Run.
              # +optional
          "url": "A String", # Output only. URL displays the URL for accessing named traffic targets. URL
              # is displayed in status, and is disallowed on spec. URL must contain a
              # scheme (e.g. http://) and a hostname, but may not contain anything else
              # (e.g. basic auth, url path, etc.
              #
              # Not currently supported in Cloud Run.
          "percent": 42, # Percent specifies percent of the traffic to this Revision or Configuration.
              # This defaults to zero if unspecified.
              #
              # Cloud Run currently requires 100 percent for a single ConfigurationName
              # TrafficTarget entry.
          "revisionName": "A String", # RevisionName of a specific revision to which to send this portion of
              # traffic. This is mutually exclusive with ConfigurationName.
              #
              # Providing RevisionName in spec is not currently supported by Cloud Run.
          "configurationName": "A String", # ConfigurationName of a configuration to whose latest revision we will
              # send this portion of traffic. When the "status.latestReadyRevisionName"
              # of the referenced configuration changes, we will automatically migrate
              # traffic from the prior "latest ready" revision to the new one. This field
              # is never set in Route's status, only its spec. This is mutually exclusive
              # with RevisionName.
              #
              # Cloud Run currently supports a single ConfigurationName.
          "tag": "A String", # Tag is optionally used to expose a dedicated url for referencing
              # this target exclusively.
              #
              # Not currently supported in Cloud Run.
              # +optional
        },
      ],
      "address": { # Information for connecting over HTTP(s). # Similar to domain, information on where the service is available on HTTP.
        "hostname": "A String",
      },
      "domainInternal": "A String", # For Cloud Run, identifical to domain.
      "conditions": [ # Conditions communicates information about ongoing/complete
          # reconciliation processes that bring the "spec" inline with the observed
          # state of the world.
        { # RouteCondition defines a readiness condition for a Route.
          "status": "A String", # Status of the condition, one of "True", "False", "Unknown".
          "severity": "A String", # How to interpret failures of this condition, one of Error, Warning, Info
              # +optional
          "lastTransitionTime": "A String", # Last time the condition transitioned from one status to another.
              # +optional
          "reason": "A String", # One-word CamelCase reason for the condition's last transition.
              # +optional
          "message": "A String", # Human-readable message indicating details about last transition.
              # +optional
          "type": "A String", # RouteConditionType is used to communicate the status of the reconciliation
              # process. See also:
              # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
              # Types include: "Ready".
        },
      ],
    },
    "kind": "A String", # The kind of this resource, in this case always "Route".
    "spec": { # RouteSpec holds the desired state of the Route (from the client). # Spec holds the desired state of the Route (from the client).
      "generation": 42, # Deprecated and not currently populated by Cloud Run. See
          # metadata.generation instead, which is the sequence number containing the
          # latest generation of the desired state.
          #
          # Read-only.
      "traffic": [ # Traffic specifies how to distribute traffic over a collection of Knative
          # Revisions and Configurations.
          # Cloud Run currently supports a single configurationName.
        { # TrafficTarget holds a single entry of the routing table for a Route.
          "latestRevision": True or False, # LatestRevision may be optionally provided to indicate that the latest
              # ready Revision of the Configuration should be used for this traffic
              # target. When provided LatestRevision must be true if RevisionName is
              # empty; it must be false when RevisionName is non-empty.
              #
              # Not currently supported in Cloud Run.
              # +optional
          "name": "A String", # Name is optionally used to expose a dedicated hostname for referencing this
              # target exclusively.
              #
              # Not currently supported by Cloud Run.
              # +optional
          "url": "A String", # Output only. URL displays the URL for accessing named traffic targets. URL
              # is displayed in status, and is disallowed on spec. URL must contain a
              # scheme (e.g. http://) and a hostname, but may not contain anything else
              # (e.g. basic auth, url path, etc.
              #
              # Not currently supported in Cloud Run.
          "percent": 42, # Percent specifies percent of the traffic to this Revision or Configuration.
              # This defaults to zero if unspecified.
              #
              # Cloud Run currently requires 100 percent for a single ConfigurationName
              # TrafficTarget entry.
          "revisionName": "A String", # RevisionName of a specific revision to which to send this portion of
              # traffic. This is mutually exclusive with ConfigurationName.
              #
              # Providing RevisionName in spec is not currently supported by Cloud Run.
          "configurationName": "A String", # ConfigurationName of a configuration to whose latest revision we will
              # send this portion of traffic. When the "status.latestReadyRevisionName"
              # of the referenced configuration changes, we will automatically migrate
              # traffic from the prior "latest ready" revision to the new one. This field
              # is never set in Route's status, only its spec. This is mutually exclusive
              # with RevisionName.
              #
              # Cloud Run currently supports a single ConfigurationName.
          "tag": "A String", # Tag is optionally used to expose a dedicated url for referencing
              # this target exclusively.
              #
              # Not currently supported in Cloud Run.
              # +optional
        },
      ],
    },
    "apiVersion": "A String", # The API version for this call such as "v1alpha1".
    "metadata": { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Route, including name, namespace, labels,
        # and annotations.
        # all objects users must create.
      "ownerReferences": [ # List of objects that own this object. If ALL objects in the list have
          # been deleted, this object will be garbage collected.
          # +optional
        { # OwnerReference contains enough information to let you identify an owning
            # object. Currently, an owning object must be in the same namespace, so there
            # is no namespace field.
          "kind": "A String", # Kind of the referent.
              # More info:
              # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
          "uid": "A String", # UID of the referent.
              # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
          "apiVersion": "A String", # API version of the referent.
          "controller": True or False, # If true, this reference points to the managing controller.
              # +optional
          "blockOwnerDeletion": True or False, # If true, AND if the owner has the "foregroundDeletion" finalizer, then
              # the owner cannot be deleted from the key-value store until this
              # reference is removed.
              # Defaults to false.
              # To set this field, a user needs "delete" permission of the owner,
              # otherwise 422 (Unprocessable Entity) will be returned.
              # +optional
          "name": "A String", # Name of the referent.
              # More info: http://kubernetes.io/docs/user-guide/identifiers#names
        },
      ],
      "name": "A String", # Name must be unique within a namespace, within a Cloud Run region.
          # Is required when creating
          # resources, although some resources may allow a client to request the
          # generation of an appropriate name automatically. Name is primarily intended
          # for creation idempotence and configuration definition. Cannot be updated.
          # More info: http://kubernetes.io/docs/user-guide/identifiers#names
          # +optional
      "deletionTimestamp": "A String", # DeletionTimestamp is RFC 3339 date and time at which this resource will be
          # deleted. This field is set by the server when a graceful deletion is
          # requested by the user, and is not directly settable by a client. The
          # resource is expected to be deleted (no longer visible from resource lists,
          # and not reachable by name) after the time in this field, once the
          # finalizers list is empty. As long as the finalizers list contains items,
          # deletion is blocked. Once the deletionTimestamp is set, this value may not
          # be unset or be set further into the future, although it may be shortened or
          # the resource may be deleted prior to this time. For example, a user may
          # request that a pod is deleted in 30 seconds. The Kubelet will react by
          # sending a graceful termination signal to the containers in the pod. After
          # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
          # to the container and after cleanup, remove the pod from the API. In the
          # presence of network partitions, this object may still exist after this
          # timestamp, until an administrator or automated process can determine the
          # resource is fully terminated.
          # If not set, graceful deletion of the object has not been requested.
          #
          # Populated by the system when a graceful deletion is requested.
          # Read-only.
          # More info:
          # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          # +optional
      "clusterName": "A String", # Not currently supported by Cloud Run.
          #
          # The name of the cluster which the object belongs to.
          # This is used to distinguish resources with same name and namespace in
          # different clusters. This field is not set anywhere right now and apiserver
          # is going to ignore it if set in create or update request. +optional
      "deletionGracePeriodSeconds": 42, # Not currently supported by Cloud Run.
          #
          # Number of seconds allowed for this object to gracefully terminate before
          # it will be removed from the system. Only set when deletionTimestamp is also
          # set. May only be shortened. Read-only. +optional
      "labels": { # Map of string keys and values that can be used to organize and categorize
          # (scope and select) objects. May match selectors of replication controllers
          # and routes.
          # More info: http://kubernetes.io/docs/user-guide/labels
          # +optional
        "a_key": "A String",
      },
      "namespace": "A String", # Namespace defines the space within each name must be unique, within a
          # Cloud Run region. In Cloud Run the namespace must be equal to either the
          # project ID or project number.
      "generation": 42, # A sequence number representing a specific generation of the desired state.
          # Populated by the system. Read-only.
          # +optional
      "finalizers": [ # Not currently supported by Cloud Run.
          #
          # Must be empty before the object is deleted from the registry. Each entry
          # is an identifier for the responsible component that will remove the entry
          # from the list. If the deletionTimestamp of the object is non-nil, entries
          # in this list can only be removed.
          # +optional
          # +patchStrategy=merge
        "A String",
      ],
      "initializers": { # Initializers tracks the progress of initialization. # Not currently supported by Cloud Run.
          #
          # An initializer is a controller which enforces some system invariant at
          # object creation time. This field is a list of initializers that have not
          # yet acted on this object. If nil or empty, this object has been completely
          # initialized. Otherwise, the object is considered uninitialized and is
          # hidden (in list/watch and get calls) from clients that haven't explicitly
          # asked to observe uninitialized objects.
          #
          # When an object is created, the system will populate this list with the
          # current set of initializers. Only privileged users may set or modify this
          # list. Once it is empty, it may not be modified further by any user.
        "pending": [ # Pending is a list of initializers that must execute in order before this
            # object is visible. When the last pending initializer is removed, and no
            # failing result is set, the initializers struct will be set to nil and the
            # object is considered as initialized and visible to all clients.
            # +patchMergeKey=name
            # +patchStrategy=merge
          { # Initializer is information about an initializer that has not yet completed.
            "name": "A String", # name of the process that is responsible for initializing this object.
          },
        ],
      },
      "resourceVersion": "A String", # An opaque value that represents the internal version of this object that
          # can be used by clients to determine when objects have changed. May be used
          # for optimistic concurrency, change detection, and the watch operation on a
          # resource or set of resources. Clients must treat these values as opaque and
          # passed unmodified back to the server. They may only be valid for a
          # particular resource or set of resources.
          #
          # Populated by the system.
          # Read-only.
          # Value must be treated as opaque by clients and .
          # More info:
          # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
          # +optional
      "generateName": "A String", # Not currently supported by Cloud Run.
          #
          # GenerateName is an optional prefix, used by the server, to generate a
          # unique name ONLY IF the Name field has not been provided. If this field is
          # used, the name returned to the client will be different than the name
          # passed. This value will also be combined with a unique suffix. The provided
          # value has the same validation rules as the Name field, and may be truncated
          # by the length of the suffix required to make the value unique on the
          # server.
          #
          # If this field is specified and the generated name exists, the server will
          # NOT return a 409 - instead, it will either return 201 Created or 500 with
          # Reason ServerTimeout indicating a unique name could not be found in the
          # time allotted, and the client should retry (optionally after the time
          # indicated in the Retry-After header).
          #
          # Applied only if Name is not specified.
          # More info:
          # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
          # +optional
          #  string generateName = 2;
      "creationTimestamp": "A String", # CreationTimestamp is a timestamp representing the server time when this
          # object was created. It is not guaranteed to be set in happens-before order
          # across separate operations. Clients may not set this value. It is
          # represented in RFC3339 form and is in UTC.
          #
          # Populated by the system.
          # Read-only.
          # Null for lists.
          # More info:
          # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
          # +optional
      "annotations": { # Annotations is an unstructured key value map stored with a resource that
          # may be set by external tools to store and retrieve arbitrary metadata. They
          # are not queryable and should be preserved when modifying objects. More
          # info: http://kubernetes.io/docs/user-guide/annotations +optional
        "a_key": "A String",
      },
      "selfLink": "A String", # SelfLink is a URL representing this object.
          # Populated by the system.
          # Read-only.
          # +optional
          #  string selfLink = 4;
      "uid": "A String", # UID is the unique in time and space value for this object. It is typically
          # generated by the server on successful creation of a resource and is not
          # allowed to change on PUT operations.
          #
          # Populated by the system.
          # Read-only.
          # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
          # +optional
    },
  }
list(parent, labelSelector=None, includeUninitialized=None, x__xgafv=None, resourceVersion=None, limit=None, watch=None, continue=None, fieldSelector=None)
Rpc to list routes.

Args:
  parent: string, The project ID or project number from which the routes should be listed. (required)
  labelSelector: string, Allows to filter resources based on a label. Supported operations are
=, !=, exists, in, and notIn.
  includeUninitialized: boolean, Not currently used by Cloud Run.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format
  resourceVersion: string, The baseline resource version from which the list or watch operation should
start. Not currently used by Cloud Run.
  limit: integer, The maximum number of records that should be returned.
  watch: boolean, Flag that indicates that the client expects to watch this resource as well.
Not currently used by Cloud Run.
  continue: string, Optional encoded string to continue paging.
  fieldSelector: string, Allows to filter resources based on a specific value for a field name.
Send this in a query string format. i.e. 'metadata.name%3Dlorem'.
Not currently used by Cloud Run.

Returns:
  An object of the form:

    { # ListRoutesResponse is a list of Route resources.
    "unreachable": [ # Locations that could not be reached.
      "A String",
    ],
    "kind": "A String", # The kind of this resource, in this case always "RouteList".
    "items": [ # List of Routes.
      { # Route is responsible for configuring ingress over a collection of Revisions.
          # Some of the Revisions a Route distributes traffic over may be specified by
          # referencing the Configuration responsible for creating them; in these cases
          # the Route is additionally responsible for monitoring the Configuration for
          # "latest ready" revision changes, and smoothly rolling out latest revisions.
          # See also:
          # https://github.com/knative/serving/blob/master/docs/spec/overview.md#route
          #
          # Cloud Run currently supports referencing a single Configuration to
          # automatically deploy the "latest ready" Revision from that Configuration.
        "status": { # RouteStatus communicates the observed state of the Route (from the # Status communicates the observed state of the Route (from the controller).
            # controller).
          "domain": "A String", # Domain holds the top-level domain that will distribute traffic over the
              # provided targets. It generally has the form
              # https://{route-hash}-{project-hash}-{cluster-level-suffix}.a.run.app
          "observedGeneration": 42, # ObservedGeneration is the 'Generation' of the Route that
              # was last processed by the controller.
              #
              # Clients polling for completed reconciliation should poll until
              # observedGeneration = metadata.generation and the Ready condition's status
              # is True or False.
              #
              # Note that providing a trafficTarget that only has a configurationName will
              # result in a Route that does not increment either its metadata.generation or
              # its observedGeneration, as new "latest ready" revisions from the
              # Configuration are processed without an update to the Route's spec.
          "traffic": [ # Traffic holds the configured traffic distribution.
              # These entries will always contain RevisionName references.
              # When ConfigurationName appears in the spec, this will hold the
              # LatestReadyRevisionName that we last observed.
            { # TrafficTarget holds a single entry of the routing table for a Route.
              "latestRevision": True or False, # LatestRevision may be optionally provided to indicate that the latest
                  # ready Revision of the Configuration should be used for this traffic
                  # target. When provided LatestRevision must be true if RevisionName is
                  # empty; it must be false when RevisionName is non-empty.
                  #
                  # Not currently supported in Cloud Run.
                  # +optional
              "name": "A String", # Name is optionally used to expose a dedicated hostname for referencing this
                  # target exclusively.
                  #
                  # Not currently supported by Cloud Run.
                  # +optional
              "url": "A String", # Output only. URL displays the URL for accessing named traffic targets. URL
                  # is displayed in status, and is disallowed on spec. URL must contain a
                  # scheme (e.g. http://) and a hostname, but may not contain anything else
                  # (e.g. basic auth, url path, etc.
                  #
                  # Not currently supported in Cloud Run.
              "percent": 42, # Percent specifies percent of the traffic to this Revision or Configuration.
                  # This defaults to zero if unspecified.
                  #
                  # Cloud Run currently requires 100 percent for a single ConfigurationName
                  # TrafficTarget entry.
              "revisionName": "A String", # RevisionName of a specific revision to which to send this portion of
                  # traffic. This is mutually exclusive with ConfigurationName.
                  #
                  # Providing RevisionName in spec is not currently supported by Cloud Run.
              "configurationName": "A String", # ConfigurationName of a configuration to whose latest revision we will
                  # send this portion of traffic. When the "status.latestReadyRevisionName"
                  # of the referenced configuration changes, we will automatically migrate
                  # traffic from the prior "latest ready" revision to the new one. This field
                  # is never set in Route's status, only its spec. This is mutually exclusive
                  # with RevisionName.
                  #
                  # Cloud Run currently supports a single ConfigurationName.
              "tag": "A String", # Tag is optionally used to expose a dedicated url for referencing
                  # this target exclusively.
                  #
                  # Not currently supported in Cloud Run.
                  # +optional
            },
          ],
          "address": { # Information for connecting over HTTP(s). # Similar to domain, information on where the service is available on HTTP.
            "hostname": "A String",
          },
          "domainInternal": "A String", # For Cloud Run, identifical to domain.
          "conditions": [ # Conditions communicates information about ongoing/complete
              # reconciliation processes that bring the "spec" inline with the observed
              # state of the world.
            { # RouteCondition defines a readiness condition for a Route.
              "status": "A String", # Status of the condition, one of "True", "False", "Unknown".
              "severity": "A String", # How to interpret failures of this condition, one of Error, Warning, Info
                  # +optional
              "lastTransitionTime": "A String", # Last time the condition transitioned from one status to another.
                  # +optional
              "reason": "A String", # One-word CamelCase reason for the condition's last transition.
                  # +optional
              "message": "A String", # Human-readable message indicating details about last transition.
                  # +optional
              "type": "A String", # RouteConditionType is used to communicate the status of the reconciliation
                  # process. See also:
                  # https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting
                  # Types include: "Ready".
            },
          ],
        },
        "kind": "A String", # The kind of this resource, in this case always "Route".
        "spec": { # RouteSpec holds the desired state of the Route (from the client). # Spec holds the desired state of the Route (from the client).
          "generation": 42, # Deprecated and not currently populated by Cloud Run. See
              # metadata.generation instead, which is the sequence number containing the
              # latest generation of the desired state.
              #
              # Read-only.
          "traffic": [ # Traffic specifies how to distribute traffic over a collection of Knative
              # Revisions and Configurations.
              # Cloud Run currently supports a single configurationName.
            { # TrafficTarget holds a single entry of the routing table for a Route.
              "latestRevision": True or False, # LatestRevision may be optionally provided to indicate that the latest
                  # ready Revision of the Configuration should be used for this traffic
                  # target. When provided LatestRevision must be true if RevisionName is
                  # empty; it must be false when RevisionName is non-empty.
                  #
                  # Not currently supported in Cloud Run.
                  # +optional
              "name": "A String", # Name is optionally used to expose a dedicated hostname for referencing this
                  # target exclusively.
                  #
                  # Not currently supported by Cloud Run.
                  # +optional
              "url": "A String", # Output only. URL displays the URL for accessing named traffic targets. URL
                  # is displayed in status, and is disallowed on spec. URL must contain a
                  # scheme (e.g. http://) and a hostname, but may not contain anything else
                  # (e.g. basic auth, url path, etc.
                  #
                  # Not currently supported in Cloud Run.
              "percent": 42, # Percent specifies percent of the traffic to this Revision or Configuration.
                  # This defaults to zero if unspecified.
                  #
                  # Cloud Run currently requires 100 percent for a single ConfigurationName
                  # TrafficTarget entry.
              "revisionName": "A String", # RevisionName of a specific revision to which to send this portion of
                  # traffic. This is mutually exclusive with ConfigurationName.
                  #
                  # Providing RevisionName in spec is not currently supported by Cloud Run.
              "configurationName": "A String", # ConfigurationName of a configuration to whose latest revision we will
                  # send this portion of traffic. When the "status.latestReadyRevisionName"
                  # of the referenced configuration changes, we will automatically migrate
                  # traffic from the prior "latest ready" revision to the new one. This field
                  # is never set in Route's status, only its spec. This is mutually exclusive
                  # with RevisionName.
                  #
                  # Cloud Run currently supports a single ConfigurationName.
              "tag": "A String", # Tag is optionally used to expose a dedicated url for referencing
                  # this target exclusively.
                  #
                  # Not currently supported in Cloud Run.
                  # +optional
            },
          ],
        },
        "apiVersion": "A String", # The API version for this call such as "v1alpha1".
        "metadata": { # ObjectMeta is metadata that all persisted resources must have, which includes # Metadata associated with this Route, including name, namespace, labels,
            # and annotations.
            # all objects users must create.
          "ownerReferences": [ # List of objects that own this object. If ALL objects in the list have
              # been deleted, this object will be garbage collected.
              # +optional
            { # OwnerReference contains enough information to let you identify an owning
                # object. Currently, an owning object must be in the same namespace, so there
                # is no namespace field.
              "kind": "A String", # Kind of the referent.
                  # More info:
                  # https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
              "uid": "A String", # UID of the referent.
                  # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
              "apiVersion": "A String", # API version of the referent.
              "controller": True or False, # If true, this reference points to the managing controller.
                  # +optional
              "blockOwnerDeletion": True or False, # If true, AND if the owner has the "foregroundDeletion" finalizer, then
                  # the owner cannot be deleted from the key-value store until this
                  # reference is removed.
                  # Defaults to false.
                  # To set this field, a user needs "delete" permission of the owner,
                  # otherwise 422 (Unprocessable Entity) will be returned.
                  # +optional
              "name": "A String", # Name of the referent.
                  # More info: http://kubernetes.io/docs/user-guide/identifiers#names
            },
          ],
          "name": "A String", # Name must be unique within a namespace, within a Cloud Run region.
              # Is required when creating
              # resources, although some resources may allow a client to request the
              # generation of an appropriate name automatically. Name is primarily intended
              # for creation idempotence and configuration definition. Cannot be updated.
              # More info: http://kubernetes.io/docs/user-guide/identifiers#names
              # +optional
          "deletionTimestamp": "A String", # DeletionTimestamp is RFC 3339 date and time at which this resource will be
              # deleted. This field is set by the server when a graceful deletion is
              # requested by the user, and is not directly settable by a client. The
              # resource is expected to be deleted (no longer visible from resource lists,
              # and not reachable by name) after the time in this field, once the
              # finalizers list is empty. As long as the finalizers list contains items,
              # deletion is blocked. Once the deletionTimestamp is set, this value may not
              # be unset or be set further into the future, although it may be shortened or
              # the resource may be deleted prior to this time. For example, a user may
              # request that a pod is deleted in 30 seconds. The Kubelet will react by
              # sending a graceful termination signal to the containers in the pod. After
              # that 30 seconds, the Kubelet will send a hard termination signal (SIGKILL)
              # to the container and after cleanup, remove the pod from the API. In the
              # presence of network partitions, this object may still exist after this
              # timestamp, until an administrator or automated process can determine the
              # resource is fully terminated.
              # If not set, graceful deletion of the object has not been requested.
              #
              # Populated by the system when a graceful deletion is requested.
              # Read-only.
              # More info:
              # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
              # +optional
          "clusterName": "A String", # Not currently supported by Cloud Run.
              #
              # The name of the cluster which the object belongs to.
              # This is used to distinguish resources with same name and namespace in
              # different clusters. This field is not set anywhere right now and apiserver
              # is going to ignore it if set in create or update request. +optional
          "deletionGracePeriodSeconds": 42, # Not currently supported by Cloud Run.
              #
              # Number of seconds allowed for this object to gracefully terminate before
              # it will be removed from the system. Only set when deletionTimestamp is also
              # set. May only be shortened. Read-only. +optional
          "labels": { # Map of string keys and values that can be used to organize and categorize
              # (scope and select) objects. May match selectors of replication controllers
              # and routes.
              # More info: http://kubernetes.io/docs/user-guide/labels
              # +optional
            "a_key": "A String",
          },
          "namespace": "A String", # Namespace defines the space within each name must be unique, within a
              # Cloud Run region. In Cloud Run the namespace must be equal to either the
              # project ID or project number.
          "generation": 42, # A sequence number representing a specific generation of the desired state.
              # Populated by the system. Read-only.
              # +optional
          "finalizers": [ # Not currently supported by Cloud Run.
              #
              # Must be empty before the object is deleted from the registry. Each entry
              # is an identifier for the responsible component that will remove the entry
              # from the list. If the deletionTimestamp of the object is non-nil, entries
              # in this list can only be removed.
              # +optional
              # +patchStrategy=merge
            "A String",
          ],
          "initializers": { # Initializers tracks the progress of initialization. # Not currently supported by Cloud Run.
              #
              # An initializer is a controller which enforces some system invariant at
              # object creation time. This field is a list of initializers that have not
              # yet acted on this object. If nil or empty, this object has been completely
              # initialized. Otherwise, the object is considered uninitialized and is
              # hidden (in list/watch and get calls) from clients that haven't explicitly
              # asked to observe uninitialized objects.
              #
              # When an object is created, the system will populate this list with the
              # current set of initializers. Only privileged users may set or modify this
              # list. Once it is empty, it may not be modified further by any user.
            "pending": [ # Pending is a list of initializers that must execute in order before this
                # object is visible. When the last pending initializer is removed, and no
                # failing result is set, the initializers struct will be set to nil and the
                # object is considered as initialized and visible to all clients.
                # +patchMergeKey=name
                # +patchStrategy=merge
              { # Initializer is information about an initializer that has not yet completed.
                "name": "A String", # name of the process that is responsible for initializing this object.
              },
            ],
          },
          "resourceVersion": "A String", # An opaque value that represents the internal version of this object that
              # can be used by clients to determine when objects have changed. May be used
              # for optimistic concurrency, change detection, and the watch operation on a
              # resource or set of resources. Clients must treat these values as opaque and
              # passed unmodified back to the server. They may only be valid for a
              # particular resource or set of resources.
              #
              # Populated by the system.
              # Read-only.
              # Value must be treated as opaque by clients and .
              # More info:
              # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
              # +optional
          "generateName": "A String", # Not currently supported by Cloud Run.
              #
              # GenerateName is an optional prefix, used by the server, to generate a
              # unique name ONLY IF the Name field has not been provided. If this field is
              # used, the name returned to the client will be different than the name
              # passed. This value will also be combined with a unique suffix. The provided
              # value has the same validation rules as the Name field, and may be truncated
              # by the length of the suffix required to make the value unique on the
              # server.
              #
              # If this field is specified and the generated name exists, the server will
              # NOT return a 409 - instead, it will either return 201 Created or 500 with
              # Reason ServerTimeout indicating a unique name could not be found in the
              # time allotted, and the client should retry (optionally after the time
              # indicated in the Retry-After header).
              #
              # Applied only if Name is not specified.
              # More info:
              # https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency
              # +optional
              #  string generateName = 2;
          "creationTimestamp": "A String", # CreationTimestamp is a timestamp representing the server time when this
              # object was created. It is not guaranteed to be set in happens-before order
              # across separate operations. Clients may not set this value. It is
              # represented in RFC3339 form and is in UTC.
              #
              # Populated by the system.
              # Read-only.
              # Null for lists.
              # More info:
              # https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
              # +optional
          "annotations": { # Annotations is an unstructured key value map stored with a resource that
              # may be set by external tools to store and retrieve arbitrary metadata. They
              # are not queryable and should be preserved when modifying objects. More
              # info: http://kubernetes.io/docs/user-guide/annotations +optional
            "a_key": "A String",
          },
          "selfLink": "A String", # SelfLink is a URL representing this object.
              # Populated by the system.
              # Read-only.
              # +optional
              #  string selfLink = 4;
          "uid": "A String", # UID is the unique in time and space value for this object. It is typically
              # generated by the server on successful creation of a resource and is not
              # allowed to change on PUT operations.
              #
              # Populated by the system.
              # Read-only.
              # More info: http://kubernetes.io/docs/user-guide/identifiers#uids
              # +optional
        },
      },
    ],
    "apiVersion": "A String", # The API version for this call such as "v1alpha1".
    "metadata": { # ListMeta describes metadata that synthetic resources must have, including # Metadata associated with this Route list.
        # lists and various status objects. A resource may have only one of
        # {ObjectMeta, ListMeta}.
      "continue": "A String", # continue may be set if the user set a limit on the number of items
          # returned, and indicates that the server has more data available. The value
          # is opaque and may be used to issue another request to the endpoint that
          # served this list to retrieve the next set of available objects. Continuing
          # a list may not be possible if the server configuration has changed or more
          # than a few minutes have passed. The resourceVersion field returned when
          # using this continue value will be identical to the value in the first
          # response.
      "selfLink": "A String", # SelfLink is a URL representing this object.
          # Populated by the system.
          # Read-only.
          # +optional
      "resourceVersion": "A String", # String that identifies the server's internal version of this object that
          # can be used by clients to determine when objects have changed. Value must
          # be treated as opaque by clients and passed unmodified back to the server.
          # Populated by the system.
          # Read-only.
          # More info:
          # https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
          # +optional
    },
  }