blob: 034a192e81bb23aec96bb2f59c0fd881960fc0df [file] [log] [blame]
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="composer_v1.html">Cloud Composer API</a> . <a href="composer_v1.projects.html">projects</a> . <a href="composer_v1.projects.locations.html">locations</a> . <a href="composer_v1.projects.locations.environments.html">environments</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
<p class="firstline">Create a new environment.</p>
<p class="toc_element">
<code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Delete an environment.</p>
<p class="toc_element">
<code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Get an existing environment.</p>
<p class="toc_element">
<code><a href="#list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
<p class="firstline">List environments.</p>
<p class="toc_element">
<code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<p class="toc_element">
<code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
<p class="firstline">Update an environment.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
<pre>Create a new environment.
Args:
parent: string, The parent must be of the form
&quot;projects/{projectId}/locations/{locationId}&quot;. (required)
body: object, The request body.
The object takes the form of:
{ # An environment for running orchestration tasks.
&quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
# This value is generated when the environment is created.
&quot;labels&quot;: { # Optional. User-defined labels for this environment.
# The labels map can contain no more than 64 entries. Entries of the labels
# map are UTF8 strings that comply with the following restrictions:
#
# * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
# * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
# * Both keys and values are additionally constrained to be &lt;= 128 bytes in
# size.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
&quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
&quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
&quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
# [Airflow web
# interface](/composer/docs/how-to/accessing/airflow-web-interface)).
&quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
# environment.
&quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
# If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
# set to true.
&quot;privateClusterConfig&quot;: { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
# Cloud Composer environment.
# environment.
&quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
# denied.
&quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
# range is used for assigning internal IP addresses to the GKE cluster
# master or set of masters and to the internal load balancer virtual IP.
# This range must not overlap with any other ranges in use
# within the cluster&#x27;s network.
&quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
# left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
},
&quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
&quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
# to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
# `cloud_sql_ipv4_cidr_block`.
&quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
# Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
},
&quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
&quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
#
# Property keys contain the section and property names, separated by a
# hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
# not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
# square brackets (&quot;]&quot;). The property name must not be empty and must not
# contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
# must not contain a period (&quot;.&quot;). Apache Airflow configuration property
# names must be written in
# [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
# contain any character, and can be written in any lower/upper case format.
#
# Certain Apache Airflow configuration property values are
# [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
# and cannot be overridden.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
# updated.
&quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
# This encapsulates both the version of Cloud Composer functionality and the
# version of Apache Airflow. It must match the regular expression
# `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
# When used as input, the server also checks if the provided version is
# supported and denies the request for an unsupported version.
#
# The Cloud Composer portion of the version is a
# [semantic version](https://semver.org) or `latest`. When the patch version
# is omitted, the current Cloud Composer patch version is selected.
# When `latest` is provided instead of an explicit version number,
# the server replaces `latest` with the current Cloud Composer version
# and stores that version number in the same field.
#
# The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
# official Apache Airflow repository
# [release name](https://github.com/apache/incubator-airflow/releases).
#
# See also [Version
# List](/composer/docs/concepts/versioning/composer-versions).
&quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
# the environment.
#
# Keys refer to the lowercase package name such as &quot;numpy&quot;
# and values are the lowercase extras and version specifier such as
# &quot;==1.12.0&quot;, &quot;[devel,gcp_api]&quot;, or &quot;[devel]&gt;=1.8.2, &lt;1.9.2&quot;. To specify a
# package without pinning it to a version specifier, use the empty string as
# the value.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Environment variable names must match the regular expression
# `a-zA-Z_*`. They cannot specify Apache Airflow
# software configuration overrides (they cannot match the regular expression
# `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
# following reserved names:
#
# * `AIRFLOW_HOME`
# * `C_FORCE_ROOT`
# * `CONTAINER_NAME`
# * `DAGS_FOLDER`
# * `GCP_PROJECT`
# * `GCS_BUCKET`
# * `GKE_CLUSTER_NAME`
# * `SQL_DATABASE`
# * `SQL_INSTANCE`
# * `SQL_PASSWORD`
# * `SQL_PROJECT`
# * `SQL_REGION`
# * `SQL_USER`
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
# used to run this environment.
&quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
# the Apache Airflow software.
&quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
# VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
# service account is used. Cannot be updated.
&quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
# node VMs. If `oauth_scopes` is empty, defaults to
# [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
&quot;A String&quot;,
],
&quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
# [machine type](/compute/docs/machine-types) used for cluster instances,
# specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
#
# The `machineType` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.location` are specified,
# this `machineType` must belong to the `nodeConfig.location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If exactly one of this field and `nodeConfig.location` is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
#
# The `machineTypeId` must not be a [shared-core machine
# type](/compute/docs/machine-types#sharedcore).
#
# If this field is unspecified, the `machineTypeId` defaults
# to &quot;n1-standard-1&quot;.
&quot;ipAllocationPolicy&quot;: { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
# GKE cluster running the Apache Airflow software.
&quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
# the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
# GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
# IP addresses to pods.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
# IP addresses to the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
# If `true`, a VPC-native cluster is created.
},
&quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
# to deploy the VMs used to run the Apache Airflow software, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}&quot;.
#
# This `location` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.machineType` are specified,
# `nodeConfig.machineType` must belong to this `location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If only one field (`location` or `nodeConfig.machineType`) is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
&quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
#
# If a subnetwork is provided, `nodeConfig.network` must also be provided,
# and the subnetwork must belong to the enclosing environment&#x27;s project and
# location.
&quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
# If unspecified, defaults to 100GB. Cannot be updated.
&quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
# to identify valid sources or targets for network firewalls. Each tag within
# the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
# Cannot be updated.
&quot;A String&quot;,
],
&quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/global/networks/{networkId}&quot;.
#
# [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
# network must belong to the environment&#x27;s project. If unspecified, the
# &quot;default&quot; network ID in the environment&#x27;s project is used. If a
# [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
# is provided, `nodeConfig.subnetwork` must also be provided.
},
&quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
# Storage objects reside in a flat namespace, a hierarchical file tree
# can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
# this environment reside in a simulated directory with the given prefix.
},
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
&quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
&quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
# &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
#
# EnvironmentId must start with a lowercase letter followed by up to 63
# lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
}
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a
# network API call.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
# originally returns it. If you use the default HTTP mapping, the
# `name` should be a resource name ending with `operations/{unique_id}`.
&quot;response&quot;: { # The normal response of the operation in case of success. If the original
# method returns no data on success, such as `Delete`, the response is
# `google.protobuf.Empty`. If the original method is standard
# `Get`/`Create`/`Update`, the response should be the resource. For other
# methods, the response should have the type `XxxResponse`, where `Xxx`
# is the original method name. For example, if the original method name
# is `TakeSnapshot()`, the inferred response type is
# `TakeSnapshotResponse`.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
# contains progress information and common metadata such as create time.
# Some services might not provide such metadata. Any method that returns a
# long-running operation should document the metadata type, if any.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
# If `true`, the operation is completed, and either `error` or `response` is
# available.
&quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
# different programming environments, including REST APIs and RPC APIs. It is
# used by [gRPC](https://github.com/grpc). Each `Status` message contains
# three pieces of data: error code, error message, and error details.
#
# You can find out more about this error model and how to work with it in the
# [API Design Guide](https://cloud.google.com/apis/design/errors).
&quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
{
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
],
&quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
# user-facing error message should be localized and sent in the
# google.rpc.Status.details field, or localized by the client.
&quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
},
}</pre>
</div>
<div class="method">
<code class="details" id="delete">delete(name, x__xgafv=None)</code>
<pre>Delete an environment.
Args:
name: string, The environment to delete, in the form:
&quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot; (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a
# network API call.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
# originally returns it. If you use the default HTTP mapping, the
# `name` should be a resource name ending with `operations/{unique_id}`.
&quot;response&quot;: { # The normal response of the operation in case of success. If the original
# method returns no data on success, such as `Delete`, the response is
# `google.protobuf.Empty`. If the original method is standard
# `Get`/`Create`/`Update`, the response should be the resource. For other
# methods, the response should have the type `XxxResponse`, where `Xxx`
# is the original method name. For example, if the original method name
# is `TakeSnapshot()`, the inferred response type is
# `TakeSnapshotResponse`.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
# contains progress information and common metadata such as create time.
# Some services might not provide such metadata. Any method that returns a
# long-running operation should document the metadata type, if any.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
# If `true`, the operation is completed, and either `error` or `response` is
# available.
&quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
# different programming environments, including REST APIs and RPC APIs. It is
# used by [gRPC](https://github.com/grpc). Each `Status` message contains
# three pieces of data: error code, error message, and error details.
#
# You can find out more about this error model and how to work with it in the
# [API Design Guide](https://cloud.google.com/apis/design/errors).
&quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
{
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
],
&quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
# user-facing error message should be localized and sent in the
# google.rpc.Status.details field, or localized by the client.
&quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
},
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(name, x__xgafv=None)</code>
<pre>Get an existing environment.
Args:
name: string, The resource name of the environment to get, in the form:
&quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot; (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # An environment for running orchestration tasks.
&quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
# This value is generated when the environment is created.
&quot;labels&quot;: { # Optional. User-defined labels for this environment.
# The labels map can contain no more than 64 entries. Entries of the labels
# map are UTF8 strings that comply with the following restrictions:
#
# * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
# * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
# * Both keys and values are additionally constrained to be &lt;= 128 bytes in
# size.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
&quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
&quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
&quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
# [Airflow web
# interface](/composer/docs/how-to/accessing/airflow-web-interface)).
&quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
# environment.
&quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
# If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
# set to true.
&quot;privateClusterConfig&quot;: { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
# Cloud Composer environment.
# environment.
&quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
# denied.
&quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
# range is used for assigning internal IP addresses to the GKE cluster
# master or set of masters and to the internal load balancer virtual IP.
# This range must not overlap with any other ranges in use
# within the cluster&#x27;s network.
&quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
# left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
},
&quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
&quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
# to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
# `cloud_sql_ipv4_cidr_block`.
&quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
# Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
},
&quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
&quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
#
# Property keys contain the section and property names, separated by a
# hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
# not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
# square brackets (&quot;]&quot;). The property name must not be empty and must not
# contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
# must not contain a period (&quot;.&quot;). Apache Airflow configuration property
# names must be written in
# [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
# contain any character, and can be written in any lower/upper case format.
#
# Certain Apache Airflow configuration property values are
# [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
# and cannot be overridden.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
# updated.
&quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
# This encapsulates both the version of Cloud Composer functionality and the
# version of Apache Airflow. It must match the regular expression
# `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
# When used as input, the server also checks if the provided version is
# supported and denies the request for an unsupported version.
#
# The Cloud Composer portion of the version is a
# [semantic version](https://semver.org) or `latest`. When the patch version
# is omitted, the current Cloud Composer patch version is selected.
# When `latest` is provided instead of an explicit version number,
# the server replaces `latest` with the current Cloud Composer version
# and stores that version number in the same field.
#
# The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
# official Apache Airflow repository
# [release name](https://github.com/apache/incubator-airflow/releases).
#
# See also [Version
# List](/composer/docs/concepts/versioning/composer-versions).
&quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
# the environment.
#
# Keys refer to the lowercase package name such as &quot;numpy&quot;
# and values are the lowercase extras and version specifier such as
# &quot;==1.12.0&quot;, &quot;[devel,gcp_api]&quot;, or &quot;[devel]&gt;=1.8.2, &lt;1.9.2&quot;. To specify a
# package without pinning it to a version specifier, use the empty string as
# the value.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Environment variable names must match the regular expression
# `a-zA-Z_*`. They cannot specify Apache Airflow
# software configuration overrides (they cannot match the regular expression
# `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
# following reserved names:
#
# * `AIRFLOW_HOME`
# * `C_FORCE_ROOT`
# * `CONTAINER_NAME`
# * `DAGS_FOLDER`
# * `GCP_PROJECT`
# * `GCS_BUCKET`
# * `GKE_CLUSTER_NAME`
# * `SQL_DATABASE`
# * `SQL_INSTANCE`
# * `SQL_PASSWORD`
# * `SQL_PROJECT`
# * `SQL_REGION`
# * `SQL_USER`
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
# used to run this environment.
&quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
# the Apache Airflow software.
&quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
# VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
# service account is used. Cannot be updated.
&quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
# node VMs. If `oauth_scopes` is empty, defaults to
# [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
&quot;A String&quot;,
],
&quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
# [machine type](/compute/docs/machine-types) used for cluster instances,
# specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
#
# The `machineType` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.location` are specified,
# this `machineType` must belong to the `nodeConfig.location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If exactly one of this field and `nodeConfig.location` is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
#
# The `machineTypeId` must not be a [shared-core machine
# type](/compute/docs/machine-types#sharedcore).
#
# If this field is unspecified, the `machineTypeId` defaults
# to &quot;n1-standard-1&quot;.
&quot;ipAllocationPolicy&quot;: { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
# GKE cluster running the Apache Airflow software.
&quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
# the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
# GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
# IP addresses to pods.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
# IP addresses to the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
# If `true`, a VPC-native cluster is created.
},
&quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
# to deploy the VMs used to run the Apache Airflow software, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}&quot;.
#
# This `location` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.machineType` are specified,
# `nodeConfig.machineType` must belong to this `location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If only one field (`location` or `nodeConfig.machineType`) is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
&quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
#
# If a subnetwork is provided, `nodeConfig.network` must also be provided,
# and the subnetwork must belong to the enclosing environment&#x27;s project and
# location.
&quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
# If unspecified, defaults to 100GB. Cannot be updated.
&quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
# to identify valid sources or targets for network firewalls. Each tag within
# the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
# Cannot be updated.
&quot;A String&quot;,
],
&quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/global/networks/{networkId}&quot;.
#
# [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
# network must belong to the environment&#x27;s project. If unspecified, the
# &quot;default&quot; network ID in the environment&#x27;s project is used. If a
# [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
# is provided, `nodeConfig.subnetwork` must also be provided.
},
&quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
# Storage objects reside in a flat namespace, a hierarchical file tree
# can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
# this environment reside in a simulated directory with the given prefix.
},
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
&quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
&quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
# &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
#
# EnvironmentId must start with a lowercase letter followed by up to 63
# lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</code>
<pre>List environments.
Args:
parent: string, List environments in the given project and location, in the form:
&quot;projects/{projectId}/locations/{locationId}&quot; (required)
pageToken: string, The next_page_token value returned from a previous List request, if any.
pageSize: integer, The maximum number of environments to return.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # The environments in a project and location.
&quot;nextPageToken&quot;: &quot;A String&quot;, # The page token used to query for the next page if one exists.
&quot;environments&quot;: [ # The list of environments returned by a ListEnvironmentsRequest.
{ # An environment for running orchestration tasks.
&quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
# This value is generated when the environment is created.
&quot;labels&quot;: { # Optional. User-defined labels for this environment.
# The labels map can contain no more than 64 entries. Entries of the labels
# map are UTF8 strings that comply with the following restrictions:
#
# * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
# * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
# * Both keys and values are additionally constrained to be &lt;= 128 bytes in
# size.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
&quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
&quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
&quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
# [Airflow web
# interface](/composer/docs/how-to/accessing/airflow-web-interface)).
&quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
# environment.
&quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
# If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
# set to true.
&quot;privateClusterConfig&quot;: { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
# Cloud Composer environment.
# environment.
&quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
# denied.
&quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
# range is used for assigning internal IP addresses to the GKE cluster
# master or set of masters and to the internal load balancer virtual IP.
# This range must not overlap with any other ranges in use
# within the cluster&#x27;s network.
&quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
# left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
},
&quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
&quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
# to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
# `cloud_sql_ipv4_cidr_block`.
&quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
# Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
},
&quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
&quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
#
# Property keys contain the section and property names, separated by a
# hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
# not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
# square brackets (&quot;]&quot;). The property name must not be empty and must not
# contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
# must not contain a period (&quot;.&quot;). Apache Airflow configuration property
# names must be written in
# [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
# contain any character, and can be written in any lower/upper case format.
#
# Certain Apache Airflow configuration property values are
# [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
# and cannot be overridden.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
# updated.
&quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
# This encapsulates both the version of Cloud Composer functionality and the
# version of Apache Airflow. It must match the regular expression
# `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
# When used as input, the server also checks if the provided version is
# supported and denies the request for an unsupported version.
#
# The Cloud Composer portion of the version is a
# [semantic version](https://semver.org) or `latest`. When the patch version
# is omitted, the current Cloud Composer patch version is selected.
# When `latest` is provided instead of an explicit version number,
# the server replaces `latest` with the current Cloud Composer version
# and stores that version number in the same field.
#
# The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
# official Apache Airflow repository
# [release name](https://github.com/apache/incubator-airflow/releases).
#
# See also [Version
# List](/composer/docs/concepts/versioning/composer-versions).
&quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
# the environment.
#
# Keys refer to the lowercase package name such as &quot;numpy&quot;
# and values are the lowercase extras and version specifier such as
# &quot;==1.12.0&quot;, &quot;[devel,gcp_api]&quot;, or &quot;[devel]&gt;=1.8.2, &lt;1.9.2&quot;. To specify a
# package without pinning it to a version specifier, use the empty string as
# the value.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Environment variable names must match the regular expression
# `a-zA-Z_*`. They cannot specify Apache Airflow
# software configuration overrides (they cannot match the regular expression
# `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
# following reserved names:
#
# * `AIRFLOW_HOME`
# * `C_FORCE_ROOT`
# * `CONTAINER_NAME`
# * `DAGS_FOLDER`
# * `GCP_PROJECT`
# * `GCS_BUCKET`
# * `GKE_CLUSTER_NAME`
# * `SQL_DATABASE`
# * `SQL_INSTANCE`
# * `SQL_PASSWORD`
# * `SQL_PROJECT`
# * `SQL_REGION`
# * `SQL_USER`
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
# used to run this environment.
&quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
# the Apache Airflow software.
&quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
# VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
# service account is used. Cannot be updated.
&quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
# node VMs. If `oauth_scopes` is empty, defaults to
# [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
&quot;A String&quot;,
],
&quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
# [machine type](/compute/docs/machine-types) used for cluster instances,
# specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
#
# The `machineType` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.location` are specified,
# this `machineType` must belong to the `nodeConfig.location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If exactly one of this field and `nodeConfig.location` is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
#
# The `machineTypeId` must not be a [shared-core machine
# type](/compute/docs/machine-types#sharedcore).
#
# If this field is unspecified, the `machineTypeId` defaults
# to &quot;n1-standard-1&quot;.
&quot;ipAllocationPolicy&quot;: { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
# GKE cluster running the Apache Airflow software.
&quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
# the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
# GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
# IP addresses to pods.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
# IP addresses to the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
# If `true`, a VPC-native cluster is created.
},
&quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
# to deploy the VMs used to run the Apache Airflow software, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}&quot;.
#
# This `location` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.machineType` are specified,
# `nodeConfig.machineType` must belong to this `location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If only one field (`location` or `nodeConfig.machineType`) is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
&quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
#
# If a subnetwork is provided, `nodeConfig.network` must also be provided,
# and the subnetwork must belong to the enclosing environment&#x27;s project and
# location.
&quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
# If unspecified, defaults to 100GB. Cannot be updated.
&quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
# to identify valid sources or targets for network firewalls. Each tag within
# the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
# Cannot be updated.
&quot;A String&quot;,
],
&quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/global/networks/{networkId}&quot;.
#
# [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
# network must belong to the environment&#x27;s project. If unspecified, the
# &quot;default&quot; network ID in the environment&#x27;s project is used. If a
# [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
# is provided, `nodeConfig.subnetwork` must also be provided.
},
&quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
# Storage objects reside in a flat namespace, a hierarchical file tree
# can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
# this environment reside in a simulated directory with the given prefix.
},
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
&quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
&quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
# &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
#
# EnvironmentId must start with a lowercase letter followed by up to 63
# lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="list_next">list_next(previous_request, previous_response)</code>
<pre>Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call &#x27;execute()&#x27; on to request the next
page. Returns None if there are no more items in the collection.
</pre>
</div>
<div class="method">
<code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
<pre>Update an environment.
Args:
name: string, The relative resource name of the environment to update, in the form:
&quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot; (required)
body: object, The request body.
The object takes the form of:
{ # An environment for running orchestration tasks.
&quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
# This value is generated when the environment is created.
&quot;labels&quot;: { # Optional. User-defined labels for this environment.
# The labels map can contain no more than 64 entries. Entries of the labels
# map are UTF8 strings that comply with the following restrictions:
#
# * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
# * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
# * Both keys and values are additionally constrained to be &lt;= 128 bytes in
# size.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
&quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
&quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
&quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
# [Airflow web
# interface](/composer/docs/how-to/accessing/airflow-web-interface)).
&quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
# environment.
&quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
# If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
# set to true.
&quot;privateClusterConfig&quot;: { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
# Cloud Composer environment.
# environment.
&quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
# denied.
&quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
# range is used for assigning internal IP addresses to the GKE cluster
# master or set of masters and to the internal load balancer virtual IP.
# This range must not overlap with any other ranges in use
# within the cluster&#x27;s network.
&quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
# left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
},
&quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
&quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
# to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
# `cloud_sql_ipv4_cidr_block`.
&quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
# Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
},
&quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
&quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
#
# Property keys contain the section and property names, separated by a
# hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
# not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
# square brackets (&quot;]&quot;). The property name must not be empty and must not
# contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
# must not contain a period (&quot;.&quot;). Apache Airflow configuration property
# names must be written in
# [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
# contain any character, and can be written in any lower/upper case format.
#
# Certain Apache Airflow configuration property values are
# [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
# and cannot be overridden.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
# updated.
&quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
# This encapsulates both the version of Cloud Composer functionality and the
# version of Apache Airflow. It must match the regular expression
# `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
# When used as input, the server also checks if the provided version is
# supported and denies the request for an unsupported version.
#
# The Cloud Composer portion of the version is a
# [semantic version](https://semver.org) or `latest`. When the patch version
# is omitted, the current Cloud Composer patch version is selected.
# When `latest` is provided instead of an explicit version number,
# the server replaces `latest` with the current Cloud Composer version
# and stores that version number in the same field.
#
# The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
# official Apache Airflow repository
# [release name](https://github.com/apache/incubator-airflow/releases).
#
# See also [Version
# List](/composer/docs/concepts/versioning/composer-versions).
&quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
# the environment.
#
# Keys refer to the lowercase package name such as &quot;numpy&quot;
# and values are the lowercase extras and version specifier such as
# &quot;==1.12.0&quot;, &quot;[devel,gcp_api]&quot;, or &quot;[devel]&gt;=1.8.2, &lt;1.9.2&quot;. To specify a
# package without pinning it to a version specifier, use the empty string as
# the value.
&quot;a_key&quot;: &quot;A String&quot;,
},
&quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
# scheduler, worker, and webserver processes.
#
# Environment variable names must match the regular expression
# `a-zA-Z_*`. They cannot specify Apache Airflow
# software configuration overrides (they cannot match the regular expression
# `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
# following reserved names:
#
# * `AIRFLOW_HOME`
# * `C_FORCE_ROOT`
# * `CONTAINER_NAME`
# * `DAGS_FOLDER`
# * `GCP_PROJECT`
# * `GCS_BUCKET`
# * `GKE_CLUSTER_NAME`
# * `SQL_DATABASE`
# * `SQL_INSTANCE`
# * `SQL_PASSWORD`
# * `SQL_PROJECT`
# * `SQL_REGION`
# * `SQL_USER`
&quot;a_key&quot;: &quot;A String&quot;,
},
},
&quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
# used to run this environment.
&quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
# the Apache Airflow software.
&quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
# VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
# service account is used. Cannot be updated.
&quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
# node VMs. If `oauth_scopes` is empty, defaults to
# [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
&quot;A String&quot;,
],
&quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
# [machine type](/compute/docs/machine-types) used for cluster instances,
# specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
#
# The `machineType` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.location` are specified,
# this `machineType` must belong to the `nodeConfig.location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If exactly one of this field and `nodeConfig.location` is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
#
# The `machineTypeId` must not be a [shared-core machine
# type](/compute/docs/machine-types#sharedcore).
#
# If this field is unspecified, the `machineTypeId` defaults
# to &quot;n1-standard-1&quot;.
&quot;ipAllocationPolicy&quot;: { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
# GKE cluster running the Apache Airflow software.
&quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
# the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
# GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
#
# Set to blank to have GKE choose a range with the default size.
#
# Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
# netmask.
#
# Set to a
# [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
# to use.
&quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
# IP addresses to pods.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
# IP addresses to the GKE cluster.
#
# This field is applicable only when `use_ip_aliases` is true.
&quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
# If `true`, a VPC-native cluster is created.
},
&quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
# to deploy the VMs used to run the Apache Airflow software, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/zones/{zoneId}&quot;.
#
# This `location` must belong to the enclosing environment&#x27;s project and
# location. If both this field and `nodeConfig.machineType` are specified,
# `nodeConfig.machineType` must belong to this `location`; if both are
# unspecified, the service will pick a zone in the Compute Engine region
# corresponding to the Cloud Composer location, and propagate that choice to
# both fields. If only one field (`location` or `nodeConfig.machineType`) is
# specified, the location information from the specified field will be
# propagated to the unspecified field.
&quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
#
# If a subnetwork is provided, `nodeConfig.network` must also be provided,
# and the subnetwork must belong to the enclosing environment&#x27;s project and
# location.
&quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
# If unspecified, defaults to 100GB. Cannot be updated.
&quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
# to identify valid sources or targets for network firewalls. Each tag within
# the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
# Cannot be updated.
&quot;A String&quot;,
],
&quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
# communications, specified as a
# [relative resource
# name](/apis/design/resource_names#relative_resource_name). For example:
# &quot;projects/{projectId}/global/networks/{networkId}&quot;.
#
# [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
# network must belong to the environment&#x27;s project. If unspecified, the
# &quot;default&quot; network ID in the environment&#x27;s project is used. If a
# [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
# is provided, `nodeConfig.subnetwork` must also be provided.
},
&quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
# Storage objects reside in a flat namespace, a hierarchical file tree
# can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
# this environment reside in a simulated directory with the given prefix.
},
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
&quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
&quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
# &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
#
# EnvironmentId must start with a lowercase letter followed by up to 63
# lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
}
updateMask: string, Required. A comma-separated list of paths, relative to `Environment`, of
fields to update.
For example, to set the version of scikit-learn to install in the
environment to 0.19.0 and to remove an existing installation of
numpy, the `updateMask` parameter would include the following two
`paths` values: &quot;config.softwareConfig.pypiPackages.scikit-learn&quot; and
&quot;config.softwareConfig.pypiPackages.numpy&quot;. The included patch
environment would specify the scikit-learn version as follows:
{
&quot;config&quot;:{
&quot;softwareConfig&quot;:{
&quot;pypiPackages&quot;:{
&quot;scikit-learn&quot;:&quot;==0.19.0&quot;
}
}
}
}
Note that in the above example, any existing PyPI packages
other than scikit-learn and numpy will be unaffected.
Only one update type may be included in a single request&#x27;s `updateMask`.
For example, one cannot update both the PyPI packages and
labels in the same request. However, it is possible to update multiple
members of a map field simultaneously in the same request. For example,
to set the labels &quot;label1&quot; and &quot;label2&quot; while clearing &quot;label3&quot; (assuming
it already exists), one can
provide the paths &quot;labels.label1&quot;, &quot;labels.label2&quot;, and &quot;labels.label3&quot;
and populate the patch environment as follows:
{
&quot;labels&quot;:{
&quot;label1&quot;:&quot;new-label1-value&quot;
&quot;label2&quot;:&quot;new-label2-value&quot;
}
}
Note that in the above example, any existing labels that are not
included in the `updateMask` will be unaffected.
It is also possible to replace an entire map field by providing the
map field&#x27;s path in the `updateMask`. The new value of the field will
be that which is provided in the patch environment. For example, to
delete all pre-existing user-specified PyPI packages and
install botocore at version 1.7.14, the `updateMask` would contain
the path &quot;config.softwareConfig.pypiPackages&quot;, and
the patch environment would be the following:
{
&quot;config&quot;:{
&quot;softwareConfig&quot;:{
&quot;pypiPackages&quot;:{
&quot;botocore&quot;:&quot;==1.7.14&quot;
}
}
}
}
**Note:** Only the following fields can be updated:
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;config.softwareConfig.pypiPackages
&lt;/td&gt;
&lt;td&gt;Replace all custom custom PyPI packages. If a replacement
package map is not included in `environment`, all custom
PyPI packages are cleared. It is an error to provide both this mask and a
mask specifying an individual package.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;config.softwareConfig.pypiPackages.&lt;var&gt;packagename&lt;/var&gt;&lt;/td&gt;
&lt;td&gt;Update the custom PyPI package &lt;var&gt;packagename&lt;/var&gt;,
preserving other packages. To delete the package, include it in
`updateMask`, and omit the mapping for it in
`environment.config.softwareConfig.pypiPackages`. It is an error
to provide both a mask of this form and the
&quot;config.softwareConfig.pypiPackages&quot; mask.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;labels&lt;/td&gt;
&lt;td&gt;Replace all environment labels. If a replacement labels map is not
included in `environment`, all labels are cleared. It is an error to
provide both this mask and a mask specifying one or more individual
labels.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;labels.&lt;var&gt;labelName&lt;/var&gt;&lt;/td&gt;
&lt;td&gt;Set the label named &lt;var&gt;labelName&lt;/var&gt;, while preserving other
labels. To delete the label, include it in `updateMask` and omit its
mapping in `environment.labels`. It is an error to provide both a
mask of this form and the &quot;labels&quot; mask.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;config.nodeCount&lt;/td&gt;
&lt;td&gt;Horizontally scale the number of nodes in the environment. An integer
greater than or equal to 3 must be provided in the `config.nodeCount`
field.
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;config.softwareConfig.airflowConfigOverrides&lt;/td&gt;
&lt;td&gt;Replace all Apache Airflow config overrides. If a replacement config
overrides map is not included in `environment`, all config overrides
are cleared.
It is an error to provide both this mask and a mask specifying one or
more individual config overrides.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;config.softwareConfig.airflowConfigOverrides.&lt;var&gt;section&lt;/var&gt;-&lt;var&gt;name
&lt;/var&gt;&lt;/td&gt;
&lt;td&gt;Override the Apache Airflow config property &lt;var&gt;name&lt;/var&gt; in the
section named &lt;var&gt;section&lt;/var&gt;, preserving other properties. To delete
the property override, include it in `updateMask` and omit its mapping
in `environment.config.softwareConfig.airflowConfigOverrides`.
It is an error to provide both a mask of this form and the
&quot;config.softwareConfig.airflowConfigOverrides&quot; mask.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;config.softwareConfig.envVariables&lt;/td&gt;
&lt;td&gt;Replace all environment variables. If a replacement environment
variable map is not included in `environment`, all custom environment
variables are cleared.
It is an error to provide both this mask and a mask specifying one or
more individual environment variables.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # This resource represents a long-running operation that is the result of a
# network API call.
&quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
# originally returns it. If you use the default HTTP mapping, the
# `name` should be a resource name ending with `operations/{unique_id}`.
&quot;response&quot;: { # The normal response of the operation in case of success. If the original
# method returns no data on success, such as `Delete`, the response is
# `google.protobuf.Empty`. If the original method is standard
# `Get`/`Create`/`Update`, the response should be the resource. For other
# methods, the response should have the type `XxxResponse`, where `Xxx`
# is the original method name. For example, if the original method name
# is `TakeSnapshot()`, the inferred response type is
# `TakeSnapshotResponse`.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
# contains progress information and common metadata such as create time.
# Some services might not provide such metadata. Any method that returns a
# long-running operation should document the metadata type, if any.
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
&quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
# If `true`, the operation is completed, and either `error` or `response` is
# available.
&quot;error&quot;: { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
# different programming environments, including REST APIs and RPC APIs. It is
# used by [gRPC](https://github.com/grpc). Each `Status` message contains
# three pieces of data: error code, error message, and error details.
#
# You can find out more about this error model and how to work with it in the
# [API Design Guide](https://cloud.google.com/apis/design/errors).
&quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
# message types for APIs to use.
{
&quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
},
],
&quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
# user-facing error message should be localized and sent in the
# google.rpc.Status.details field, or localized by the client.
&quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
},
}</pre>
</div>
</body></html>