blob: 03dc4e58f147f3021caeaf0032bc0448fa3f4fca [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<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>
76<h2>Instance Methods</h2>
77<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070078 <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070079<p class="firstline">Create a new environment.</p>
80<p class="toc_element">
81 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
82<p class="firstline">Delete an environment.</p>
83<p class="toc_element">
84 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
85<p class="firstline">Get an existing environment.</p>
86<p class="toc_element">
Bu Sun Kim65020912020-05-20 12:08:20 -070087 <code><a href="#list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070088<p class="firstline">List environments.</p>
89<p class="toc_element">
90 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
91<p class="firstline">Retrieves the next page of results.</p>
92<p class="toc_element">
Dan O'Mearadd494642020-05-01 07:42:23 -070093 <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070094<p class="firstline">Update an environment.</p>
95<h3>Method Details</h3>
96<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -070097 <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -070098 <pre>Create a new environment.
99
100Args:
101 parent: string, The parent must be of the form
Bu Sun Kim65020912020-05-20 12:08:20 -0700102&quot;projects/{projectId}/locations/{locationId}&quot;. (required)
Dan O'Mearadd494642020-05-01 07:42:23 -0700103 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700104 The object takes the form of:
105
106{ # An environment for running orchestration tasks.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700107 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
108 &quot;labels&quot;: { # Optional. User-defined labels for this environment.
109 # The labels map can contain no more than 64 entries. Entries of the labels
110 # map are UTF8 strings that comply with the following restrictions:
111 #
112 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
113 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
114 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
115 # size.
116 &quot;a_key&quot;: &quot;A String&quot;,
117 },
118 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
119 &quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
120 &quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
121 # Storage objects reside in a flat namespace, a hierarchical file tree
122 # can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
123 # this environment reside in a simulated directory with the given prefix.
124 &quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
125 # environment.
126 &quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
127 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
128 &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
129 # Cloud Composer environment.
130 # environment.
131 &quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
132 # denied.
133 &quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
134 # left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
135 &quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
136 # range is used for assigning internal IP addresses to the GKE cluster
137 # master or set of masters and to the internal load balancer virtual IP.
138 # This range must not overlap with any other ranges in use
139 # within the cluster&#x27;s network.
140 },
141 &quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
142 &quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
143 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
144 # `cloud_sql_ipv4_cidr_block`.
145 &quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
146 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
147 # set to true.
148 },
149 &quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
150 &quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
151 # the Apache Airflow software.
152 &quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
153 # communications, specified as a
154 # [relative resource
155 # name](/apis/design/resource_names#relative_resource_name). For example:
156 # &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
157 #
158 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
159 # and the subnetwork must belong to the enclosing environment&#x27;s project and
160 # location.
161 &quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
162 # If unspecified, defaults to 100GB. Cannot be updated.
163 &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.
164 # GKE cluster running the Apache Airflow software.
165 &quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
166 # GKE cluster.
167 #
168 # This field is applicable only when `use_ip_aliases` is true.
169 #
170 # Set to blank to have GKE choose a range with the default size.
171 #
172 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
173 # netmask.
174 #
175 # Set to a
176 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
177 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
178 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
179 # to use.
180 &quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
181 # If `true`, a VPC-native cluster is created.
182 &quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
183 # IP addresses to the GKE cluster.
184 #
185 # This field is applicable only when `use_ip_aliases` is true.
186 &quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
187 # IP addresses to pods.
188 #
189 # This field is applicable only when `use_ip_aliases` is true.
190 &quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
191 # the GKE cluster.
192 #
193 # This field is applicable only when `use_ip_aliases` is true.
194 #
195 # Set to blank to have GKE choose a range with the default size.
196 #
197 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
198 # netmask.
199 #
200 # Set to a
201 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
202 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
203 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
204 # to use.
205 },
206 &quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
207 # to identify valid sources or targets for network firewalls. Each tag within
208 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
209 # Cannot be updated.
210 &quot;A String&quot;,
211 ],
212 &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
213 # VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
214 # service account is used. Cannot be updated.
215 &quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
216 # to deploy the VMs used to run the Apache Airflow software, specified as a
217 # [relative resource
218 # name](/apis/design/resource_names#relative_resource_name). For example:
219 # &quot;projects/{projectId}/zones/{zoneId}&quot;.
220 #
221 # This `location` must belong to the enclosing environment&#x27;s project and
222 # location. If both this field and `nodeConfig.machineType` are specified,
223 # `nodeConfig.machineType` must belong to this `location`; if both are
224 # unspecified, the service will pick a zone in the Compute Engine region
225 # corresponding to the Cloud Composer location, and propagate that choice to
226 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
227 # specified, the location information from the specified field will be
228 # propagated to the unspecified field.
229 &quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
230 # [machine type](/compute/docs/machine-types) used for cluster instances,
231 # specified as a
232 # [relative resource
233 # name](/apis/design/resource_names#relative_resource_name). For example:
234 # &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
235 #
236 # The `machineType` must belong to the enclosing environment&#x27;s project and
237 # location. If both this field and `nodeConfig.location` are specified,
238 # this `machineType` must belong to the `nodeConfig.location`; if both are
239 # unspecified, the service will pick a zone in the Compute Engine region
240 # corresponding to the Cloud Composer location, and propagate that choice to
241 # both fields. If exactly one of this field and `nodeConfig.location` is
242 # specified, the location information from the specified field will be
243 # propagated to the unspecified field.
244 #
245 # The `machineTypeId` must not be a [shared-core machine
246 # type](/compute/docs/machine-types#sharedcore).
247 #
248 # If this field is unspecified, the `machineTypeId` defaults
249 # to &quot;n1-standard-1&quot;.
250 &quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
251 # communications, specified as a
252 # [relative resource
253 # name](/apis/design/resource_names#relative_resource_name). For example:
254 # &quot;projects/{projectId}/global/networks/{networkId}&quot;.
255 #
256 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
257 # network must belong to the environment&#x27;s project. If unspecified, the
258 # &quot;default&quot; network ID in the environment&#x27;s project is used. If a
259 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
260 # is provided, `nodeConfig.subnetwork` must also be provided.
261 &quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
262 # node VMs. If `oauth_scopes` is empty, defaults to
263 # [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
264 &quot;A String&quot;,
265 ],
266 },
267 &quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
268 # [Airflow web
269 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
270 &quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
271 &quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
272 # This encapsulates both the version of Cloud Composer functionality and the
273 # version of Apache Airflow. It must match the regular expression
274 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
275 # When used as input, the server also checks if the provided version is
276 # supported and denies the request for an unsupported version.
277 #
278 # The Cloud Composer portion of the version is a
279 # [semantic version](https://semver.org) or `latest`. When the patch version
280 # is omitted, the current Cloud Composer patch version is selected.
281 # When `latest` is provided instead of an explicit version number,
282 # the server replaces `latest` with the current Cloud Composer version
283 # and stores that version number in the same field.
284 #
285 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
286 # official Apache Airflow repository
287 # [release name](https://github.com/apache/incubator-airflow/releases).
288 #
289 # See also [Version
290 # List](/composer/docs/concepts/versioning/composer-versions).
291 &quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
292 #
293 # Property keys contain the section and property names, separated by a
294 # hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
295 # not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
296 # square brackets (&quot;]&quot;). The property name must not be empty and must not
297 # contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
298 # must not contain a period (&quot;.&quot;). Apache Airflow configuration property
299 # names must be written in
300 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
301 # contain any character, and can be written in any lower/upper case format.
302 #
303 # Certain Apache Airflow configuration property values are
304 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
305 # and cannot be overridden.
306 &quot;a_key&quot;: &quot;A String&quot;,
307 },
308 &quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
309 # scheduler, worker, and webserver processes.
310 #
311 # Environment variable names must match the regular expression
312 # `a-zA-Z_*`. They cannot specify Apache Airflow
313 # software configuration overrides (they cannot match the regular expression
314 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
315 # following reserved names:
316 #
317 # * `AIRFLOW_HOME`
318 # * `C_FORCE_ROOT`
319 # * `CONTAINER_NAME`
320 # * `DAGS_FOLDER`
321 # * `GCP_PROJECT`
322 # * `GCS_BUCKET`
323 # * `GKE_CLUSTER_NAME`
324 # * `SQL_DATABASE`
325 # * `SQL_INSTANCE`
326 # * `SQL_PASSWORD`
327 # * `SQL_PROJECT`
328 # * `SQL_REGION`
329 # * `SQL_USER`
330 &quot;a_key&quot;: &quot;A String&quot;,
331 },
332 &quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
333 # scheduler, worker, and webserver processes.
334 #
335 # Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
336 # updated.
337 &quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
338 # the environment.
339 #
340 # Keys refer to the lowercase package name such as &quot;numpy&quot;
341 # and values are the lowercase extras and version specifier such as
342 # &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
343 # package without pinning it to a version specifier, use the empty string as
344 # the value.
345 &quot;a_key&quot;: &quot;A String&quot;,
346 },
347 },
348 &quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
349 # used to run this environment.
350 },
351 &quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
352 &quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
353 # &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
354 #
355 # EnvironmentId must start with a lowercase letter followed by up to 63
356 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
357 &quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
358 # This value is generated when the environment is created.
359}
360
361 x__xgafv: string, V1 error format.
362 Allowed values
363 1 - v1 error format
364 2 - v2 error format
365
366Returns:
367 An object of the form:
368
369 { # This resource represents a long-running operation that is the result of a
370 # network API call.
371 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
372 # If `true`, the operation is completed, and either `error` or `response` is
373 # available.
374 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
375 # method returns no data on success, such as `Delete`, the response is
376 # `google.protobuf.Empty`. If the original method is standard
377 # `Get`/`Create`/`Update`, the response should be the resource. For other
378 # methods, the response should have the type `XxxResponse`, where `Xxx`
379 # is the original method name. For example, if the original method name
380 # is `TakeSnapshot()`, the inferred response type is
381 # `TakeSnapshotResponse`.
382 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
383 },
384 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
385 # originally returns it. If you use the default HTTP mapping, the
386 # `name` should be a resource name ending with `operations/{unique_id}`.
387 &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.
388 # different programming environments, including REST APIs and RPC APIs. It is
389 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
390 # three pieces of data: error code, error message, and error details.
391 #
392 # You can find out more about this error model and how to work with it in the
393 # [API Design Guide](https://cloud.google.com/apis/design/errors).
394 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
395 # message types for APIs to use.
396 {
397 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
398 },
399 ],
400 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
401 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
402 # user-facing error message should be localized and sent in the
403 # google.rpc.Status.details field, or localized by the client.
404 },
405 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
406 # contains progress information and common metadata such as create time.
407 # Some services might not provide such metadata. Any method that returns a
408 # long-running operation should document the metadata type, if any.
409 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
410 },
411 }</pre>
412</div>
413
414<div class="method">
415 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
416 <pre>Delete an environment.
417
418Args:
419 name: string, The environment to delete, in the form:
420&quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot; (required)
421 x__xgafv: string, V1 error format.
422 Allowed values
423 1 - v1 error format
424 2 - v2 error format
425
426Returns:
427 An object of the form:
428
429 { # This resource represents a long-running operation that is the result of a
430 # network API call.
431 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
432 # If `true`, the operation is completed, and either `error` or `response` is
433 # available.
434 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
435 # method returns no data on success, such as `Delete`, the response is
436 # `google.protobuf.Empty`. If the original method is standard
437 # `Get`/`Create`/`Update`, the response should be the resource. For other
438 # methods, the response should have the type `XxxResponse`, where `Xxx`
439 # is the original method name. For example, if the original method name
440 # is `TakeSnapshot()`, the inferred response type is
441 # `TakeSnapshotResponse`.
442 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
443 },
444 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
445 # originally returns it. If you use the default HTTP mapping, the
446 # `name` should be a resource name ending with `operations/{unique_id}`.
447 &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.
448 # different programming environments, including REST APIs and RPC APIs. It is
449 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
450 # three pieces of data: error code, error message, and error details.
451 #
452 # You can find out more about this error model and how to work with it in the
453 # [API Design Guide](https://cloud.google.com/apis/design/errors).
454 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
455 # message types for APIs to use.
456 {
457 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
458 },
459 ],
460 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
461 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
462 # user-facing error message should be localized and sent in the
463 # google.rpc.Status.details field, or localized by the client.
464 },
465 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
466 # contains progress information and common metadata such as create time.
467 # Some services might not provide such metadata. Any method that returns a
468 # long-running operation should document the metadata type, if any.
469 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
470 },
471 }</pre>
472</div>
473
474<div class="method">
475 <code class="details" id="get">get(name, x__xgafv=None)</code>
476 <pre>Get an existing environment.
477
478Args:
479 name: string, The resource name of the environment to get, in the form:
480&quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot; (required)
481 x__xgafv: string, V1 error format.
482 Allowed values
483 1 - v1 error format
484 2 - v2 error format
485
486Returns:
487 An object of the form:
488
489 { # An environment for running orchestration tasks.
490 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
Bu Sun Kim65020912020-05-20 12:08:20 -0700491 &quot;labels&quot;: { # Optional. User-defined labels for this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700492 # The labels map can contain no more than 64 entries. Entries of the labels
493 # map are UTF8 strings that comply with the following restrictions:
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700494 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700495 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
496 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
Dan O'Mearadd494642020-05-01 07:42:23 -0700497 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700498 # size.
Bu Sun Kim65020912020-05-20 12:08:20 -0700499 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700500 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700501 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
502 &quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
503 &quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700504 # Storage objects reside in a flat namespace, a hierarchical file tree
Bu Sun Kim65020912020-05-20 12:08:20 -0700505 # can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700506 # this environment reside in a simulated directory with the given prefix.
Bu Sun Kim65020912020-05-20 12:08:20 -0700507 &quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
508 # environment.
509 &quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
510 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
511 &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
512 # Cloud Composer environment.
513 # environment.
Bu Sun Kim65020912020-05-20 12:08:20 -0700514 &quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
515 # denied.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700516 &quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
517 # left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
Bu Sun Kim65020912020-05-20 12:08:20 -0700518 &quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
519 # range is used for assigning internal IP addresses to the GKE cluster
520 # master or set of masters and to the internal load balancer virtual IP.
521 # This range must not overlap with any other ranges in use
522 # within the cluster&#x27;s network.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700523 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700524 &quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
525 &quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
526 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
527 # `cloud_sql_ipv4_cidr_block`.
528 &quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
529 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
530 # set to true.
531 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700532 &quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
Bu Sun Kim65020912020-05-20 12:08:20 -0700533 &quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
534 # the Apache Airflow software.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700535 &quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
536 # communications, specified as a
537 # [relative resource
538 # name](/apis/design/resource_names#relative_resource_name). For example:
539 # &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
540 #
541 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
542 # and the subnetwork must belong to the enclosing environment&#x27;s project and
543 # location.
544 &quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
545 # If unspecified, defaults to 100GB. Cannot be updated.
546 &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.
547 # GKE cluster running the Apache Airflow software.
548 &quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
549 # GKE cluster.
550 #
551 # This field is applicable only when `use_ip_aliases` is true.
552 #
553 # Set to blank to have GKE choose a range with the default size.
554 #
555 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
556 # netmask.
557 #
558 # Set to a
559 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
560 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
561 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
562 # to use.
563 &quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
564 # If `true`, a VPC-native cluster is created.
565 &quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
566 # IP addresses to the GKE cluster.
567 #
568 # This field is applicable only when `use_ip_aliases` is true.
569 &quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
570 # IP addresses to pods.
571 #
572 # This field is applicable only when `use_ip_aliases` is true.
573 &quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
574 # the GKE cluster.
575 #
576 # This field is applicable only when `use_ip_aliases` is true.
577 #
578 # Set to blank to have GKE choose a range with the default size.
579 #
580 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
581 # netmask.
582 #
583 # Set to a
584 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
585 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
586 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
587 # to use.
588 },
589 &quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
590 # to identify valid sources or targets for network firewalls. Each tag within
591 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
592 # Cannot be updated.
593 &quot;A String&quot;,
594 ],
595 &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
596 # VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
597 # service account is used. Cannot be updated.
Bu Sun Kim65020912020-05-20 12:08:20 -0700598 &quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
599 # to deploy the VMs used to run the Apache Airflow software, specified as a
600 # [relative resource
601 # name](/apis/design/resource_names#relative_resource_name). For example:
602 # &quot;projects/{projectId}/zones/{zoneId}&quot;.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700603 #
Bu Sun Kim65020912020-05-20 12:08:20 -0700604 # This `location` must belong to the enclosing environment&#x27;s project and
605 # location. If both this field and `nodeConfig.machineType` are specified,
606 # `nodeConfig.machineType` must belong to this `location`; if both are
607 # unspecified, the service will pick a zone in the Compute Engine region
608 # corresponding to the Cloud Composer location, and propagate that choice to
609 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
610 # specified, the location information from the specified field will be
611 # propagated to the unspecified field.
612 &quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
613 # [machine type](/compute/docs/machine-types) used for cluster instances,
614 # specified as a
615 # [relative resource
616 # name](/apis/design/resource_names#relative_resource_name). For example:
617 # &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
618 #
619 # The `machineType` must belong to the enclosing environment&#x27;s project and
620 # location. If both this field and `nodeConfig.location` are specified,
621 # this `machineType` must belong to the `nodeConfig.location`; if both are
622 # unspecified, the service will pick a zone in the Compute Engine region
623 # corresponding to the Cloud Composer location, and propagate that choice to
624 # both fields. If exactly one of this field and `nodeConfig.location` is
625 # specified, the location information from the specified field will be
626 # propagated to the unspecified field.
627 #
628 # The `machineTypeId` must not be a [shared-core machine
629 # type](/compute/docs/machine-types#sharedcore).
630 #
631 # If this field is unspecified, the `machineTypeId` defaults
632 # to &quot;n1-standard-1&quot;.
633 &quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
634 # communications, specified as a
635 # [relative resource
636 # name](/apis/design/resource_names#relative_resource_name). For example:
637 # &quot;projects/{projectId}/global/networks/{networkId}&quot;.
638 #
639 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
640 # network must belong to the environment&#x27;s project. If unspecified, the
641 # &quot;default&quot; network ID in the environment&#x27;s project is used. If a
642 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
643 # is provided, `nodeConfig.subnetwork` must also be provided.
644 &quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
645 # node VMs. If `oauth_scopes` is empty, defaults to
646 # [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
647 &quot;A String&quot;,
648 ],
Bu Sun Kim65020912020-05-20 12:08:20 -0700649 },
650 &quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
651 # [Airflow web
652 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
653 &quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700654 &quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
655 # This encapsulates both the version of Cloud Composer functionality and the
656 # version of Apache Airflow. It must match the regular expression
657 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
658 # When used as input, the server also checks if the provided version is
659 # supported and denies the request for an unsupported version.
660 #
661 # The Cloud Composer portion of the version is a
662 # [semantic version](https://semver.org) or `latest`. When the patch version
663 # is omitted, the current Cloud Composer patch version is selected.
664 # When `latest` is provided instead of an explicit version number,
665 # the server replaces `latest` with the current Cloud Composer version
666 # and stores that version number in the same field.
667 #
668 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
669 # official Apache Airflow repository
670 # [release name](https://github.com/apache/incubator-airflow/releases).
671 #
672 # See also [Version
673 # List](/composer/docs/concepts/versioning/composer-versions).
674 &quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
675 #
676 # Property keys contain the section and property names, separated by a
677 # hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
678 # not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
679 # square brackets (&quot;]&quot;). The property name must not be empty and must not
680 # contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
681 # must not contain a period (&quot;.&quot;). Apache Airflow configuration property
682 # names must be written in
683 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
684 # contain any character, and can be written in any lower/upper case format.
685 #
686 # Certain Apache Airflow configuration property values are
687 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
688 # and cannot be overridden.
689 &quot;a_key&quot;: &quot;A String&quot;,
690 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700691 &quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700692 # scheduler, worker, and webserver processes.
693 #
694 # Environment variable names must match the regular expression
695 # `a-zA-Z_*`. They cannot specify Apache Airflow
696 # software configuration overrides (they cannot match the regular expression
697 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
698 # following reserved names:
699 #
700 # * `AIRFLOW_HOME`
701 # * `C_FORCE_ROOT`
702 # * `CONTAINER_NAME`
703 # * `DAGS_FOLDER`
704 # * `GCP_PROJECT`
705 # * `GCS_BUCKET`
706 # * `GKE_CLUSTER_NAME`
707 # * `SQL_DATABASE`
708 # * `SQL_INSTANCE`
709 # * `SQL_PASSWORD`
710 # * `SQL_PROJECT`
711 # * `SQL_REGION`
712 # * `SQL_USER`
Bu Sun Kim65020912020-05-20 12:08:20 -0700713 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700714 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700715 &quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
716 # scheduler, worker, and webserver processes.
717 #
718 # Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
719 # updated.
720 &quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
721 # the environment.
722 #
723 # Keys refer to the lowercase package name such as &quot;numpy&quot;
724 # and values are the lowercase extras and version specifier such as
725 # &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
726 # package without pinning it to a version specifier, use the empty string as
727 # the value.
728 &quot;a_key&quot;: &quot;A String&quot;,
729 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700730 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700731 &quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700732 # used to run this environment.
733 },
Bu Sun Kim65020912020-05-20 12:08:20 -0700734 &quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
735 &quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
736 # &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700737 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700738 # EnvironmentId must start with a lowercase letter followed by up to 63
739 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
Bu Sun Kim65020912020-05-20 12:08:20 -0700740 &quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
741 # This value is generated when the environment is created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700742 }</pre>
743</div>
744
745<div class="method">
Bu Sun Kim65020912020-05-20 12:08:20 -0700746 <code class="details" id="list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700747 <pre>List environments.
748
749Args:
750 parent: string, List environments in the given project and location, in the form:
Bu Sun Kim65020912020-05-20 12:08:20 -0700751&quot;projects/{projectId}/locations/{locationId}&quot; (required)
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700752 pageToken: string, The next_page_token value returned from a previous List request, if any.
Bu Sun Kim65020912020-05-20 12:08:20 -0700753 pageSize: integer, The maximum number of environments to return.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700754 x__xgafv: string, V1 error format.
755 Allowed values
756 1 - v1 error format
757 2 - v2 error format
758
759Returns:
760 An object of the form:
761
762 { # The environments in a project and location.
Bu Sun Kim65020912020-05-20 12:08:20 -0700763 &quot;environments&quot;: [ # The list of environments returned by a ListEnvironmentsRequest.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700764 { # An environment for running orchestration tasks.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700765 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
766 &quot;labels&quot;: { # Optional. User-defined labels for this environment.
767 # The labels map can contain no more than 64 entries. Entries of the labels
768 # map are UTF8 strings that comply with the following restrictions:
769 #
770 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
771 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
772 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
773 # size.
774 &quot;a_key&quot;: &quot;A String&quot;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700775 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -0700776 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
777 &quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
778 &quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
779 # Storage objects reside in a flat namespace, a hierarchical file tree
780 # can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
781 # this environment reside in a simulated directory with the given prefix.
782 &quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
783 # environment.
784 &quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
785 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
786 &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
787 # Cloud Composer environment.
788 # environment.
789 &quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
790 # denied.
791 &quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
792 # left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
793 &quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
794 # range is used for assigning internal IP addresses to the GKE cluster
795 # master or set of masters and to the internal load balancer virtual IP.
796 # This range must not overlap with any other ranges in use
797 # within the cluster&#x27;s network.
798 },
799 &quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
800 &quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
801 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
802 # `cloud_sql_ipv4_cidr_block`.
803 &quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
804 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
805 # set to true.
806 },
807 &quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
808 &quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
809 # the Apache Airflow software.
810 &quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
811 # communications, specified as a
812 # [relative resource
813 # name](/apis/design/resource_names#relative_resource_name). For example:
814 # &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
815 #
816 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
817 # and the subnetwork must belong to the enclosing environment&#x27;s project and
818 # location.
819 &quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
820 # If unspecified, defaults to 100GB. Cannot be updated.
821 &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.
822 # GKE cluster running the Apache Airflow software.
823 &quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
824 # GKE cluster.
825 #
826 # This field is applicable only when `use_ip_aliases` is true.
827 #
828 # Set to blank to have GKE choose a range with the default size.
829 #
830 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
831 # netmask.
832 #
833 # Set to a
834 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
835 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
836 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
837 # to use.
838 &quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
839 # If `true`, a VPC-native cluster is created.
840 &quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
841 # IP addresses to the GKE cluster.
842 #
843 # This field is applicable only when `use_ip_aliases` is true.
844 &quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
845 # IP addresses to pods.
846 #
847 # This field is applicable only when `use_ip_aliases` is true.
848 &quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
849 # the GKE cluster.
850 #
851 # This field is applicable only when `use_ip_aliases` is true.
852 #
853 # Set to blank to have GKE choose a range with the default size.
854 #
855 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
856 # netmask.
857 #
858 # Set to a
859 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
860 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
861 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
862 # to use.
863 },
864 &quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
865 # to identify valid sources or targets for network firewalls. Each tag within
866 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
867 # Cannot be updated.
868 &quot;A String&quot;,
869 ],
870 &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
871 # VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
872 # service account is used. Cannot be updated.
873 &quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
874 # to deploy the VMs used to run the Apache Airflow software, specified as a
875 # [relative resource
876 # name](/apis/design/resource_names#relative_resource_name). For example:
877 # &quot;projects/{projectId}/zones/{zoneId}&quot;.
878 #
879 # This `location` must belong to the enclosing environment&#x27;s project and
880 # location. If both this field and `nodeConfig.machineType` are specified,
881 # `nodeConfig.machineType` must belong to this `location`; if both are
882 # unspecified, the service will pick a zone in the Compute Engine region
883 # corresponding to the Cloud Composer location, and propagate that choice to
884 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
885 # specified, the location information from the specified field will be
886 # propagated to the unspecified field.
887 &quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
888 # [machine type](/compute/docs/machine-types) used for cluster instances,
889 # specified as a
890 # [relative resource
891 # name](/apis/design/resource_names#relative_resource_name). For example:
892 # &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
893 #
894 # The `machineType` must belong to the enclosing environment&#x27;s project and
895 # location. If both this field and `nodeConfig.location` are specified,
896 # this `machineType` must belong to the `nodeConfig.location`; if both are
897 # unspecified, the service will pick a zone in the Compute Engine region
898 # corresponding to the Cloud Composer location, and propagate that choice to
899 # both fields. If exactly one of this field and `nodeConfig.location` is
900 # specified, the location information from the specified field will be
901 # propagated to the unspecified field.
902 #
903 # The `machineTypeId` must not be a [shared-core machine
904 # type](/compute/docs/machine-types#sharedcore).
905 #
906 # If this field is unspecified, the `machineTypeId` defaults
907 # to &quot;n1-standard-1&quot;.
908 &quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
909 # communications, specified as a
910 # [relative resource
911 # name](/apis/design/resource_names#relative_resource_name). For example:
912 # &quot;projects/{projectId}/global/networks/{networkId}&quot;.
913 #
914 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
915 # network must belong to the environment&#x27;s project. If unspecified, the
916 # &quot;default&quot; network ID in the environment&#x27;s project is used. If a
917 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
918 # is provided, `nodeConfig.subnetwork` must also be provided.
919 &quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
920 # node VMs. If `oauth_scopes` is empty, defaults to
921 # [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
922 &quot;A String&quot;,
923 ],
924 },
925 &quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
926 # [Airflow web
927 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
928 &quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
929 &quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
930 # This encapsulates both the version of Cloud Composer functionality and the
931 # version of Apache Airflow. It must match the regular expression
932 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
933 # When used as input, the server also checks if the provided version is
934 # supported and denies the request for an unsupported version.
935 #
936 # The Cloud Composer portion of the version is a
937 # [semantic version](https://semver.org) or `latest`. When the patch version
938 # is omitted, the current Cloud Composer patch version is selected.
939 # When `latest` is provided instead of an explicit version number,
940 # the server replaces `latest` with the current Cloud Composer version
941 # and stores that version number in the same field.
942 #
943 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
944 # official Apache Airflow repository
945 # [release name](https://github.com/apache/incubator-airflow/releases).
946 #
947 # See also [Version
948 # List](/composer/docs/concepts/versioning/composer-versions).
949 &quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
950 #
951 # Property keys contain the section and property names, separated by a
952 # hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
953 # not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
954 # square brackets (&quot;]&quot;). The property name must not be empty and must not
955 # contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
956 # must not contain a period (&quot;.&quot;). Apache Airflow configuration property
957 # names must be written in
958 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
959 # contain any character, and can be written in any lower/upper case format.
960 #
961 # Certain Apache Airflow configuration property values are
962 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
963 # and cannot be overridden.
964 &quot;a_key&quot;: &quot;A String&quot;,
965 },
966 &quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
967 # scheduler, worker, and webserver processes.
968 #
969 # Environment variable names must match the regular expression
970 # `a-zA-Z_*`. They cannot specify Apache Airflow
971 # software configuration overrides (they cannot match the regular expression
972 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
973 # following reserved names:
974 #
975 # * `AIRFLOW_HOME`
976 # * `C_FORCE_ROOT`
977 # * `CONTAINER_NAME`
978 # * `DAGS_FOLDER`
979 # * `GCP_PROJECT`
980 # * `GCS_BUCKET`
981 # * `GKE_CLUSTER_NAME`
982 # * `SQL_DATABASE`
983 # * `SQL_INSTANCE`
984 # * `SQL_PASSWORD`
985 # * `SQL_PROJECT`
986 # * `SQL_REGION`
987 # * `SQL_USER`
988 &quot;a_key&quot;: &quot;A String&quot;,
989 },
990 &quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
991 # scheduler, worker, and webserver processes.
992 #
993 # Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
994 # updated.
995 &quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
996 # the environment.
997 #
998 # Keys refer to the lowercase package name such as &quot;numpy&quot;
999 # and values are the lowercase extras and version specifier such as
1000 # &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
1001 # package without pinning it to a version specifier, use the empty string as
1002 # the value.
1003 &quot;a_key&quot;: &quot;A String&quot;,
1004 },
1005 },
1006 &quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
1007 # used to run this environment.
1008 },
1009 &quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
1010 &quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
1011 # &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
1012 #
1013 # EnvironmentId must start with a lowercase letter followed by up to 63
1014 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
1015 &quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
1016 # This value is generated when the environment is created.
1017 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001018 ],
Bu Sun Kim65020912020-05-20 12:08:20 -07001019 &quot;nextPageToken&quot;: &quot;A String&quot;, # The page token used to query for the next page if one exists.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001020 }</pre>
1021</div>
1022
1023<div class="method">
1024 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
1025 <pre>Retrieves the next page of results.
1026
1027Args:
1028 previous_request: The request for the previous page. (required)
1029 previous_response: The response from the request for the previous page. (required)
1030
1031Returns:
Bu Sun Kim65020912020-05-20 12:08:20 -07001032 A request object that you can call &#x27;execute()&#x27; on to request the next
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001033 page. Returns None if there are no more items in the collection.
1034 </pre>
1035</div>
1036
1037<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -07001038 <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001039 <pre>Update an environment.
1040
1041Args:
1042 name: string, The relative resource name of the environment to update, in the form:
Bu Sun Kim65020912020-05-20 12:08:20 -07001043&quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot; (required)
Dan O'Mearadd494642020-05-01 07:42:23 -07001044 body: object, The request body.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001045 The object takes the form of:
1046
1047{ # An environment for running orchestration tasks.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001048 &quot;createTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was created.
1049 &quot;labels&quot;: { # Optional. User-defined labels for this environment.
1050 # The labels map can contain no more than 64 entries. Entries of the labels
1051 # map are UTF8 strings that comply with the following restrictions:
1052 #
1053 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
1054 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
1055 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
1056 # size.
1057 &quot;a_key&quot;: &quot;A String&quot;,
1058 },
1059 &quot;updateTime&quot;: &quot;A String&quot;, # Output only. The time at which this environment was last modified.
1060 &quot;config&quot;: { # Configuration information for an environment. # Configuration parameters for this environment.
1061 &quot;dagGcsPrefix&quot;: &quot;A String&quot;, # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
1062 # Storage objects reside in a flat namespace, a hierarchical file tree
1063 # can be simulated using &quot;/&quot;-delimited object name prefixes. DAG objects for
1064 # this environment reside in a simulated directory with the given prefix.
1065 &quot;privateEnvironmentConfig&quot;: { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
1066 # environment.
1067 &quot;cloudSqlIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range in tenant project will be reserved for
1068 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
1069 &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
1070 # Cloud Composer environment.
Bu Sun Kim65020912020-05-20 12:08:20 -07001071 # environment.
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001072 &quot;enablePrivateEndpoint&quot;: True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
1073 # denied.
1074 &quot;masterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
1075 # left blank, the default value of &#x27;172.16.0.0/23&#x27; is used.
1076 &quot;masterIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range in CIDR notation to use for the hosted master network. This
1077 # range is used for assigning internal IP addresses to the GKE cluster
1078 # master or set of masters and to the internal load balancer virtual IP.
1079 # This range must not overlap with any other ranges in use
1080 # within the cluster&#x27;s network.
Bu Sun Kim65020912020-05-20 12:08:20 -07001081 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001082 &quot;webServerIpv4ReservedRange&quot;: &quot;A String&quot;, # Output only. The IP range reserved for the tenant project&#x27;s App Engine VMs.
1083 &quot;webServerIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The CIDR block from which IP range for web server will be reserved. Needs
1084 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
1085 # `cloud_sql_ipv4_cidr_block`.
1086 &quot;enablePrivateEnvironment&quot;: True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
1087 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
1088 # set to true.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001089 },
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001090 &quot;gkeCluster&quot;: &quot;A String&quot;, # Output only. The Kubernetes Engine cluster used to run this environment.
1091 &quot;nodeConfig&quot;: { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
1092 # the Apache Airflow software.
1093 &quot;subnetwork&quot;: &quot;A String&quot;, # Optional. The Compute Engine subnetwork to be used for machine
1094 # communications, specified as a
1095 # [relative resource
1096 # name](/apis/design/resource_names#relative_resource_name). For example:
1097 # &quot;projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}&quot;
1098 #
1099 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
1100 # and the subnetwork must belong to the enclosing environment&#x27;s project and
1101 # location.
1102 &quot;diskSizeGb&quot;: 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
1103 # If unspecified, defaults to 100GB. Cannot be updated.
1104 &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.
1105 # GKE cluster running the Apache Airflow software.
1106 &quot;servicesIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range of the services IP addresses in this
1107 # GKE cluster.
1108 #
1109 # This field is applicable only when `use_ip_aliases` is true.
1110 #
1111 # Set to blank to have GKE choose a range with the default size.
1112 #
1113 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
1114 # netmask.
1115 #
1116 # Set to a
1117 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1118 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1119 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1120 # to use.
1121 &quot;useIpAliases&quot;: True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
1122 # If `true`, a VPC-native cluster is created.
1123 &quot;servicesSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the services&#x27; secondary range used to allocate
1124 # IP addresses to the GKE cluster.
1125 #
1126 # This field is applicable only when `use_ip_aliases` is true.
1127 &quot;clusterSecondaryRangeName&quot;: &quot;A String&quot;, # Optional. The name of the GKE cluster&#x27;s secondary range used to allocate
1128 # IP addresses to pods.
1129 #
1130 # This field is applicable only when `use_ip_aliases` is true.
1131 &quot;clusterIpv4CidrBlock&quot;: &quot;A String&quot;, # Optional. The IP address range used to allocate IP addresses to pods in
1132 # the GKE cluster.
1133 #
1134 # This field is applicable only when `use_ip_aliases` is true.
1135 #
1136 # Set to blank to have GKE choose a range with the default size.
1137 #
1138 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
1139 # netmask.
1140 #
1141 # Set to a
1142 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1143 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1144 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1145 # to use.
1146 },
1147 &quot;tags&quot;: [ # Optional. The list of instance tags applied to all node VMs. Tags are used
1148 # to identify valid sources or targets for network firewalls. Each tag within
1149 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
1150 # Cannot be updated.
1151 &quot;A String&quot;,
1152 ],
1153 &quot;serviceAccount&quot;: &quot;A String&quot;, # Optional. The Google Cloud Platform Service Account to be used by the node
1154 # VMs. If a service account is not specified, the &quot;default&quot; Compute Engine
1155 # service account is used. Cannot be updated.
1156 &quot;location&quot;: &quot;A String&quot;, # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
1157 # to deploy the VMs used to run the Apache Airflow software, specified as a
1158 # [relative resource
1159 # name](/apis/design/resource_names#relative_resource_name). For example:
1160 # &quot;projects/{projectId}/zones/{zoneId}&quot;.
1161 #
1162 # This `location` must belong to the enclosing environment&#x27;s project and
1163 # location. If both this field and `nodeConfig.machineType` are specified,
1164 # `nodeConfig.machineType` must belong to this `location`; if both are
1165 # unspecified, the service will pick a zone in the Compute Engine region
1166 # corresponding to the Cloud Composer location, and propagate that choice to
1167 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
1168 # specified, the location information from the specified field will be
1169 # propagated to the unspecified field.
1170 &quot;machineType&quot;: &quot;A String&quot;, # Optional. The Compute Engine
1171 # [machine type](/compute/docs/machine-types) used for cluster instances,
1172 # specified as a
1173 # [relative resource
1174 # name](/apis/design/resource_names#relative_resource_name). For example:
1175 # &quot;projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}&quot;.
1176 #
1177 # The `machineType` must belong to the enclosing environment&#x27;s project and
1178 # location. If both this field and `nodeConfig.location` are specified,
1179 # this `machineType` must belong to the `nodeConfig.location`; if both are
1180 # unspecified, the service will pick a zone in the Compute Engine region
1181 # corresponding to the Cloud Composer location, and propagate that choice to
1182 # both fields. If exactly one of this field and `nodeConfig.location` is
1183 # specified, the location information from the specified field will be
1184 # propagated to the unspecified field.
1185 #
1186 # The `machineTypeId` must not be a [shared-core machine
1187 # type](/compute/docs/machine-types#sharedcore).
1188 #
1189 # If this field is unspecified, the `machineTypeId` defaults
1190 # to &quot;n1-standard-1&quot;.
1191 &quot;network&quot;: &quot;A String&quot;, # Optional. The Compute Engine network to be used for machine
1192 # communications, specified as a
1193 # [relative resource
1194 # name](/apis/design/resource_names#relative_resource_name). For example:
1195 # &quot;projects/{projectId}/global/networks/{networkId}&quot;.
1196 #
1197 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
1198 # network must belong to the environment&#x27;s project. If unspecified, the
1199 # &quot;default&quot; network ID in the environment&#x27;s project is used. If a
1200 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
1201 # is provided, `nodeConfig.subnetwork` must also be provided.
1202 &quot;oauthScopes&quot;: [ # Optional. The set of Google API scopes to be made available on all
1203 # node VMs. If `oauth_scopes` is empty, defaults to
1204 # [&quot;https://www.googleapis.com/auth/cloud-platform&quot;]. Cannot be updated.
1205 &quot;A String&quot;,
1206 ],
1207 },
1208 &quot;airflowUri&quot;: &quot;A String&quot;, # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
1209 # [Airflow web
1210 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
1211 &quot;softwareConfig&quot;: { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
1212 &quot;imageVersion&quot;: &quot;A String&quot;, # The version of the software running in the environment.
1213 # This encapsulates both the version of Cloud Composer functionality and the
1214 # version of Apache Airflow. It must match the regular expression
1215 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
1216 # When used as input, the server also checks if the provided version is
1217 # supported and denies the request for an unsupported version.
1218 #
1219 # The Cloud Composer portion of the version is a
1220 # [semantic version](https://semver.org) or `latest`. When the patch version
1221 # is omitted, the current Cloud Composer patch version is selected.
1222 # When `latest` is provided instead of an explicit version number,
1223 # the server replaces `latest` with the current Cloud Composer version
1224 # and stores that version number in the same field.
1225 #
1226 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
1227 # official Apache Airflow repository
1228 # [release name](https://github.com/apache/incubator-airflow/releases).
1229 #
1230 # See also [Version
1231 # List](/composer/docs/concepts/versioning/composer-versions).
1232 &quot;airflowConfigOverrides&quot;: { # Optional. Apache Airflow configuration properties to override.
1233 #
1234 # Property keys contain the section and property names, separated by a
1235 # hyphen, for example &quot;core-dags_are_paused_at_creation&quot;. Section names must
1236 # not contain hyphens (&quot;-&quot;), opening square brackets (&quot;[&quot;), or closing
1237 # square brackets (&quot;]&quot;). The property name must not be empty and must not
1238 # contain an equals sign (&quot;=&quot;) or semicolon (&quot;;&quot;). Section and property names
1239 # must not contain a period (&quot;.&quot;). Apache Airflow configuration property
1240 # names must be written in
1241 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
1242 # contain any character, and can be written in any lower/upper case format.
1243 #
1244 # Certain Apache Airflow configuration property values are
1245 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
1246 # and cannot be overridden.
1247 &quot;a_key&quot;: &quot;A String&quot;,
1248 },
1249 &quot;envVariables&quot;: { # Optional. Additional environment variables to provide to the Apache Airflow
1250 # scheduler, worker, and webserver processes.
1251 #
1252 # Environment variable names must match the regular expression
1253 # `a-zA-Z_*`. They cannot specify Apache Airflow
1254 # software configuration overrides (they cannot match the regular expression
1255 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
1256 # following reserved names:
1257 #
1258 # * `AIRFLOW_HOME`
1259 # * `C_FORCE_ROOT`
1260 # * `CONTAINER_NAME`
1261 # * `DAGS_FOLDER`
1262 # * `GCP_PROJECT`
1263 # * `GCS_BUCKET`
1264 # * `GKE_CLUSTER_NAME`
1265 # * `SQL_DATABASE`
1266 # * `SQL_INSTANCE`
1267 # * `SQL_PASSWORD`
1268 # * `SQL_PROJECT`
1269 # * `SQL_REGION`
1270 # * `SQL_USER`
1271 &quot;a_key&quot;: &quot;A String&quot;,
1272 },
1273 &quot;pythonVersion&quot;: &quot;A String&quot;, # Optional. The major version of Python used to run the Apache Airflow
1274 # scheduler, worker, and webserver processes.
1275 #
1276 # Can be set to &#x27;2&#x27; or &#x27;3&#x27;. If not specified, the default is &#x27;2&#x27;. Cannot be
1277 # updated.
1278 &quot;pypiPackages&quot;: { # Optional. Custom Python Package Index (PyPI) packages to be installed in
1279 # the environment.
1280 #
1281 # Keys refer to the lowercase package name such as &quot;numpy&quot;
1282 # and values are the lowercase extras and version specifier such as
1283 # &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
1284 # package without pinning it to a version specifier, use the empty string as
1285 # the value.
1286 &quot;a_key&quot;: &quot;A String&quot;,
1287 },
1288 },
1289 &quot;nodeCount&quot;: 42, # The number of nodes in the Kubernetes Engine cluster that will be
1290 # used to run this environment.
1291 },
1292 &quot;state&quot;: &quot;A String&quot;, # The current state of the environment.
1293 &quot;name&quot;: &quot;A String&quot;, # The resource name of the environment, in the form:
1294 # &quot;projects/{projectId}/locations/{locationId}/environments/{environmentId}&quot;
1295 #
1296 # EnvironmentId must start with a lowercase letter followed by up to 63
1297 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
1298 &quot;uuid&quot;: &quot;A String&quot;, # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
1299 # This value is generated when the environment is created.
1300}
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001301
1302 updateMask: string, Required. A comma-separated list of paths, relative to `Environment`, of
1303fields to update.
1304For example, to set the version of scikit-learn to install in the
1305environment to 0.19.0 and to remove an existing installation of
1306numpy, the `updateMask` parameter would include the following two
Bu Sun Kim65020912020-05-20 12:08:20 -07001307`paths` values: &quot;config.softwareConfig.pypiPackages.scikit-learn&quot; and
1308&quot;config.softwareConfig.pypiPackages.numpy&quot;. The included patch
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001309environment would specify the scikit-learn version as follows:
1310
1311 {
Bu Sun Kim65020912020-05-20 12:08:20 -07001312 &quot;config&quot;:{
1313 &quot;softwareConfig&quot;:{
1314 &quot;pypiPackages&quot;:{
1315 &quot;scikit-learn&quot;:&quot;==0.19.0&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001316 }
1317 }
1318 }
1319 }
1320
1321Note that in the above example, any existing PyPI packages
1322other than scikit-learn and numpy will be unaffected.
1323
Bu Sun Kim65020912020-05-20 12:08:20 -07001324Only one update type may be included in a single request&#x27;s `updateMask`.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001325For example, one cannot update both the PyPI packages and
1326labels in the same request. However, it is possible to update multiple
1327members of a map field simultaneously in the same request. For example,
Bu Sun Kim65020912020-05-20 12:08:20 -07001328to set the labels &quot;label1&quot; and &quot;label2&quot; while clearing &quot;label3&quot; (assuming
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001329it already exists), one can
Bu Sun Kim65020912020-05-20 12:08:20 -07001330provide the paths &quot;labels.label1&quot;, &quot;labels.label2&quot;, and &quot;labels.label3&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001331and populate the patch environment as follows:
1332
1333 {
Bu Sun Kim65020912020-05-20 12:08:20 -07001334 &quot;labels&quot;:{
1335 &quot;label1&quot;:&quot;new-label1-value&quot;
1336 &quot;label2&quot;:&quot;new-label2-value&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001337 }
1338 }
1339
1340Note that in the above example, any existing labels that are not
1341included in the `updateMask` will be unaffected.
1342
1343It is also possible to replace an entire map field by providing the
Bu Sun Kim65020912020-05-20 12:08:20 -07001344map field&#x27;s path in the `updateMask`. The new value of the field will
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001345be that which is provided in the patch environment. For example, to
1346delete all pre-existing user-specified PyPI packages and
1347install botocore at version 1.7.14, the `updateMask` would contain
Bu Sun Kim65020912020-05-20 12:08:20 -07001348the path &quot;config.softwareConfig.pypiPackages&quot;, and
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001349the patch environment would be the following:
1350
1351 {
Bu Sun Kim65020912020-05-20 12:08:20 -07001352 &quot;config&quot;:{
1353 &quot;softwareConfig&quot;:{
1354 &quot;pypiPackages&quot;:{
1355 &quot;botocore&quot;:&quot;==1.7.14&quot;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001356 }
1357 }
1358 }
1359 }
1360
1361**Note:** Only the following fields can be updated:
1362
Dan O'Mearadd494642020-05-01 07:42:23 -07001363 &lt;table&gt;
1364 &lt;tbody&gt;
1365 &lt;tr&gt;
1366 &lt;td&gt;&lt;strong&gt;Mask&lt;/strong&gt;&lt;/td&gt;
1367 &lt;td&gt;&lt;strong&gt;Purpose&lt;/strong&gt;&lt;/td&gt;
1368 &lt;/tr&gt;
1369 &lt;tr&gt;
1370 &lt;td&gt;config.softwareConfig.pypiPackages
1371 &lt;/td&gt;
1372 &lt;td&gt;Replace all custom custom PyPI packages. If a replacement
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001373 package map is not included in `environment`, all custom
1374 PyPI packages are cleared. It is an error to provide both this mask and a
Dan O'Mearadd494642020-05-01 07:42:23 -07001375 mask specifying an individual package.&lt;/td&gt;
1376 &lt;/tr&gt;
1377 &lt;tr&gt;
1378 &lt;td&gt;config.softwareConfig.pypiPackages.&lt;var&gt;packagename&lt;/var&gt;&lt;/td&gt;
1379 &lt;td&gt;Update the custom PyPI package &lt;var&gt;packagename&lt;/var&gt;,
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001380 preserving other packages. To delete the package, include it in
1381 `updateMask`, and omit the mapping for it in
1382 `environment.config.softwareConfig.pypiPackages`. It is an error
1383 to provide both a mask of this form and the
Bu Sun Kim65020912020-05-20 12:08:20 -07001384 &quot;config.softwareConfig.pypiPackages&quot; mask.&lt;/td&gt;
Dan O'Mearadd494642020-05-01 07:42:23 -07001385 &lt;/tr&gt;
1386 &lt;tr&gt;
1387 &lt;td&gt;labels&lt;/td&gt;
1388 &lt;td&gt;Replace all environment labels. If a replacement labels map is not
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001389 included in `environment`, all labels are cleared. It is an error to
1390 provide both this mask and a mask specifying one or more individual
Dan O'Mearadd494642020-05-01 07:42:23 -07001391 labels.&lt;/td&gt;
1392 &lt;/tr&gt;
1393 &lt;tr&gt;
1394 &lt;td&gt;labels.&lt;var&gt;labelName&lt;/var&gt;&lt;/td&gt;
1395 &lt;td&gt;Set the label named &lt;var&gt;labelName&lt;/var&gt;, while preserving other
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001396 labels. To delete the label, include it in `updateMask` and omit its
1397 mapping in `environment.labels`. It is an error to provide both a
Bu Sun Kim65020912020-05-20 12:08:20 -07001398 mask of this form and the &quot;labels&quot; mask.&lt;/td&gt;
Dan O'Mearadd494642020-05-01 07:42:23 -07001399 &lt;/tr&gt;
1400 &lt;tr&gt;
1401 &lt;td&gt;config.nodeCount&lt;/td&gt;
1402 &lt;td&gt;Horizontally scale the number of nodes in the environment. An integer
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001403 greater than or equal to 3 must be provided in the `config.nodeCount`
1404 field.
Dan O'Mearadd494642020-05-01 07:42:23 -07001405 &lt;/td&gt;
1406 &lt;/tr&gt;
1407 &lt;tr&gt;
1408 &lt;td&gt;config.softwareConfig.airflowConfigOverrides&lt;/td&gt;
1409 &lt;td&gt;Replace all Apache Airflow config overrides. If a replacement config
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001410 overrides map is not included in `environment`, all config overrides
1411 are cleared.
1412 It is an error to provide both this mask and a mask specifying one or
Dan O'Mearadd494642020-05-01 07:42:23 -07001413 more individual config overrides.&lt;/td&gt;
1414 &lt;/tr&gt;
1415 &lt;tr&gt;
1416 &lt;td&gt;config.softwareConfig.airflowConfigOverrides.&lt;var&gt;section&lt;/var&gt;-&lt;var&gt;name
1417 &lt;/var&gt;&lt;/td&gt;
1418 &lt;td&gt;Override the Apache Airflow config property &lt;var&gt;name&lt;/var&gt; in the
1419 section named &lt;var&gt;section&lt;/var&gt;, preserving other properties. To delete
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001420 the property override, include it in `updateMask` and omit its mapping
1421 in `environment.config.softwareConfig.airflowConfigOverrides`.
1422 It is an error to provide both a mask of this form and the
Bu Sun Kim65020912020-05-20 12:08:20 -07001423 &quot;config.softwareConfig.airflowConfigOverrides&quot; mask.&lt;/td&gt;
Dan O'Mearadd494642020-05-01 07:42:23 -07001424 &lt;/tr&gt;
1425 &lt;tr&gt;
1426 &lt;td&gt;config.softwareConfig.envVariables&lt;/td&gt;
1427 &lt;td&gt;Replace all environment variables. If a replacement environment
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001428 variable map is not included in `environment`, all custom environment
1429 variables are cleared.
1430 It is an error to provide both this mask and a mask specifying one or
Dan O'Mearadd494642020-05-01 07:42:23 -07001431 more individual environment variables.&lt;/td&gt;
1432 &lt;/tr&gt;
1433 &lt;/tbody&gt;
1434 &lt;/table&gt;
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001435 x__xgafv: string, V1 error format.
1436 Allowed values
1437 1 - v1 error format
1438 2 - v2 error format
1439
1440Returns:
1441 An object of the form:
1442
1443 { # This resource represents a long-running operation that is the result of a
1444 # network API call.
Bu Sun Kim65020912020-05-20 12:08:20 -07001445 &quot;done&quot;: True or False, # If the value is `false`, it means the operation is still in progress.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001446 # If `true`, the operation is completed, and either `error` or `response` is
1447 # available.
Bu Sun Kim65020912020-05-20 12:08:20 -07001448 &quot;response&quot;: { # The normal response of the operation in case of success. If the original
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001449 # method returns no data on success, such as `Delete`, the response is
1450 # `google.protobuf.Empty`. If the original method is standard
1451 # `Get`/`Create`/`Update`, the response should be the resource. For other
1452 # methods, the response should have the type `XxxResponse`, where `Xxx`
1453 # is the original method name. For example, if the original method name
1454 # is `TakeSnapshot()`, the inferred response type is
1455 # `TakeSnapshotResponse`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001456 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001457 },
Bu Sun Kim65020912020-05-20 12:08:20 -07001458 &quot;name&quot;: &quot;A String&quot;, # The server-assigned name, which is only unique within the same service that
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001459 # originally returns it. If you use the default HTTP mapping, the
1460 # `name` should be a resource name ending with `operations/{unique_id}`.
Bu Sun Kim65020912020-05-20 12:08:20 -07001461 &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.
1462 # different programming environments, including REST APIs and RPC APIs. It is
1463 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1464 # three pieces of data: error code, error message, and error details.
1465 #
1466 # You can find out more about this error model and how to work with it in the
1467 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim65020912020-05-20 12:08:20 -07001468 &quot;details&quot;: [ # A list of messages that carry the error details. There is a common set of
1469 # message types for APIs to use.
1470 {
1471 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
1472 },
1473 ],
Bu Sun Kim4ed7d3f2020-05-27 12:20:54 -07001474 &quot;code&quot;: 42, # The status code, which should be an enum value of google.rpc.Code.
1475 &quot;message&quot;: &quot;A String&quot;, # A developer-facing error message, which should be in English. Any
1476 # user-facing error message should be localized and sent in the
1477 # google.rpc.Status.details field, or localized by the client.
1478 },
1479 &quot;metadata&quot;: { # Service-specific metadata associated with the operation. It typically
1480 # contains progress information and common metadata such as create time.
1481 # Some services might not provide such metadata. Any method that returns a
1482 # long-running operation should document the metadata type, if any.
1483 &quot;a_key&quot;: &quot;&quot;, # Properties of the object. Contains field @type with type URL.
Bu Sun Kim65020912020-05-20 12:08:20 -07001484 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001485 }</pre>
1486</div>
1487
1488</body></html>