blob: e7b70b3050ac3fcb895d8a4a83ef74e8a40c5848 [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">
Dan O'Mearadd494642020-05-01 07:42:23 -070087 <code><a href="#list">list(parent, pageToken=None, x__xgafv=None, pageSize=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
102"projects/{projectId}/locations/{locationId}". (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.
Dan O'Mearadd494642020-05-01 07:42:23 -0700107 "updateTime": "A String", # Output only. The time at which this environment was last modified.
108 "uuid": "A String", # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700109 # This value is generated when the environment is created.
110 "labels": { # Optional. User-defined labels for this environment.
111 # The labels map can contain no more than 64 entries. Entries of the labels
112 # map are UTF8 strings that comply with the following restrictions:
113 #
114 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
115 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
Dan O'Mearadd494642020-05-01 07:42:23 -0700116 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700117 # size.
118 "a_key": "A String",
119 },
120 "state": "A String", # The current state of the environment.
121 "config": { # Configuration information for an environment. # Configuration parameters for this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -0700122 "dagGcsPrefix": "A String", # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700123 # Storage objects reside in a flat namespace, a hierarchical file tree
124 # can be simulated using "/"-delimited object name prefixes. DAG objects for
125 # this environment reside in a simulated directory with the given prefix.
126 "softwareConfig": { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
127 "imageVersion": "A String", # The version of the software running in the environment.
128 # This encapsulates both the version of Cloud Composer functionality and the
129 # version of Apache Airflow. It must match the regular expression
130 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
131 # When used as input, the server also checks if the provided version is
132 # supported and denies the request for an unsupported version.
133 #
134 # The Cloud Composer portion of the version is a
135 # [semantic version](https://semver.org) or `latest`. When the patch version
136 # is omitted, the current Cloud Composer patch version is selected.
137 # When `latest` is provided instead of an explicit version number,
138 # the server replaces `latest` with the current Cloud Composer version
139 # and stores that version number in the same field.
140 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700141 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700142 # official Apache Airflow repository
143 # [release name](https://github.com/apache/incubator-airflow/releases).
144 #
145 # See also [Version
146 # List](/composer/docs/concepts/versioning/composer-versions).
147 "pypiPackages": { # Optional. Custom Python Package Index (PyPI) packages to be installed in
148 # the environment.
149 #
150 # Keys refer to the lowercase package name such as "numpy"
151 # and values are the lowercase extras and version specifier such as
Dan O'Mearadd494642020-05-01 07:42:23 -0700152 # "==1.12.0", "[devel,gcp_api]", or "[devel]&gt;=1.8.2, &lt;1.9.2". To specify a
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700153 # package without pinning it to a version specifier, use the empty string as
154 # the value.
155 "a_key": "A String",
156 },
157 "pythonVersion": "A String", # Optional. The major version of Python used to run the Apache Airflow
158 # scheduler, worker, and webserver processes.
159 #
160 # Can be set to '2' or '3'. If not specified, the default is '2'. Cannot be
161 # updated.
162 "envVariables": { # Optional. Additional environment variables to provide to the Apache Airflow
163 # scheduler, worker, and webserver processes.
164 #
165 # Environment variable names must match the regular expression
166 # `a-zA-Z_*`. They cannot specify Apache Airflow
167 # software configuration overrides (they cannot match the regular expression
168 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
169 # following reserved names:
170 #
171 # * `AIRFLOW_HOME`
172 # * `C_FORCE_ROOT`
173 # * `CONTAINER_NAME`
174 # * `DAGS_FOLDER`
175 # * `GCP_PROJECT`
176 # * `GCS_BUCKET`
177 # * `GKE_CLUSTER_NAME`
178 # * `SQL_DATABASE`
179 # * `SQL_INSTANCE`
180 # * `SQL_PASSWORD`
181 # * `SQL_PROJECT`
182 # * `SQL_REGION`
183 # * `SQL_USER`
184 "a_key": "A String",
185 },
186 "airflowConfigOverrides": { # Optional. Apache Airflow configuration properties to override.
187 #
188 # Property keys contain the section and property names, separated by a
189 # hyphen, for example "core-dags_are_paused_at_creation". Section names must
190 # not contain hyphens ("-"), opening square brackets ("["), or closing
191 # square brackets ("]"). The property name must not be empty and must not
192 # contain an equals sign ("=") or semicolon (";"). Section and property names
193 # must not contain a period ("."). Apache Airflow configuration property
194 # names must be written in
195 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
196 # contain any character, and can be written in any lower/upper case format.
197 #
198 # Certain Apache Airflow configuration property values are
199 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
200 # and cannot be overridden.
201 "a_key": "A String",
202 },
203 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700204 "airflowUri": "A String", # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700205 # [Airflow web
206 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
Dan O'Mearadd494642020-05-01 07:42:23 -0700207 "gkeCluster": "A String", # Output only. The Kubernetes Engine cluster used to run this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700208 "nodeConfig": { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
209 # the Apache Airflow software.
210 "machineType": "A String", # Optional. The Compute Engine
211 # [machine type](/compute/docs/machine-types) used for cluster instances,
212 # specified as a
213 # [relative resource
214 # name](/apis/design/resource_names#relative_resource_name). For example:
215 # "projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}".
216 #
217 # The `machineType` must belong to the enclosing environment's project and
218 # location. If both this field and `nodeConfig.location` are specified,
219 # this `machineType` must belong to the `nodeConfig.location`; if both are
220 # unspecified, the service will pick a zone in the Compute Engine region
221 # corresponding to the Cloud Composer location, and propagate that choice to
222 # both fields. If exactly one of this field and `nodeConfig.location` is
223 # specified, the location information from the specified field will be
224 # propagated to the unspecified field.
225 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700226 # The `machineTypeId` must not be a [shared-core machine
227 # type](/compute/docs/machine-types#sharedcore).
228 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700229 # If this field is unspecified, the `machineTypeId` defaults
230 # to "n1-standard-1".
231 "network": "A String", # Optional. The Compute Engine network to be used for machine
232 # communications, specified as a
233 # [relative resource
234 # name](/apis/design/resource_names#relative_resource_name). For example:
235 # "projects/{projectId}/global/networks/{networkId}".
236 #
237 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
238 # network must belong to the environment's project. If unspecified, the
239 # "default" network ID in the environment's project is used. If a
240 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
241 # is provided, `nodeConfig.subnetwork` must also be provided.
242 "tags": [ # Optional. The list of instance tags applied to all node VMs. Tags are used
243 # to identify valid sources or targets for network firewalls. Each tag within
244 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
245 # Cannot be updated.
246 "A String",
247 ],
248 "serviceAccount": "A String", # Optional. The Google Cloud Platform Service Account to be used by the node
249 # VMs. If a service account is not specified, the "default" Compute Engine
250 # service account is used. Cannot be updated.
251 "oauthScopes": [ # Optional. The set of Google API scopes to be made available on all
252 # node VMs. If `oauth_scopes` is empty, defaults to
253 # ["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated.
254 "A String",
255 ],
256 "diskSizeGb": 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
257 # If unspecified, defaults to 100GB. Cannot be updated.
258 "location": "A String", # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
259 # to deploy the VMs used to run the Apache Airflow software, specified as a
260 # [relative resource
261 # name](/apis/design/resource_names#relative_resource_name). For example:
262 # "projects/{projectId}/zones/{zoneId}".
263 #
264 # This `location` must belong to the enclosing environment's project and
265 # location. If both this field and `nodeConfig.machineType` are specified,
266 # `nodeConfig.machineType` must belong to this `location`; if both are
267 # unspecified, the service will pick a zone in the Compute Engine region
268 # corresponding to the Cloud Composer location, and propagate that choice to
269 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
270 # specified, the location information from the specified field will be
271 # propagated to the unspecified field.
272 "subnetwork": "A String", # Optional. The Compute Engine subnetwork to be used for machine
273 # communications, specified as a
274 # [relative resource
275 # name](/apis/design/resource_names#relative_resource_name). For example:
276 # "projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}"
277 #
278 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
279 # and the subnetwork must belong to the enclosing environment's project and
280 # location.
Dan O'Mearadd494642020-05-01 07:42:23 -0700281 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
282 # GKE cluster running the Apache Airflow software.
283 "clusterIpv4CidrBlock": "A String", # Optional. The IP address range used to allocate IP addresses to pods in
284 # the GKE cluster.
285 #
286 # This field is applicable only when `use_ip_aliases` is true.
287 #
288 # Set to blank to have GKE choose a range with the default size.
289 #
290 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
291 # netmask.
292 #
293 # Set to a
294 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
295 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
296 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
297 # to use.
298 "servicesIpv4CidrBlock": "A String", # Optional. The IP address range of the services IP addresses in this
299 # GKE cluster.
300 #
301 # This field is applicable only when `use_ip_aliases` is true.
302 #
303 # Set to blank to have GKE choose a range with the default size.
304 #
305 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
306 # netmask.
307 #
308 # Set to a
309 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
310 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
311 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
312 # to use.
313 "servicesSecondaryRangeName": "A String", # Optional. The name of the services' secondary range used to allocate
314 # IP addresses to the GKE cluster.
315 #
316 # This field is applicable only when `use_ip_aliases` is true.
317 "useIpAliases": True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
318 # If `true`, a VPC-native cluster is created.
319 "clusterSecondaryRangeName": "A String", # Optional. The name of the GKE cluster's secondary range used to allocate
320 # IP addresses to pods.
321 #
322 # This field is applicable only when `use_ip_aliases` is true.
323 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700324 },
325 "nodeCount": 42, # The number of nodes in the Kubernetes Engine cluster that will be
326 # used to run this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -0700327 "privateEnvironmentConfig": { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
328 # environment.
329 "cloudSqlIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range in tenant project will be reserved for
330 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
331 "webServerIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range for web server will be reserved. Needs
332 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
333 # `cloud_sql_ipv4_cidr_block`.
334 "webServerIpv4ReservedRange": "A String", # Output only. The IP range reserved for the tenant project's App Engine VMs.
335 "enablePrivateEnvironment": True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
336 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
337 # set to true.
338 "privateClusterConfig": { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
339 # Cloud Composer environment.
340 # environment.
341 "enablePrivateEndpoint": True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
342 # denied.
343 "masterIpv4ReservedRange": "A String", # Output only. The IP range in CIDR notation to use for the hosted master network. This
344 # range is used for assigning internal IP addresses to the GKE cluster
345 # master or set of masters and to the internal load balancer virtual IP.
346 # This range must not overlap with any other ranges in use
347 # within the cluster's network.
348 "masterIpv4CidrBlock": "A String", # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
349 # left blank, the default value of '172.16.0.0/23' is used.
350 },
351 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700352 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700353 "createTime": "A String", # Output only. The time at which this environment was created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700354 "name": "A String", # The resource name of the environment, in the form:
355 # "projects/{projectId}/locations/{locationId}/environments/{environmentId}"
Dan O'Mearadd494642020-05-01 07:42:23 -0700356 #
357 # EnvironmentId must start with a lowercase letter followed by up to 63
358 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700359 }
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 "metadata": { # Service-specific metadata associated with the operation. It typically
372 # contains progress information and common metadata such as create time.
373 # Some services might not provide such metadata. Any method that returns a
374 # long-running operation should document the metadata type, if any.
375 "a_key": "", # Properties of the object. Contains field @type with type URL.
376 },
377 "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
378 # different programming environments, including REST APIs and RPC APIs. It is
Dan O'Mearadd494642020-05-01 07:42:23 -0700379 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
380 # three pieces of data: error code, error message, and error details.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700381 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700382 # You can find out more about this error model and how to work with it in the
383 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700384 "message": "A String", # A developer-facing error message, which should be in English. Any
385 # user-facing error message should be localized and sent in the
386 # google.rpc.Status.details field, or localized by the client.
387 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
388 "details": [ # A list of messages that carry the error details. There is a common set of
389 # message types for APIs to use.
390 {
391 "a_key": "", # Properties of the object. Contains field @type with type URL.
392 },
393 ],
394 },
395 "done": True or False, # If the value is `false`, it means the operation is still in progress.
396 # If `true`, the operation is completed, and either `error` or `response` is
397 # available.
398 "response": { # The normal response of the operation in case of success. If the original
399 # method returns no data on success, such as `Delete`, the response is
400 # `google.protobuf.Empty`. If the original method is standard
401 # `Get`/`Create`/`Update`, the response should be the resource. For other
402 # methods, the response should have the type `XxxResponse`, where `Xxx`
403 # is the original method name. For example, if the original method name
404 # is `TakeSnapshot()`, the inferred response type is
405 # `TakeSnapshotResponse`.
406 "a_key": "", # Properties of the object. Contains field @type with type URL.
407 },
408 "name": "A String", # The server-assigned name, which is only unique within the same service that
409 # originally returns it. If you use the default HTTP mapping, the
410 # `name` should be a resource name ending with `operations/{unique_id}`.
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"projects/{projectId}/locations/{locationId}/environments/{environmentId}" (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 "metadata": { # Service-specific metadata associated with the operation. It typically
432 # contains progress information and common metadata such as create time.
433 # Some services might not provide such metadata. Any method that returns a
434 # long-running operation should document the metadata type, if any.
435 "a_key": "", # Properties of the object. Contains field @type with type URL.
436 },
437 "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
438 # different programming environments, including REST APIs and RPC APIs. It is
Dan O'Mearadd494642020-05-01 07:42:23 -0700439 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
440 # three pieces of data: error code, error message, and error details.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700441 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700442 # You can find out more about this error model and how to work with it in the
443 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700444 "message": "A String", # A developer-facing error message, which should be in English. Any
445 # user-facing error message should be localized and sent in the
446 # google.rpc.Status.details field, or localized by the client.
447 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
448 "details": [ # A list of messages that carry the error details. There is a common set of
449 # message types for APIs to use.
450 {
451 "a_key": "", # Properties of the object. Contains field @type with type URL.
452 },
453 ],
454 },
455 "done": True or False, # If the value is `false`, it means the operation is still in progress.
456 # If `true`, the operation is completed, and either `error` or `response` is
457 # available.
458 "response": { # The normal response of the operation in case of success. If the original
459 # method returns no data on success, such as `Delete`, the response is
460 # `google.protobuf.Empty`. If the original method is standard
461 # `Get`/`Create`/`Update`, the response should be the resource. For other
462 # methods, the response should have the type `XxxResponse`, where `Xxx`
463 # is the original method name. For example, if the original method name
464 # is `TakeSnapshot()`, the inferred response type is
465 # `TakeSnapshotResponse`.
466 "a_key": "", # Properties of the object. Contains field @type with type URL.
467 },
468 "name": "A String", # The server-assigned name, which is only unique within the same service that
469 # originally returns it. If you use the default HTTP mapping, the
470 # `name` should be a resource name ending with `operations/{unique_id}`.
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"projects/{projectId}/locations/{locationId}/environments/{environmentId}" (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.
Dan O'Mearadd494642020-05-01 07:42:23 -0700490 "updateTime": "A String", # Output only. The time at which this environment was last modified.
491 "uuid": "A String", # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700492 # This value is generated when the environment is created.
493 "labels": { # Optional. User-defined labels for this environment.
494 # The labels map can contain no more than 64 entries. Entries of the labels
495 # map are UTF8 strings that comply with the following restrictions:
496 #
497 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
498 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
Dan O'Mearadd494642020-05-01 07:42:23 -0700499 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700500 # size.
501 "a_key": "A String",
502 },
503 "state": "A String", # The current state of the environment.
504 "config": { # Configuration information for an environment. # Configuration parameters for this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -0700505 "dagGcsPrefix": "A String", # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700506 # Storage objects reside in a flat namespace, a hierarchical file tree
507 # can be simulated using "/"-delimited object name prefixes. DAG objects for
508 # this environment reside in a simulated directory with the given prefix.
509 "softwareConfig": { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
510 "imageVersion": "A String", # The version of the software running in the environment.
511 # This encapsulates both the version of Cloud Composer functionality and the
512 # version of Apache Airflow. It must match the regular expression
513 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
514 # When used as input, the server also checks if the provided version is
515 # supported and denies the request for an unsupported version.
516 #
517 # The Cloud Composer portion of the version is a
518 # [semantic version](https://semver.org) or `latest`. When the patch version
519 # is omitted, the current Cloud Composer patch version is selected.
520 # When `latest` is provided instead of an explicit version number,
521 # the server replaces `latest` with the current Cloud Composer version
522 # and stores that version number in the same field.
523 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700524 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700525 # official Apache Airflow repository
526 # [release name](https://github.com/apache/incubator-airflow/releases).
527 #
528 # See also [Version
529 # List](/composer/docs/concepts/versioning/composer-versions).
530 "pypiPackages": { # Optional. Custom Python Package Index (PyPI) packages to be installed in
531 # the environment.
532 #
533 # Keys refer to the lowercase package name such as "numpy"
534 # and values are the lowercase extras and version specifier such as
Dan O'Mearadd494642020-05-01 07:42:23 -0700535 # "==1.12.0", "[devel,gcp_api]", or "[devel]&gt;=1.8.2, &lt;1.9.2". To specify a
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700536 # package without pinning it to a version specifier, use the empty string as
537 # the value.
538 "a_key": "A String",
539 },
540 "pythonVersion": "A String", # Optional. The major version of Python used to run the Apache Airflow
541 # scheduler, worker, and webserver processes.
542 #
543 # Can be set to '2' or '3'. If not specified, the default is '2'. Cannot be
544 # updated.
545 "envVariables": { # Optional. Additional environment variables to provide to the Apache Airflow
546 # scheduler, worker, and webserver processes.
547 #
548 # Environment variable names must match the regular expression
549 # `a-zA-Z_*`. They cannot specify Apache Airflow
550 # software configuration overrides (they cannot match the regular expression
551 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
552 # following reserved names:
553 #
554 # * `AIRFLOW_HOME`
555 # * `C_FORCE_ROOT`
556 # * `CONTAINER_NAME`
557 # * `DAGS_FOLDER`
558 # * `GCP_PROJECT`
559 # * `GCS_BUCKET`
560 # * `GKE_CLUSTER_NAME`
561 # * `SQL_DATABASE`
562 # * `SQL_INSTANCE`
563 # * `SQL_PASSWORD`
564 # * `SQL_PROJECT`
565 # * `SQL_REGION`
566 # * `SQL_USER`
567 "a_key": "A String",
568 },
569 "airflowConfigOverrides": { # Optional. Apache Airflow configuration properties to override.
570 #
571 # Property keys contain the section and property names, separated by a
572 # hyphen, for example "core-dags_are_paused_at_creation". Section names must
573 # not contain hyphens ("-"), opening square brackets ("["), or closing
574 # square brackets ("]"). The property name must not be empty and must not
575 # contain an equals sign ("=") or semicolon (";"). Section and property names
576 # must not contain a period ("."). Apache Airflow configuration property
577 # names must be written in
578 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
579 # contain any character, and can be written in any lower/upper case format.
580 #
581 # Certain Apache Airflow configuration property values are
582 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
583 # and cannot be overridden.
584 "a_key": "A String",
585 },
586 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700587 "airflowUri": "A String", # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700588 # [Airflow web
589 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
Dan O'Mearadd494642020-05-01 07:42:23 -0700590 "gkeCluster": "A String", # Output only. The Kubernetes Engine cluster used to run this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700591 "nodeConfig": { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
592 # the Apache Airflow software.
593 "machineType": "A String", # Optional. The Compute Engine
594 # [machine type](/compute/docs/machine-types) used for cluster instances,
595 # specified as a
596 # [relative resource
597 # name](/apis/design/resource_names#relative_resource_name). For example:
598 # "projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}".
599 #
600 # The `machineType` must belong to the enclosing environment's project and
601 # location. If both this field and `nodeConfig.location` are specified,
602 # this `machineType` must belong to the `nodeConfig.location`; if both are
603 # unspecified, the service will pick a zone in the Compute Engine region
604 # corresponding to the Cloud Composer location, and propagate that choice to
605 # both fields. If exactly one of this field and `nodeConfig.location` is
606 # specified, the location information from the specified field will be
607 # propagated to the unspecified field.
608 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700609 # The `machineTypeId` must not be a [shared-core machine
610 # type](/compute/docs/machine-types#sharedcore).
611 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700612 # If this field is unspecified, the `machineTypeId` defaults
613 # to "n1-standard-1".
614 "network": "A String", # Optional. The Compute Engine network to be used for machine
615 # communications, specified as a
616 # [relative resource
617 # name](/apis/design/resource_names#relative_resource_name). For example:
618 # "projects/{projectId}/global/networks/{networkId}".
619 #
620 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
621 # network must belong to the environment's project. If unspecified, the
622 # "default" network ID in the environment's project is used. If a
623 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
624 # is provided, `nodeConfig.subnetwork` must also be provided.
625 "tags": [ # Optional. The list of instance tags applied to all node VMs. Tags are used
626 # to identify valid sources or targets for network firewalls. Each tag within
627 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
628 # Cannot be updated.
629 "A String",
630 ],
631 "serviceAccount": "A String", # Optional. The Google Cloud Platform Service Account to be used by the node
632 # VMs. If a service account is not specified, the "default" Compute Engine
633 # service account is used. Cannot be updated.
634 "oauthScopes": [ # Optional. The set of Google API scopes to be made available on all
635 # node VMs. If `oauth_scopes` is empty, defaults to
636 # ["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated.
637 "A String",
638 ],
639 "diskSizeGb": 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
640 # If unspecified, defaults to 100GB. Cannot be updated.
641 "location": "A String", # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
642 # to deploy the VMs used to run the Apache Airflow software, specified as a
643 # [relative resource
644 # name](/apis/design/resource_names#relative_resource_name). For example:
645 # "projects/{projectId}/zones/{zoneId}".
646 #
647 # This `location` must belong to the enclosing environment's project and
648 # location. If both this field and `nodeConfig.machineType` are specified,
649 # `nodeConfig.machineType` must belong to this `location`; if both are
650 # unspecified, the service will pick a zone in the Compute Engine region
651 # corresponding to the Cloud Composer location, and propagate that choice to
652 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
653 # specified, the location information from the specified field will be
654 # propagated to the unspecified field.
655 "subnetwork": "A String", # Optional. The Compute Engine subnetwork to be used for machine
656 # communications, specified as a
657 # [relative resource
658 # name](/apis/design/resource_names#relative_resource_name). For example:
659 # "projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}"
660 #
661 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
662 # and the subnetwork must belong to the enclosing environment's project and
663 # location.
Dan O'Mearadd494642020-05-01 07:42:23 -0700664 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
665 # GKE cluster running the Apache Airflow software.
666 "clusterIpv4CidrBlock": "A String", # Optional. The IP address range used to allocate IP addresses to pods in
667 # the GKE cluster.
668 #
669 # This field is applicable only when `use_ip_aliases` is true.
670 #
671 # Set to blank to have GKE choose a range with the default size.
672 #
673 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
674 # netmask.
675 #
676 # Set to a
677 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
678 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
679 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
680 # to use.
681 "servicesIpv4CidrBlock": "A String", # Optional. The IP address range of the services IP addresses in this
682 # GKE cluster.
683 #
684 # This field is applicable only when `use_ip_aliases` is true.
685 #
686 # Set to blank to have GKE choose a range with the default size.
687 #
688 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
689 # netmask.
690 #
691 # Set to a
692 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
693 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
694 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
695 # to use.
696 "servicesSecondaryRangeName": "A String", # Optional. The name of the services' secondary range used to allocate
697 # IP addresses to the GKE cluster.
698 #
699 # This field is applicable only when `use_ip_aliases` is true.
700 "useIpAliases": True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
701 # If `true`, a VPC-native cluster is created.
702 "clusterSecondaryRangeName": "A String", # Optional. The name of the GKE cluster's secondary range used to allocate
703 # IP addresses to pods.
704 #
705 # This field is applicable only when `use_ip_aliases` is true.
706 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700707 },
708 "nodeCount": 42, # The number of nodes in the Kubernetes Engine cluster that will be
709 # used to run this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -0700710 "privateEnvironmentConfig": { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
711 # environment.
712 "cloudSqlIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range in tenant project will be reserved for
713 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
714 "webServerIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range for web server will be reserved. Needs
715 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
716 # `cloud_sql_ipv4_cidr_block`.
717 "webServerIpv4ReservedRange": "A String", # Output only. The IP range reserved for the tenant project's App Engine VMs.
718 "enablePrivateEnvironment": True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
719 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
720 # set to true.
721 "privateClusterConfig": { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
722 # Cloud Composer environment.
723 # environment.
724 "enablePrivateEndpoint": True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
725 # denied.
726 "masterIpv4ReservedRange": "A String", # Output only. The IP range in CIDR notation to use for the hosted master network. This
727 # range is used for assigning internal IP addresses to the GKE cluster
728 # master or set of masters and to the internal load balancer virtual IP.
729 # This range must not overlap with any other ranges in use
730 # within the cluster's network.
731 "masterIpv4CidrBlock": "A String", # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
732 # left blank, the default value of '172.16.0.0/23' is used.
733 },
734 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700735 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700736 "createTime": "A String", # Output only. The time at which this environment was created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700737 "name": "A String", # The resource name of the environment, in the form:
738 # "projects/{projectId}/locations/{locationId}/environments/{environmentId}"
Dan O'Mearadd494642020-05-01 07:42:23 -0700739 #
740 # EnvironmentId must start with a lowercase letter followed by up to 63
741 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700742 }</pre>
743</div>
744
745<div class="method">
Dan O'Mearadd494642020-05-01 07:42:23 -0700746 <code class="details" id="list">list(parent, pageToken=None, x__xgafv=None, pageSize=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:
751"projects/{projectId}/locations/{locationId}" (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.
753 x__xgafv: string, V1 error format.
754 Allowed values
755 1 - v1 error format
756 2 - v2 error format
Dan O'Mearadd494642020-05-01 07:42:23 -0700757 pageSize: integer, The maximum number of environments to return.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700758
759Returns:
760 An object of the form:
761
762 { # The environments in a project and location.
763 "nextPageToken": "A String", # The page token used to query for the next page if one exists.
764 "environments": [ # The list of environments returned by a ListEnvironmentsRequest.
765 { # An environment for running orchestration tasks.
Dan O'Mearadd494642020-05-01 07:42:23 -0700766 "updateTime": "A String", # Output only. The time at which this environment was last modified.
767 "uuid": "A String", # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700768 # This value is generated when the environment is created.
769 "labels": { # Optional. User-defined labels for this environment.
770 # The labels map can contain no more than 64 entries. Entries of the labels
771 # map are UTF8 strings that comply with the following restrictions:
772 #
773 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
774 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
Dan O'Mearadd494642020-05-01 07:42:23 -0700775 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700776 # size.
777 "a_key": "A String",
778 },
779 "state": "A String", # The current state of the environment.
780 "config": { # Configuration information for an environment. # Configuration parameters for this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -0700781 "dagGcsPrefix": "A String", # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700782 # Storage objects reside in a flat namespace, a hierarchical file tree
783 # can be simulated using "/"-delimited object name prefixes. DAG objects for
784 # this environment reside in a simulated directory with the given prefix.
785 "softwareConfig": { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
786 "imageVersion": "A String", # The version of the software running in the environment.
787 # This encapsulates both the version of Cloud Composer functionality and the
788 # version of Apache Airflow. It must match the regular expression
789 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
790 # When used as input, the server also checks if the provided version is
791 # supported and denies the request for an unsupported version.
792 #
793 # The Cloud Composer portion of the version is a
794 # [semantic version](https://semver.org) or `latest`. When the patch version
795 # is omitted, the current Cloud Composer patch version is selected.
796 # When `latest` is provided instead of an explicit version number,
797 # the server replaces `latest` with the current Cloud Composer version
798 # and stores that version number in the same field.
799 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700800 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700801 # official Apache Airflow repository
802 # [release name](https://github.com/apache/incubator-airflow/releases).
803 #
804 # See also [Version
805 # List](/composer/docs/concepts/versioning/composer-versions).
806 "pypiPackages": { # Optional. Custom Python Package Index (PyPI) packages to be installed in
807 # the environment.
808 #
809 # Keys refer to the lowercase package name such as "numpy"
810 # and values are the lowercase extras and version specifier such as
Dan O'Mearadd494642020-05-01 07:42:23 -0700811 # "==1.12.0", "[devel,gcp_api]", or "[devel]&gt;=1.8.2, &lt;1.9.2". To specify a
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700812 # package without pinning it to a version specifier, use the empty string as
813 # the value.
814 "a_key": "A String",
815 },
816 "pythonVersion": "A String", # Optional. The major version of Python used to run the Apache Airflow
817 # scheduler, worker, and webserver processes.
818 #
819 # Can be set to '2' or '3'. If not specified, the default is '2'. Cannot be
820 # updated.
821 "envVariables": { # Optional. Additional environment variables to provide to the Apache Airflow
822 # scheduler, worker, and webserver processes.
823 #
824 # Environment variable names must match the regular expression
825 # `a-zA-Z_*`. They cannot specify Apache Airflow
826 # software configuration overrides (they cannot match the regular expression
827 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
828 # following reserved names:
829 #
830 # * `AIRFLOW_HOME`
831 # * `C_FORCE_ROOT`
832 # * `CONTAINER_NAME`
833 # * `DAGS_FOLDER`
834 # * `GCP_PROJECT`
835 # * `GCS_BUCKET`
836 # * `GKE_CLUSTER_NAME`
837 # * `SQL_DATABASE`
838 # * `SQL_INSTANCE`
839 # * `SQL_PASSWORD`
840 # * `SQL_PROJECT`
841 # * `SQL_REGION`
842 # * `SQL_USER`
843 "a_key": "A String",
844 },
845 "airflowConfigOverrides": { # Optional. Apache Airflow configuration properties to override.
846 #
847 # Property keys contain the section and property names, separated by a
848 # hyphen, for example "core-dags_are_paused_at_creation". Section names must
849 # not contain hyphens ("-"), opening square brackets ("["), or closing
850 # square brackets ("]"). The property name must not be empty and must not
851 # contain an equals sign ("=") or semicolon (";"). Section and property names
852 # must not contain a period ("."). Apache Airflow configuration property
853 # names must be written in
854 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
855 # contain any character, and can be written in any lower/upper case format.
856 #
857 # Certain Apache Airflow configuration property values are
858 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
859 # and cannot be overridden.
860 "a_key": "A String",
861 },
862 },
Dan O'Mearadd494642020-05-01 07:42:23 -0700863 "airflowUri": "A String", # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700864 # [Airflow web
865 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
Dan O'Mearadd494642020-05-01 07:42:23 -0700866 "gkeCluster": "A String", # Output only. The Kubernetes Engine cluster used to run this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700867 "nodeConfig": { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
868 # the Apache Airflow software.
869 "machineType": "A String", # Optional. The Compute Engine
870 # [machine type](/compute/docs/machine-types) used for cluster instances,
871 # specified as a
872 # [relative resource
873 # name](/apis/design/resource_names#relative_resource_name). For example:
874 # "projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}".
875 #
876 # The `machineType` must belong to the enclosing environment's project and
877 # location. If both this field and `nodeConfig.location` are specified,
878 # this `machineType` must belong to the `nodeConfig.location`; if both are
879 # unspecified, the service will pick a zone in the Compute Engine region
880 # corresponding to the Cloud Composer location, and propagate that choice to
881 # both fields. If exactly one of this field and `nodeConfig.location` is
882 # specified, the location information from the specified field will be
883 # propagated to the unspecified field.
884 #
Dan O'Mearadd494642020-05-01 07:42:23 -0700885 # The `machineTypeId` must not be a [shared-core machine
886 # type](/compute/docs/machine-types#sharedcore).
887 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700888 # If this field is unspecified, the `machineTypeId` defaults
889 # to "n1-standard-1".
890 "network": "A String", # Optional. The Compute Engine network to be used for machine
891 # communications, specified as a
892 # [relative resource
893 # name](/apis/design/resource_names#relative_resource_name). For example:
894 # "projects/{projectId}/global/networks/{networkId}".
895 #
896 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
897 # network must belong to the environment's project. If unspecified, the
898 # "default" network ID in the environment's project is used. If a
899 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
900 # is provided, `nodeConfig.subnetwork` must also be provided.
901 "tags": [ # Optional. The list of instance tags applied to all node VMs. Tags are used
902 # to identify valid sources or targets for network firewalls. Each tag within
903 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
904 # Cannot be updated.
905 "A String",
906 ],
907 "serviceAccount": "A String", # Optional. The Google Cloud Platform Service Account to be used by the node
908 # VMs. If a service account is not specified, the "default" Compute Engine
909 # service account is used. Cannot be updated.
910 "oauthScopes": [ # Optional. The set of Google API scopes to be made available on all
911 # node VMs. If `oauth_scopes` is empty, defaults to
912 # ["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated.
913 "A String",
914 ],
915 "diskSizeGb": 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
916 # If unspecified, defaults to 100GB. Cannot be updated.
917 "location": "A String", # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
918 # to deploy the VMs used to run the Apache Airflow software, specified as a
919 # [relative resource
920 # name](/apis/design/resource_names#relative_resource_name). For example:
921 # "projects/{projectId}/zones/{zoneId}".
922 #
923 # This `location` must belong to the enclosing environment's project and
924 # location. If both this field and `nodeConfig.machineType` are specified,
925 # `nodeConfig.machineType` must belong to this `location`; if both are
926 # unspecified, the service will pick a zone in the Compute Engine region
927 # corresponding to the Cloud Composer location, and propagate that choice to
928 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
929 # specified, the location information from the specified field will be
930 # propagated to the unspecified field.
931 "subnetwork": "A String", # Optional. The Compute Engine subnetwork to be used for machine
932 # communications, specified as a
933 # [relative resource
934 # name](/apis/design/resource_names#relative_resource_name). For example:
935 # "projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}"
936 #
937 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
938 # and the subnetwork must belong to the enclosing environment's project and
939 # location.
Dan O'Mearadd494642020-05-01 07:42:23 -0700940 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
941 # GKE cluster running the Apache Airflow software.
942 "clusterIpv4CidrBlock": "A String", # Optional. The IP address range used to allocate IP addresses to pods in
943 # the GKE cluster.
944 #
945 # This field is applicable only when `use_ip_aliases` is true.
946 #
947 # Set to blank to have GKE choose a range with the default size.
948 #
949 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
950 # netmask.
951 #
952 # Set to a
953 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
954 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
955 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
956 # to use.
957 "servicesIpv4CidrBlock": "A String", # Optional. The IP address range of the services IP addresses in this
958 # GKE cluster.
959 #
960 # This field is applicable only when `use_ip_aliases` is true.
961 #
962 # Set to blank to have GKE choose a range with the default size.
963 #
964 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
965 # netmask.
966 #
967 # Set to a
968 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
969 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
970 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
971 # to use.
972 "servicesSecondaryRangeName": "A String", # Optional. The name of the services' secondary range used to allocate
973 # IP addresses to the GKE cluster.
974 #
975 # This field is applicable only when `use_ip_aliases` is true.
976 "useIpAliases": True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
977 # If `true`, a VPC-native cluster is created.
978 "clusterSecondaryRangeName": "A String", # Optional. The name of the GKE cluster's secondary range used to allocate
979 # IP addresses to pods.
980 #
981 # This field is applicable only when `use_ip_aliases` is true.
982 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -0700983 },
984 "nodeCount": 42, # The number of nodes in the Kubernetes Engine cluster that will be
985 # used to run this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -0700986 "privateEnvironmentConfig": { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
987 # environment.
988 "cloudSqlIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range in tenant project will be reserved for
989 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
990 "webServerIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range for web server will be reserved. Needs
991 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
992 # `cloud_sql_ipv4_cidr_block`.
993 "webServerIpv4ReservedRange": "A String", # Output only. The IP range reserved for the tenant project's App Engine VMs.
994 "enablePrivateEnvironment": True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
995 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
996 # set to true.
997 "privateClusterConfig": { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
998 # Cloud Composer environment.
999 # environment.
1000 "enablePrivateEndpoint": True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
1001 # denied.
1002 "masterIpv4ReservedRange": "A String", # Output only. The IP range in CIDR notation to use for the hosted master network. This
1003 # range is used for assigning internal IP addresses to the GKE cluster
1004 # master or set of masters and to the internal load balancer virtual IP.
1005 # This range must not overlap with any other ranges in use
1006 # within the cluster's network.
1007 "masterIpv4CidrBlock": "A String", # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
1008 # left blank, the default value of '172.16.0.0/23' is used.
1009 },
1010 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001011 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001012 "createTime": "A String", # Output only. The time at which this environment was created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001013 "name": "A String", # The resource name of the environment, in the form:
1014 # "projects/{projectId}/locations/{locationId}/environments/{environmentId}"
Dan O'Mearadd494642020-05-01 07:42:23 -07001015 #
1016 # EnvironmentId must start with a lowercase letter followed by up to 63
1017 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001018 },
1019 ],
1020 }</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:
1032 A request object that you can call 'execute()' on to request the next
1033 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:
1043"projects/{projectId}/locations/{locationId}/environments/{environmentId}" (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.
Dan O'Mearadd494642020-05-01 07:42:23 -07001048 "updateTime": "A String", # Output only. The time at which this environment was last modified.
1049 "uuid": "A String", # Output only. The UUID (Universally Unique IDentifier) associated with this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001050 # This value is generated when the environment is created.
1051 "labels": { # Optional. User-defined labels for this environment.
1052 # The labels map can contain no more than 64 entries. Entries of the labels
1053 # map are UTF8 strings that comply with the following restrictions:
1054 #
1055 # * Keys must conform to regexp: \p{Ll}\p{Lo}{0,62}
1056 # * Values must conform to regexp: [\p{Ll}\p{Lo}\p{N}_-]{0,63}
Dan O'Mearadd494642020-05-01 07:42:23 -07001057 # * Both keys and values are additionally constrained to be &lt;= 128 bytes in
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001058 # size.
1059 "a_key": "A String",
1060 },
1061 "state": "A String", # The current state of the environment.
1062 "config": { # Configuration information for an environment. # Configuration parameters for this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -07001063 "dagGcsPrefix": "A String", # Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001064 # Storage objects reside in a flat namespace, a hierarchical file tree
1065 # can be simulated using "/"-delimited object name prefixes. DAG objects for
1066 # this environment reside in a simulated directory with the given prefix.
1067 "softwareConfig": { # Specifies the selection and configuration of software inside the environment. # The configuration settings for software inside the environment.
1068 "imageVersion": "A String", # The version of the software running in the environment.
1069 # This encapsulates both the version of Cloud Composer functionality and the
1070 # version of Apache Airflow. It must match the regular expression
1071 # `composer-([0-9]+\.[0-9]+\.[0-9]+|latest)-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?`.
1072 # When used as input, the server also checks if the provided version is
1073 # supported and denies the request for an unsupported version.
1074 #
1075 # The Cloud Composer portion of the version is a
1076 # [semantic version](https://semver.org) or `latest`. When the patch version
1077 # is omitted, the current Cloud Composer patch version is selected.
1078 # When `latest` is provided instead of an explicit version number,
1079 # the server replaces `latest` with the current Cloud Composer version
1080 # and stores that version number in the same field.
1081 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001082 # The portion of the image version that follows &lt;em&gt;airflow-&lt;/em&gt; is an
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001083 # official Apache Airflow repository
1084 # [release name](https://github.com/apache/incubator-airflow/releases).
1085 #
1086 # See also [Version
1087 # List](/composer/docs/concepts/versioning/composer-versions).
1088 "pypiPackages": { # Optional. Custom Python Package Index (PyPI) packages to be installed in
1089 # the environment.
1090 #
1091 # Keys refer to the lowercase package name such as "numpy"
1092 # and values are the lowercase extras and version specifier such as
Dan O'Mearadd494642020-05-01 07:42:23 -07001093 # "==1.12.0", "[devel,gcp_api]", or "[devel]&gt;=1.8.2, &lt;1.9.2". To specify a
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001094 # package without pinning it to a version specifier, use the empty string as
1095 # the value.
1096 "a_key": "A String",
1097 },
1098 "pythonVersion": "A String", # Optional. The major version of Python used to run the Apache Airflow
1099 # scheduler, worker, and webserver processes.
1100 #
1101 # Can be set to '2' or '3'. If not specified, the default is '2'. Cannot be
1102 # updated.
1103 "envVariables": { # Optional. Additional environment variables to provide to the Apache Airflow
1104 # scheduler, worker, and webserver processes.
1105 #
1106 # Environment variable names must match the regular expression
1107 # `a-zA-Z_*`. They cannot specify Apache Airflow
1108 # software configuration overrides (they cannot match the regular expression
1109 # `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
1110 # following reserved names:
1111 #
1112 # * `AIRFLOW_HOME`
1113 # * `C_FORCE_ROOT`
1114 # * `CONTAINER_NAME`
1115 # * `DAGS_FOLDER`
1116 # * `GCP_PROJECT`
1117 # * `GCS_BUCKET`
1118 # * `GKE_CLUSTER_NAME`
1119 # * `SQL_DATABASE`
1120 # * `SQL_INSTANCE`
1121 # * `SQL_PASSWORD`
1122 # * `SQL_PROJECT`
1123 # * `SQL_REGION`
1124 # * `SQL_USER`
1125 "a_key": "A String",
1126 },
1127 "airflowConfigOverrides": { # Optional. Apache Airflow configuration properties to override.
1128 #
1129 # Property keys contain the section and property names, separated by a
1130 # hyphen, for example "core-dags_are_paused_at_creation". Section names must
1131 # not contain hyphens ("-"), opening square brackets ("["), or closing
1132 # square brackets ("]"). The property name must not be empty and must not
1133 # contain an equals sign ("=") or semicolon (";"). Section and property names
1134 # must not contain a period ("."). Apache Airflow configuration property
1135 # names must be written in
1136 # [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
1137 # contain any character, and can be written in any lower/upper case format.
1138 #
1139 # Certain Apache Airflow configuration property values are
1140 # [blacklisted](/composer/docs/how-to/managing/setting-airflow-configurations#airflow_configuration_blacklists),
1141 # and cannot be overridden.
1142 "a_key": "A String",
1143 },
1144 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001145 "airflowUri": "A String", # Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001146 # [Airflow web
1147 # interface](/composer/docs/how-to/accessing/airflow-web-interface)).
Dan O'Mearadd494642020-05-01 07:42:23 -07001148 "gkeCluster": "A String", # Output only. The Kubernetes Engine cluster used to run this environment.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001149 "nodeConfig": { # The configuration information for the Kubernetes Engine nodes running # The configuration used for the Kubernetes Engine cluster.
1150 # the Apache Airflow software.
1151 "machineType": "A String", # Optional. The Compute Engine
1152 # [machine type](/compute/docs/machine-types) used for cluster instances,
1153 # specified as a
1154 # [relative resource
1155 # name](/apis/design/resource_names#relative_resource_name). For example:
1156 # "projects/{projectId}/zones/{zoneId}/machineTypes/{machineTypeId}".
1157 #
1158 # The `machineType` must belong to the enclosing environment's project and
1159 # location. If both this field and `nodeConfig.location` are specified,
1160 # this `machineType` must belong to the `nodeConfig.location`; if both are
1161 # unspecified, the service will pick a zone in the Compute Engine region
1162 # corresponding to the Cloud Composer location, and propagate that choice to
1163 # both fields. If exactly one of this field and `nodeConfig.location` is
1164 # specified, the location information from the specified field will be
1165 # propagated to the unspecified field.
1166 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001167 # The `machineTypeId` must not be a [shared-core machine
1168 # type](/compute/docs/machine-types#sharedcore).
1169 #
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001170 # If this field is unspecified, the `machineTypeId` defaults
1171 # to "n1-standard-1".
1172 "network": "A String", # Optional. The Compute Engine network to be used for machine
1173 # communications, specified as a
1174 # [relative resource
1175 # name](/apis/design/resource_names#relative_resource_name). For example:
1176 # "projects/{projectId}/global/networks/{networkId}".
1177 #
1178 # [Shared VPC](/vpc/docs/shared-vpc) is not currently supported. The
1179 # network must belong to the environment's project. If unspecified, the
1180 # "default" network ID in the environment's project is used. If a
1181 # [Custom Subnet Network](/vpc/docs/vpc#vpc_networks_and_subnets)
1182 # is provided, `nodeConfig.subnetwork` must also be provided.
1183 "tags": [ # Optional. The list of instance tags applied to all node VMs. Tags are used
1184 # to identify valid sources or targets for network firewalls. Each tag within
1185 # the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
1186 # Cannot be updated.
1187 "A String",
1188 ],
1189 "serviceAccount": "A String", # Optional. The Google Cloud Platform Service Account to be used by the node
1190 # VMs. If a service account is not specified, the "default" Compute Engine
1191 # service account is used. Cannot be updated.
1192 "oauthScopes": [ # Optional. The set of Google API scopes to be made available on all
1193 # node VMs. If `oauth_scopes` is empty, defaults to
1194 # ["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated.
1195 "A String",
1196 ],
1197 "diskSizeGb": 42, # Optional. The disk size in GB used for node VMs. Minimum size is 20GB.
1198 # If unspecified, defaults to 100GB. Cannot be updated.
1199 "location": "A String", # Optional. The Compute Engine [zone](/compute/docs/regions-zones) in which
1200 # to deploy the VMs used to run the Apache Airflow software, specified as a
1201 # [relative resource
1202 # name](/apis/design/resource_names#relative_resource_name). For example:
1203 # "projects/{projectId}/zones/{zoneId}".
1204 #
1205 # This `location` must belong to the enclosing environment's project and
1206 # location. If both this field and `nodeConfig.machineType` are specified,
1207 # `nodeConfig.machineType` must belong to this `location`; if both are
1208 # unspecified, the service will pick a zone in the Compute Engine region
1209 # corresponding to the Cloud Composer location, and propagate that choice to
1210 # both fields. If only one field (`location` or `nodeConfig.machineType`) is
1211 # specified, the location information from the specified field will be
1212 # propagated to the unspecified field.
1213 "subnetwork": "A String", # Optional. The Compute Engine subnetwork to be used for machine
1214 # communications, specified as a
1215 # [relative resource
1216 # name](/apis/design/resource_names#relative_resource_name). For example:
1217 # "projects/{projectId}/regions/{regionId}/subnetworks/{subnetworkId}"
1218 #
1219 # If a subnetwork is provided, `nodeConfig.network` must also be provided,
1220 # and the subnetwork must belong to the enclosing environment's project and
1221 # location.
Dan O'Mearadd494642020-05-01 07:42:23 -07001222 "ipAllocationPolicy": { # Configuration for controlling how IPs are allocated in the # Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
1223 # GKE cluster running the Apache Airflow software.
1224 "clusterIpv4CidrBlock": "A String", # Optional. The IP address range used to allocate IP addresses to pods in
1225 # the GKE cluster.
1226 #
1227 # This field is applicable only when `use_ip_aliases` is true.
1228 #
1229 # Set to blank to have GKE choose a range with the default size.
1230 #
1231 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
1232 # netmask.
1233 #
1234 # Set to a
1235 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1236 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1237 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1238 # to use.
1239 "servicesIpv4CidrBlock": "A String", # Optional. The IP address range of the services IP addresses in this
1240 # GKE cluster.
1241 #
1242 # This field is applicable only when `use_ip_aliases` is true.
1243 #
1244 # Set to blank to have GKE choose a range with the default size.
1245 #
1246 # Set to /netmask (e.g. `/14`) to have GKE choose a range with a specific
1247 # netmask.
1248 #
1249 # Set to a
1250 # [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
1251 # notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
1252 # `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
1253 # to use.
1254 "servicesSecondaryRangeName": "A String", # Optional. The name of the services' secondary range used to allocate
1255 # IP addresses to the GKE cluster.
1256 #
1257 # This field is applicable only when `use_ip_aliases` is true.
1258 "useIpAliases": True or False, # Optional. Whether or not to enable Alias IPs in the GKE cluster.
1259 # If `true`, a VPC-native cluster is created.
1260 "clusterSecondaryRangeName": "A String", # Optional. The name of the GKE cluster's secondary range used to allocate
1261 # IP addresses to pods.
1262 #
1263 # This field is applicable only when `use_ip_aliases` is true.
1264 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001265 },
1266 "nodeCount": 42, # The number of nodes in the Kubernetes Engine cluster that will be
1267 # used to run this environment.
Dan O'Mearadd494642020-05-01 07:42:23 -07001268 "privateEnvironmentConfig": { # The configuration information for configuring a Private IP Cloud Composer # The configuration used for the Private IP Cloud Composer environment.
1269 # environment.
1270 "cloudSqlIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range in tenant project will be reserved for
1271 # Cloud SQL. Needs to be disjoint from `web_server_ipv4_cidr_block`.
1272 "webServerIpv4CidrBlock": "A String", # Optional. The CIDR block from which IP range for web server will be reserved. Needs
1273 # to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
1274 # `cloud_sql_ipv4_cidr_block`.
1275 "webServerIpv4ReservedRange": "A String", # Output only. The IP range reserved for the tenant project's App Engine VMs.
1276 "enablePrivateEnvironment": True or False, # Optional. If `true`, a Private IP Cloud Composer environment is created.
1277 # If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
1278 # set to true.
1279 "privateClusterConfig": { # Configuration options for the private GKE cluster in a Cloud Composer # Optional. Configuration for the private GKE cluster for a Private IP
1280 # Cloud Composer environment.
1281 # environment.
1282 "enablePrivateEndpoint": True or False, # Optional. If `true`, access to the public endpoint of the GKE cluster is
1283 # denied.
1284 "masterIpv4ReservedRange": "A String", # Output only. The IP range in CIDR notation to use for the hosted master network. This
1285 # range is used for assigning internal IP addresses to the GKE cluster
1286 # master or set of masters and to the internal load balancer virtual IP.
1287 # This range must not overlap with any other ranges in use
1288 # within the cluster's network.
1289 "masterIpv4CidrBlock": "A String", # Optional. The CIDR block from which IPv4 range for GKE master will be reserved. If
1290 # left blank, the default value of '172.16.0.0/23' is used.
1291 },
1292 },
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001293 },
Dan O'Mearadd494642020-05-01 07:42:23 -07001294 "createTime": "A String", # Output only. The time at which this environment was created.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001295 "name": "A String", # The resource name of the environment, in the form:
1296 # "projects/{projectId}/locations/{locationId}/environments/{environmentId}"
Dan O'Mearadd494642020-05-01 07:42:23 -07001297 #
1298 # EnvironmentId must start with a lowercase letter followed by up to 63
1299 # lowercase letters, numbers, or hyphens, and cannot end with a hyphen.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001300 }
1301
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
1307`paths` values: "config.softwareConfig.pypiPackages.scikit-learn" and
1308"config.softwareConfig.pypiPackages.numpy". The included patch
1309environment would specify the scikit-learn version as follows:
1310
1311 {
1312 "config":{
1313 "softwareConfig":{
1314 "pypiPackages":{
1315 "scikit-learn":"==0.19.0"
1316 }
1317 }
1318 }
1319 }
1320
1321Note that in the above example, any existing PyPI packages
1322other than scikit-learn and numpy will be unaffected.
1323
1324Only one update type may be included in a single request's `updateMask`.
1325For 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,
1328to set the labels "label1" and "label2" while clearing "label3" (assuming
1329it already exists), one can
1330provide the paths "labels.label1", "labels.label2", and "labels.label3"
1331and populate the patch environment as follows:
1332
1333 {
1334 "labels":{
1335 "label1":"new-label1-value"
1336 "label2":"new-label2-value"
1337 }
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
1344map field's path in the `updateMask`. The new value of the field will
1345be 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
1348the path "config.softwareConfig.pypiPackages", and
1349the patch environment would be the following:
1350
1351 {
1352 "config":{
1353 "softwareConfig":{
1354 "pypiPackages":{
1355 "botocore":"==1.7.14"
1356 }
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
Dan O'Mearadd494642020-05-01 07:42:23 -07001384 "config.softwareConfig.pypiPackages" mask.&lt;/td&gt;
1385 &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
Dan O'Mearadd494642020-05-01 07:42:23 -07001398 mask of this form and the "labels" mask.&lt;/td&gt;
1399 &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
Dan O'Mearadd494642020-05-01 07:42:23 -07001423 "config.softwareConfig.airflowConfigOverrides" mask.&lt;/td&gt;
1424 &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.
1445 "metadata": { # Service-specific metadata associated with the operation. It typically
1446 # contains progress information and common metadata such as create time.
1447 # Some services might not provide such metadata. Any method that returns a
1448 # long-running operation should document the metadata type, if any.
1449 "a_key": "", # Properties of the object. Contains field @type with type URL.
1450 },
1451 "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
1452 # different programming environments, including REST APIs and RPC APIs. It is
Dan O'Mearadd494642020-05-01 07:42:23 -07001453 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
1454 # three pieces of data: error code, error message, and error details.
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001455 #
Dan O'Mearadd494642020-05-01 07:42:23 -07001456 # You can find out more about this error model and how to work with it in the
1457 # [API Design Guide](https://cloud.google.com/apis/design/errors).
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001458 "message": "A String", # A developer-facing error message, which should be in English. Any
1459 # user-facing error message should be localized and sent in the
1460 # google.rpc.Status.details field, or localized by the client.
1461 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
1462 "details": [ # A list of messages that carry the error details. There is a common set of
1463 # message types for APIs to use.
1464 {
1465 "a_key": "", # Properties of the object. Contains field @type with type URL.
1466 },
1467 ],
1468 },
1469 "done": True or False, # If the value is `false`, it means the operation is still in progress.
1470 # If `true`, the operation is completed, and either `error` or `response` is
1471 # available.
1472 "response": { # The normal response of the operation in case of success. If the original
1473 # method returns no data on success, such as `Delete`, the response is
1474 # `google.protobuf.Empty`. If the original method is standard
1475 # `Get`/`Create`/`Update`, the response should be the resource. For other
1476 # methods, the response should have the type `XxxResponse`, where `Xxx`
1477 # is the original method name. For example, if the original method name
1478 # is `TakeSnapshot()`, the inferred response type is
1479 # `TakeSnapshotResponse`.
1480 "a_key": "", # Properties of the object. Contains field @type with type URL.
1481 },
1482 "name": "A String", # The server-assigned name, which is only unique within the same service that
1483 # originally returns it. If you use the default HTTP mapping, the
1484 # `name` should be a resource name ending with `operations/{unique_id}`.
1485 }</pre>
1486</div>
1487
1488</body></html>