google-cloud-orchestration-airflow-service-v1 0.1.2 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +1 -1
- data/README.md +12 -7
- data/lib/google/cloud/orchestration/airflow/service/v1/environments/client.rb +244 -8
- data/lib/google/cloud/orchestration/airflow/service/v1/environments/operations.rb +3 -0
- data/lib/google/cloud/orchestration/airflow/service/v1/environments_pb.rb +106 -1
- data/lib/google/cloud/orchestration/airflow/service/v1/environments_services_pb.rb +10 -0
- data/lib/google/cloud/orchestration/airflow/service/v1/image_versions_pb.rb +2 -1
- data/lib/google/cloud/orchestration/airflow/service/v1/operations_pb.rb +4 -2
- data/lib/google/cloud/orchestration/airflow/service/v1/version.rb +1 -1
- data/lib/google/cloud/orchestration/airflow/service/v1.rb +2 -0
- data/proto_docs/google/api/client.rb +318 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/cloud/orchestration/airflow/service/v1/environments.rb +438 -29
- data/proto_docs/google/cloud/orchestration/airflow/service/v1/image_versions.rb +1 -1
- data/proto_docs/google/cloud/orchestration/airflow/service/v1/operations.rb +6 -0
- data/proto_docs/google/protobuf/any.rb +3 -3
- data/proto_docs/google/protobuf/empty.rb +0 -2
- metadata +14 -12
@@ -181,13 +181,10 @@ module Google
|
|
181
181
|
# * `config.nodeCount`
|
182
182
|
# * Horizontally scale the number of nodes in the environment. An integer
|
183
183
|
# greater than or equal to 3 must be provided in the `config.nodeCount`
|
184
|
-
# field.
|
184
|
+
# field. Supported for Cloud Composer environments in versions
|
185
|
+
# composer-1.*.*-airflow-*.*.*.
|
185
186
|
# * `config.webServerNetworkAccessControl`
|
186
187
|
# * Replace the environment's current `WebServerNetworkAccessControl`.
|
187
|
-
# * `config.databaseConfig`
|
188
|
-
# * Replace the environment's current `DatabaseConfig`.
|
189
|
-
# * `config.webServerConfig`
|
190
|
-
# * Replace the environment's current `WebServerConfig`.
|
191
188
|
# * `config.softwareConfig.airflowConfigOverrides`
|
192
189
|
# * Replace all Apache Airflow config overrides. If a replacement config
|
193
190
|
# overrides map is not included in `environment`, all config overrides
|
@@ -205,14 +202,89 @@ module Google
|
|
205
202
|
# * `config.softwareConfig.envVariables`
|
206
203
|
# * Replace all environment variables. If a replacement environment
|
207
204
|
# variable map is not included in `environment`, all custom environment
|
208
|
-
# variables
|
209
|
-
#
|
210
|
-
#
|
205
|
+
# variables are cleared.
|
206
|
+
# * `config.softwareConfig.schedulerCount`
|
207
|
+
# * Horizontally scale the number of schedulers in Airflow. A positive
|
208
|
+
# integer not greater than the number of nodes must be provided in the
|
209
|
+
# `config.softwareConfig.schedulerCount` field. Supported for Cloud
|
210
|
+
# Composer environments in versions composer-1.*.*-airflow-2.*.*.
|
211
|
+
# * `config.databaseConfig.machineType`
|
212
|
+
# * Cloud SQL machine type used by Airflow database.
|
213
|
+
# It has to be one of: db-n1-standard-2, db-n1-standard-4,
|
214
|
+
# db-n1-standard-8 or db-n1-standard-16. Supported for Cloud Composer
|
215
|
+
# environments in versions composer-1.*.*-airflow-*.*.*.
|
216
|
+
# * `config.webServerConfig.machineType`
|
217
|
+
# * Machine type on which Airflow web server is running.
|
218
|
+
# It has to be one of: composer-n1-webserver-2, composer-n1-webserver-4
|
219
|
+
# or composer-n1-webserver-8. Supported for Cloud Composer environments
|
220
|
+
# in versions composer-1.*.*-airflow-*.*.*.
|
211
221
|
class UpdateEnvironmentRequest
|
212
222
|
include ::Google::Protobuf::MessageExts
|
213
223
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
214
224
|
end
|
215
225
|
|
226
|
+
# Request to create a snapshot of a Cloud Composer environment.
|
227
|
+
# @!attribute [rw] environment
|
228
|
+
# @return [::String]
|
229
|
+
# The resource name of the source environment in the form:
|
230
|
+
# "projects/\\{projectId}/locations/\\{locationId}/environments/\\{environmentId}"
|
231
|
+
# @!attribute [rw] snapshot_location
|
232
|
+
# @return [::String]
|
233
|
+
# Location in a Cloud Storage where the snapshot is going to be stored, e.g.:
|
234
|
+
# "gs://my-bucket/snapshots".
|
235
|
+
class SaveSnapshotRequest
|
236
|
+
include ::Google::Protobuf::MessageExts
|
237
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
238
|
+
end
|
239
|
+
|
240
|
+
# Response to SaveSnapshotRequest.
|
241
|
+
# @!attribute [rw] snapshot_path
|
242
|
+
# @return [::String]
|
243
|
+
# The fully-resolved Cloud Storage path of the created snapshot,
|
244
|
+
# e.g.:
|
245
|
+
# "gs://my-bucket/snapshots/project_location_environment_timestamp".
|
246
|
+
# This field is populated only if the snapshot creation was successful.
|
247
|
+
class SaveSnapshotResponse
|
248
|
+
include ::Google::Protobuf::MessageExts
|
249
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
250
|
+
end
|
251
|
+
|
252
|
+
# Request to load a snapshot into a Cloud Composer environment.
|
253
|
+
# @!attribute [rw] environment
|
254
|
+
# @return [::String]
|
255
|
+
# The resource name of the target environment in the form:
|
256
|
+
# "projects/\\{projectId}/locations/\\{locationId}/environments/\\{environmentId}"
|
257
|
+
# @!attribute [rw] snapshot_path
|
258
|
+
# @return [::String]
|
259
|
+
# A Cloud Storage path to a snapshot to load, e.g.:
|
260
|
+
# "gs://my-bucket/snapshots/project_location_environment_timestamp".
|
261
|
+
# @!attribute [rw] skip_pypi_packages_installation
|
262
|
+
# @return [::Boolean]
|
263
|
+
# Whether or not to skip installing Pypi packages when loading the
|
264
|
+
# environment's state.
|
265
|
+
# @!attribute [rw] skip_environment_variables_setting
|
266
|
+
# @return [::Boolean]
|
267
|
+
# Whether or not to skip setting environment variables when loading the
|
268
|
+
# environment's state.
|
269
|
+
# @!attribute [rw] skip_airflow_overrides_setting
|
270
|
+
# @return [::Boolean]
|
271
|
+
# Whether or not to skip setting Airflow overrides when loading the
|
272
|
+
# environment's state.
|
273
|
+
# @!attribute [rw] skip_gcs_data_copying
|
274
|
+
# @return [::Boolean]
|
275
|
+
# Whether or not to skip copying Cloud Storage data when loading the
|
276
|
+
# environment's state.
|
277
|
+
class LoadSnapshotRequest
|
278
|
+
include ::Google::Protobuf::MessageExts
|
279
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
280
|
+
end
|
281
|
+
|
282
|
+
# Response to LoadSnapshotRequest.
|
283
|
+
class LoadSnapshotResponse
|
284
|
+
include ::Google::Protobuf::MessageExts
|
285
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
286
|
+
end
|
287
|
+
|
216
288
|
# Configuration information for an environment.
|
217
289
|
# @!attribute [rw] gke_cluster
|
218
290
|
# @return [::String]
|
@@ -227,6 +299,9 @@ module Google
|
|
227
299
|
# @return [::Integer]
|
228
300
|
# The number of nodes in the Kubernetes Engine cluster that will be
|
229
301
|
# used to run this environment.
|
302
|
+
#
|
303
|
+
# This field is supported for Cloud Composer environments in versions
|
304
|
+
# composer-1.*.*-airflow-*.*.*.
|
230
305
|
# @!attribute [rw] software_config
|
231
306
|
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::SoftwareConfig]
|
232
307
|
# The configuration settings for software inside the environment.
|
@@ -251,14 +326,72 @@ module Google
|
|
251
326
|
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::EncryptionConfig]
|
252
327
|
# Optional. The encryption options for the Cloud Composer environment
|
253
328
|
# and its dependencies. Cannot be updated.
|
329
|
+
# @!attribute [rw] maintenance_window
|
330
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::MaintenanceWindow]
|
331
|
+
# Optional. The maintenance window is the period when Cloud Composer components may
|
332
|
+
# undergo maintenance. It is defined so that maintenance is not executed
|
333
|
+
# during peak hours or critical time periods.
|
334
|
+
#
|
335
|
+
# The system will not be under maintenance for every occurrence of this
|
336
|
+
# window, but when maintenance is planned, it will be scheduled
|
337
|
+
# during the window.
|
338
|
+
#
|
339
|
+
# The maintenance window period must encompass at least 12 hours per week.
|
340
|
+
# This may be split into multiple chunks, each with a size of
|
341
|
+
# at least 4 hours.
|
342
|
+
#
|
343
|
+
# If this value is omitted, the default value for maintenance window will be
|
344
|
+
# applied. The default value is Saturday and Sunday 00-06 GMT.
|
345
|
+
# @!attribute [rw] workloads_config
|
346
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::WorkloadsConfig]
|
347
|
+
# Optional. The workloads configuration settings for the GKE cluster associated with
|
348
|
+
# the Cloud Composer environment. The GKE cluster runs Airflow scheduler, web
|
349
|
+
# server and workers workloads.
|
350
|
+
#
|
351
|
+
# This field is supported for Cloud Composer environments in versions
|
352
|
+
# composer-2.*.*-airflow-*.*.* and newer.
|
353
|
+
# @!attribute [rw] environment_size
|
354
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::EnvironmentConfig::EnvironmentSize]
|
355
|
+
# Optional. The size of the Cloud Composer environment.
|
356
|
+
#
|
357
|
+
# This field is supported for Cloud Composer environments in versions
|
358
|
+
# composer-2.*.*-airflow-*.*.* and newer.
|
254
359
|
# @!attribute [rw] airflow_uri
|
255
360
|
# @return [::String]
|
256
361
|
# Output only. The URI of the Apache Airflow Web UI hosted within this environment (see
|
257
362
|
# [Airflow web
|
258
363
|
# interface](/composer/docs/how-to/accessing/airflow-web-interface)).
|
364
|
+
# @!attribute [rw] master_authorized_networks_config
|
365
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::MasterAuthorizedNetworksConfig]
|
366
|
+
# Optional. The configuration options for GKE cluster master authorized networks.
|
367
|
+
# By default master authorized networks feature is:
|
368
|
+
# - in case of private environment: enabled with no external networks
|
369
|
+
# allowlisted.
|
370
|
+
# - in case of public environment: disabled.
|
371
|
+
# @!attribute [rw] recovery_config
|
372
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::RecoveryConfig]
|
373
|
+
# Optional. The Recovery settings configuration of an environment.
|
374
|
+
#
|
375
|
+
# This field is supported for Cloud Composer environments in versions
|
376
|
+
# composer-2.*.*-airflow-*.*.* and newer.
|
259
377
|
class EnvironmentConfig
|
260
378
|
include ::Google::Protobuf::MessageExts
|
261
379
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
380
|
+
|
381
|
+
# The size of the Cloud Composer environment.
|
382
|
+
module EnvironmentSize
|
383
|
+
# The size of the environment is unspecified.
|
384
|
+
ENVIRONMENT_SIZE_UNSPECIFIED = 0
|
385
|
+
|
386
|
+
# The environment size is small.
|
387
|
+
ENVIRONMENT_SIZE_SMALL = 1
|
388
|
+
|
389
|
+
# The environment size is medium.
|
390
|
+
ENVIRONMENT_SIZE_MEDIUM = 2
|
391
|
+
|
392
|
+
# The environment size is large.
|
393
|
+
ENVIRONMENT_SIZE_LARGE = 3
|
394
|
+
end
|
262
395
|
end
|
263
396
|
|
264
397
|
# Network-level access control policy for the Airflow web server.
|
@@ -296,12 +429,16 @@ module Google
|
|
296
429
|
# Optional. Cloud SQL machine type used by Airflow database.
|
297
430
|
# It has to be one of: db-n1-standard-2, db-n1-standard-4, db-n1-standard-8
|
298
431
|
# or db-n1-standard-16. If not specified, db-n1-standard-2 will be used.
|
432
|
+
# Supported for Cloud Composer environments in versions
|
433
|
+
# composer-1.*.*-airflow-*.*.*.
|
299
434
|
class DatabaseConfig
|
300
435
|
include ::Google::Protobuf::MessageExts
|
301
436
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
302
437
|
end
|
303
438
|
|
304
439
|
# The configuration settings for the Airflow web server App Engine instance.
|
440
|
+
# Supported for Cloud Composer environments in versions
|
441
|
+
# composer-1.*.*-airflow-*.*.*
|
305
442
|
# @!attribute [rw] machine_type
|
306
443
|
# @return [::String]
|
307
444
|
# Optional. Machine type on which Airflow web server is running.
|
@@ -316,7 +453,8 @@ module Google
|
|
316
453
|
end
|
317
454
|
|
318
455
|
# The encryption options for the Cloud Composer environment
|
319
|
-
# and its dependencies.
|
456
|
+
# and its dependencies.Supported for Cloud Composer environments in versions
|
457
|
+
# composer-1.*.*-airflow-*.*.*.
|
320
458
|
# @!attribute [rw] kms_key_name
|
321
459
|
# @return [::String]
|
322
460
|
# Optional. Customer-managed Encryption Key available through Google's Key Management
|
@@ -327,29 +465,66 @@ module Google
|
|
327
465
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
328
466
|
end
|
329
467
|
|
468
|
+
# The configuration settings for Cloud Composer maintenance window.
|
469
|
+
# The following example:
|
470
|
+
#
|
471
|
+
# ```
|
472
|
+
# {
|
473
|
+
# "startTime":"2019-08-01T01:00:00Z"
|
474
|
+
# "endTime":"2019-08-01T07:00:00Z"
|
475
|
+
# "recurrence":"FREQ=WEEKLY;BYDAY=TU,WE"
|
476
|
+
# }
|
477
|
+
# ```
|
478
|
+
#
|
479
|
+
# would define a maintenance window between 01 and 07 hours UTC during
|
480
|
+
# each Tuesday and Wednesday.
|
481
|
+
# @!attribute [rw] start_time
|
482
|
+
# @return [::Google::Protobuf::Timestamp]
|
483
|
+
# Required. Start time of the first recurrence of the maintenance window.
|
484
|
+
# @!attribute [rw] end_time
|
485
|
+
# @return [::Google::Protobuf::Timestamp]
|
486
|
+
# Required. Maintenance window end time. It is used only to calculate the duration of
|
487
|
+
# the maintenance window.
|
488
|
+
# The value for end-time must be in the future, relative to
|
489
|
+
# `start_time`.
|
490
|
+
# @!attribute [rw] recurrence
|
491
|
+
# @return [::String]
|
492
|
+
# Required. Maintenance window recurrence. Format is a subset of
|
493
|
+
# [RFC-5545](https://tools.ietf.org/html/rfc5545) `RRULE`. The only allowed
|
494
|
+
# values for `FREQ` field are `FREQ=DAILY` and `FREQ=WEEKLY;BYDAY=...`
|
495
|
+
# Example values: `FREQ=WEEKLY;BYDAY=TU,WE`, `FREQ=DAILY`.
|
496
|
+
class MaintenanceWindow
|
497
|
+
include ::Google::Protobuf::MessageExts
|
498
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
499
|
+
end
|
500
|
+
|
330
501
|
# Specifies the selection and configuration of software inside the environment.
|
331
502
|
# @!attribute [rw] image_version
|
332
503
|
# @return [::String]
|
333
504
|
# The version of the software running in the environment.
|
334
505
|
# This encapsulates both the version of Cloud Composer functionality and the
|
335
506
|
# version of Apache Airflow. It must match the regular expression
|
336
|
-
# `composer-([0-9]
|
507
|
+
# `composer-([0-9]+(\.[0-9]+\.[0-9]+(-preview\.[0-9]+)?)?|latest)-airflow-([0-9]+(\.[0-9]+(\.[0-9]+)?)?)`.
|
337
508
|
# When used as input, the server also checks if the provided version is
|
338
509
|
# supported and denies the request for an unsupported version.
|
339
510
|
#
|
340
|
-
# The Cloud Composer portion of the version is a
|
341
|
-
# [semantic version](https://semver.org) or
|
342
|
-
#
|
343
|
-
#
|
344
|
-
# the server replaces `latest` with the current Cloud Composer version
|
345
|
-
# and stores that version number in the same field.
|
511
|
+
# The Cloud Composer portion of the image version is a full
|
512
|
+
# [semantic version](https://semver.org), or an alias in the form of major
|
513
|
+
# version number or `latest`. When an alias is provided, the server replaces
|
514
|
+
# it with the current Cloud Composer version that satisfies the alias.
|
346
515
|
#
|
347
|
-
# The portion of the image version
|
348
|
-
#
|
349
|
-
#
|
516
|
+
# The Apache Airflow portion of the image version is a full semantic version
|
517
|
+
# that points to one of the supported Apache Airflow versions, or an alias in
|
518
|
+
# the form of only major or major.minor versions specified. When an alias is
|
519
|
+
# provided, the server replaces it with the latest Apache Airflow version
|
520
|
+
# that satisfies the alias and is supported in the given Cloud Composer
|
521
|
+
# version.
|
350
522
|
#
|
351
|
-
#
|
352
|
-
#
|
523
|
+
# In all cases, the resolved image version is stored in the same field.
|
524
|
+
#
|
525
|
+
# See also [version
|
526
|
+
# list](/composer/docs/concepts/versioning/composer-versions) and [versioning
|
527
|
+
# overview](/composer/docs/concepts/versioning/composer-versioning-overview).
|
353
528
|
# @!attribute [rw] airflow_config_overrides
|
354
529
|
# @return [::Google::Protobuf::Map{::String => ::String}]
|
355
530
|
# Optional. Apache Airflow configuration properties to override.
|
@@ -408,6 +583,16 @@ module Google
|
|
408
583
|
#
|
409
584
|
# Can be set to '2' or '3'. If not specified, the default is '3'. Cannot be
|
410
585
|
# updated.
|
586
|
+
#
|
587
|
+
# This field is only supported for Cloud Composer environments in versions
|
588
|
+
# composer-1.*.*-airflow-*.*.*. Environments in newer versions always use
|
589
|
+
# Python major version 3.
|
590
|
+
# @!attribute [rw] scheduler_count
|
591
|
+
# @return [::Integer]
|
592
|
+
# Optional. The number of schedulers for Airflow.
|
593
|
+
#
|
594
|
+
# This field is supported for Cloud Composer environments in versions
|
595
|
+
# composer-1.*.*-airflow-2.*.*.
|
411
596
|
class SoftwareConfig
|
412
597
|
include ::Google::Protobuf::MessageExts
|
413
598
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -446,18 +631,24 @@ module Google
|
|
446
631
|
# @return [::Boolean]
|
447
632
|
# Optional. Whether or not to enable Alias IPs in the GKE cluster.
|
448
633
|
# If `true`, a VPC-native cluster is created.
|
634
|
+
#
|
635
|
+
# This field is only supported for Cloud Composer environments in versions
|
636
|
+
# composer-1.*.*-airflow-*.*.*. Environments in newer versions always use
|
637
|
+
# VPC-native GKE clusters.
|
449
638
|
# @!attribute [rw] cluster_secondary_range_name
|
450
639
|
# @return [::String]
|
451
640
|
# Optional. The name of the GKE cluster's secondary range used to allocate
|
452
641
|
# IP addresses to pods.
|
453
642
|
#
|
454
|
-
#
|
643
|
+
# For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*,
|
644
|
+
# this field is applicable only when `use_ip_aliases` is true.
|
455
645
|
# @!attribute [rw] cluster_ipv4_cidr_block
|
456
646
|
# @return [::String]
|
457
647
|
# Optional. The IP address range used to allocate IP addresses to pods in
|
458
648
|
# the GKE cluster.
|
459
649
|
#
|
460
|
-
#
|
650
|
+
# For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*,
|
651
|
+
# this field is applicable only when `use_ip_aliases` is true.
|
461
652
|
#
|
462
653
|
# Set to blank to have GKE choose a range with the default size.
|
463
654
|
#
|
@@ -465,7 +656,7 @@ module Google
|
|
465
656
|
# netmask.
|
466
657
|
#
|
467
658
|
# Set to a
|
468
|
-
# [CIDR](
|
659
|
+
# [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
|
469
660
|
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
|
470
661
|
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
|
471
662
|
# to use.
|
@@ -474,13 +665,15 @@ module Google
|
|
474
665
|
# Optional. The name of the services' secondary range used to allocate
|
475
666
|
# IP addresses to the GKE cluster.
|
476
667
|
#
|
477
|
-
#
|
668
|
+
# For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*,
|
669
|
+
# this field is applicable only when `use_ip_aliases` is true.
|
478
670
|
# @!attribute [rw] services_ipv4_cidr_block
|
479
671
|
# @return [::String]
|
480
672
|
# Optional. The IP address range of the services IP addresses in this
|
481
673
|
# GKE cluster.
|
482
674
|
#
|
483
|
-
#
|
675
|
+
# For Cloud Composer environments in versions composer-1.*.*-airflow-*.*.*,
|
676
|
+
# this field is applicable only when `use_ip_aliases` is true.
|
484
677
|
#
|
485
678
|
# Set to blank to have GKE choose a range with the default size.
|
486
679
|
#
|
@@ -488,7 +681,7 @@ module Google
|
|
488
681
|
# netmask.
|
489
682
|
#
|
490
683
|
# Set to a
|
491
|
-
# [CIDR](
|
684
|
+
# [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
|
492
685
|
# notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
|
493
686
|
# `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
|
494
687
|
# to use.
|
@@ -515,6 +708,9 @@ module Google
|
|
515
708
|
# both fields. If only one field (`location` or `nodeConfig.machineType`) is
|
516
709
|
# specified, the location information from the specified field will be
|
517
710
|
# propagated to the unspecified field.
|
711
|
+
#
|
712
|
+
# This field is supported for Cloud Composer environments in versions
|
713
|
+
# composer-1.*.*-airflow-*.*.*.
|
518
714
|
# @!attribute [rw] machine_type
|
519
715
|
# @return [::String]
|
520
716
|
# Optional. The Compute Engine
|
@@ -538,6 +734,9 @@ module Google
|
|
538
734
|
#
|
539
735
|
# If this field is unspecified, the `machineTypeId` defaults
|
540
736
|
# to "n1-standard-1".
|
737
|
+
#
|
738
|
+
# This field is supported for Cloud Composer environments in versions
|
739
|
+
# composer-1.*.*-airflow-*.*.*.
|
541
740
|
# @!attribute [rw] network
|
542
741
|
# @return [::String]
|
543
742
|
# Optional. The Compute Engine network to be used for machine
|
@@ -564,13 +763,19 @@ module Google
|
|
564
763
|
# location.
|
565
764
|
# @!attribute [rw] disk_size_gb
|
566
765
|
# @return [::Integer]
|
567
|
-
# Optional. The disk size in GB used for node VMs. Minimum size is
|
766
|
+
# Optional. The disk size in GB used for node VMs. Minimum size is 30GB.
|
568
767
|
# If unspecified, defaults to 100GB. Cannot be updated.
|
768
|
+
#
|
769
|
+
# This field is supported for Cloud Composer environments in versions
|
770
|
+
# composer-1.*.*-airflow-*.*.*.
|
569
771
|
# @!attribute [rw] oauth_scopes
|
570
772
|
# @return [::Array<::String>]
|
571
773
|
# Optional. The set of Google API scopes to be made available on all
|
572
774
|
# node VMs. If `oauth_scopes` is empty, defaults to
|
573
775
|
# ["https://www.googleapis.com/auth/cloud-platform"]. Cannot be updated.
|
776
|
+
#
|
777
|
+
# This field is supported for Cloud Composer environments in versions
|
778
|
+
# composer-1.*.*-airflow-*.*.*.
|
574
779
|
# @!attribute [rw] service_account
|
575
780
|
# @return [::String]
|
576
781
|
# Optional. The Google Cloud Platform Service Account to be used by the node
|
@@ -582,9 +787,20 @@ module Google
|
|
582
787
|
# to identify valid sources or targets for network firewalls. Each tag within
|
583
788
|
# the list must comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
|
584
789
|
# Cannot be updated.
|
790
|
+
#
|
791
|
+
# This field is supported for Cloud Composer environments in versions
|
792
|
+
# composer-1.*.*-airflow-*.*.*.
|
585
793
|
# @!attribute [rw] ip_allocation_policy
|
586
794
|
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::IPAllocationPolicy]
|
587
795
|
# Optional. The configuration for controlling how IPs are allocated in the GKE cluster.
|
796
|
+
# @!attribute [rw] enable_ip_masq_agent
|
797
|
+
# @return [::Boolean]
|
798
|
+
# Optional. Deploys 'ip-masq-agent' daemon set in the GKE cluster and defines
|
799
|
+
# nonMasqueradeCIDRs equals to pod IP range so IP masquerading is used for
|
800
|
+
# all destination addresses, except between pods traffic.
|
801
|
+
#
|
802
|
+
# See:
|
803
|
+
# https://cloud.google.com/kubernetes-engine/docs/how-to/ip-masquerade-agent
|
588
804
|
class NodeConfig
|
589
805
|
include ::Google::Protobuf::MessageExts
|
590
806
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -612,13 +828,43 @@ module Google
|
|
612
828
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
613
829
|
end
|
614
830
|
|
831
|
+
# Configuration options for networking connections in the Composer 2
|
832
|
+
# environment.
|
833
|
+
# @!attribute [rw] connection_type
|
834
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::NetworkingConfig::ConnectionType]
|
835
|
+
# Optional. Indicates the user requested specifc connection type between Tenant and
|
836
|
+
# Customer projects.
|
837
|
+
# You cannot set networking connection type in public IP environment.
|
838
|
+
class NetworkingConfig
|
839
|
+
include ::Google::Protobuf::MessageExts
|
840
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
841
|
+
|
842
|
+
# Represents connection type between Composer environment in Customer
|
843
|
+
# Project and the corresponding Tenant project, from a predefined list
|
844
|
+
# of available connection modes.
|
845
|
+
module ConnectionType
|
846
|
+
# No specific connection type was requested, so the environment uses
|
847
|
+
# the default value corresponding to the rest of its configuration.
|
848
|
+
CONNECTION_TYPE_UNSPECIFIED = 0
|
849
|
+
|
850
|
+
# Requests the use of VPC peerings for connecting the Customer and Tenant
|
851
|
+
# projects.
|
852
|
+
VPC_PEERING = 1
|
853
|
+
|
854
|
+
# Requests the use of Private Service Connect for connecting the Customer
|
855
|
+
# and Tenant projects.
|
856
|
+
PRIVATE_SERVICE_CONNECT = 2
|
857
|
+
end
|
858
|
+
end
|
859
|
+
|
615
860
|
# The configuration information for configuring a Private IP Cloud Composer
|
616
861
|
# environment.
|
617
862
|
# @!attribute [rw] enable_private_environment
|
618
863
|
# @return [::Boolean]
|
619
864
|
# Optional. If `true`, a Private IP Cloud Composer environment is created.
|
620
865
|
# If this field is set to true, `IPAllocationPolicy.use_ip_aliases` must be
|
621
|
-
# set to true
|
866
|
+
# set to true for Cloud Composer environments in versions
|
867
|
+
# composer-1.*.*-airflow-*.*.*.
|
622
868
|
# @!attribute [rw] private_cluster_config
|
623
869
|
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::PrivateClusterConfig]
|
624
870
|
# Optional. Configuration for the private GKE cluster for a Private IP
|
@@ -628,6 +874,9 @@ module Google
|
|
628
874
|
# Optional. The CIDR block from which IP range for web server will be reserved. Needs
|
629
875
|
# to be disjoint from `private_cluster_config.master_ipv4_cidr_block` and
|
630
876
|
# `cloud_sql_ipv4_cidr_block`.
|
877
|
+
#
|
878
|
+
# This field is supported for Cloud Composer environments in versions
|
879
|
+
# composer-1.*.*-airflow-*.*.*.
|
631
880
|
# @!attribute [rw] cloud_sql_ipv4_cidr_block
|
632
881
|
# @return [::String]
|
633
882
|
# Optional. The CIDR block from which IP range in tenant project will be reserved for
|
@@ -635,11 +884,171 @@ module Google
|
|
635
884
|
# @!attribute [r] web_server_ipv4_reserved_range
|
636
885
|
# @return [::String]
|
637
886
|
# Output only. The IP range reserved for the tenant project's App Engine VMs.
|
887
|
+
#
|
888
|
+
# This field is supported for Cloud Composer environments in versions
|
889
|
+
# composer-1.*.*-airflow-*.*.*.
|
890
|
+
# @!attribute [rw] cloud_composer_network_ipv4_cidr_block
|
891
|
+
# @return [::String]
|
892
|
+
# Optional. The CIDR block from which IP range for Cloud Composer Network in tenant
|
893
|
+
# project will be reserved. Needs to be disjoint from
|
894
|
+
# private_cluster_config.master_ipv4_cidr_block and
|
895
|
+
# cloud_sql_ipv4_cidr_block.
|
896
|
+
#
|
897
|
+
# This field is supported for Cloud Composer environments in versions
|
898
|
+
# composer-2.*.*-airflow-*.*.* and newer.
|
899
|
+
# @!attribute [r] cloud_composer_network_ipv4_reserved_range
|
900
|
+
# @return [::String]
|
901
|
+
# Output only. The IP range reserved for the tenant project's Cloud Composer network.
|
902
|
+
#
|
903
|
+
# This field is supported for Cloud Composer environments in versions
|
904
|
+
# composer-2.*.*-airflow-*.*.* and newer.
|
905
|
+
# @!attribute [rw] enable_privately_used_public_ips
|
906
|
+
# @return [::Boolean]
|
907
|
+
# Optional. When enabled, IPs from public (non-RFC1918) ranges can be used for
|
908
|
+
# `IPAllocationPolicy.cluster_ipv4_cidr_block` and
|
909
|
+
# `IPAllocationPolicy.service_ipv4_cidr_block`.
|
910
|
+
# @!attribute [rw] cloud_composer_connection_subnetwork
|
911
|
+
# @return [::String]
|
912
|
+
# Optional. When specified, the environment will use Private Service Connect
|
913
|
+
# instead of VPC peerings to connect to Cloud SQL in the Tenant Project,
|
914
|
+
# and the PSC endpoint in the Customer Project will use an IP address from
|
915
|
+
# this subnetwork.
|
916
|
+
# @!attribute [rw] networking_config
|
917
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::NetworkingConfig]
|
918
|
+
# Optional. Configuration for the network connections configuration in the environment.
|
638
919
|
class PrivateEnvironmentConfig
|
639
920
|
include ::Google::Protobuf::MessageExts
|
640
921
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
641
922
|
end
|
642
923
|
|
924
|
+
# The Kubernetes workloads configuration for GKE cluster associated with the
|
925
|
+
# Cloud Composer environment. Supported for Cloud Composer environments in
|
926
|
+
# versions composer-2.*.*-airflow-*.*.* and newer.
|
927
|
+
# @!attribute [rw] scheduler
|
928
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::WorkloadsConfig::SchedulerResource]
|
929
|
+
# Optional. Resources used by Airflow schedulers.
|
930
|
+
# @!attribute [rw] web_server
|
931
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::WorkloadsConfig::WebServerResource]
|
932
|
+
# Optional. Resources used by Airflow web server.
|
933
|
+
# @!attribute [rw] worker
|
934
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::WorkloadsConfig::WorkerResource]
|
935
|
+
# Optional. Resources used by Airflow workers.
|
936
|
+
class WorkloadsConfig
|
937
|
+
include ::Google::Protobuf::MessageExts
|
938
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
939
|
+
|
940
|
+
# Configuration for resources used by Airflow schedulers.
|
941
|
+
# @!attribute [rw] cpu
|
942
|
+
# @return [::Float]
|
943
|
+
# Optional. CPU request and limit for a single Airflow scheduler replica.
|
944
|
+
# @!attribute [rw] memory_gb
|
945
|
+
# @return [::Float]
|
946
|
+
# Optional. Memory (GB) request and limit for a single Airflow scheduler replica.
|
947
|
+
# @!attribute [rw] storage_gb
|
948
|
+
# @return [::Float]
|
949
|
+
# Optional. Storage (GB) request and limit for a single Airflow scheduler replica.
|
950
|
+
# @!attribute [rw] count
|
951
|
+
# @return [::Integer]
|
952
|
+
# Optional. The number of schedulers.
|
953
|
+
class SchedulerResource
|
954
|
+
include ::Google::Protobuf::MessageExts
|
955
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
956
|
+
end
|
957
|
+
|
958
|
+
# Configuration for resources used by Airflow web server.
|
959
|
+
# @!attribute [rw] cpu
|
960
|
+
# @return [::Float]
|
961
|
+
# Optional. CPU request and limit for Airflow web server.
|
962
|
+
# @!attribute [rw] memory_gb
|
963
|
+
# @return [::Float]
|
964
|
+
# Optional. Memory (GB) request and limit for Airflow web server.
|
965
|
+
# @!attribute [rw] storage_gb
|
966
|
+
# @return [::Float]
|
967
|
+
# Optional. Storage (GB) request and limit for Airflow web server.
|
968
|
+
class WebServerResource
|
969
|
+
include ::Google::Protobuf::MessageExts
|
970
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
971
|
+
end
|
972
|
+
|
973
|
+
# Configuration for resources used by Airflow workers.
|
974
|
+
# @!attribute [rw] cpu
|
975
|
+
# @return [::Float]
|
976
|
+
# Optional. CPU request and limit for a single Airflow worker replica.
|
977
|
+
# @!attribute [rw] memory_gb
|
978
|
+
# @return [::Float]
|
979
|
+
# Optional. Memory (GB) request and limit for a single Airflow worker replica.
|
980
|
+
# @!attribute [rw] storage_gb
|
981
|
+
# @return [::Float]
|
982
|
+
# Optional. Storage (GB) request and limit for a single Airflow worker replica.
|
983
|
+
# @!attribute [rw] min_count
|
984
|
+
# @return [::Integer]
|
985
|
+
# Optional. Minimum number of workers for autoscaling.
|
986
|
+
# @!attribute [rw] max_count
|
987
|
+
# @return [::Integer]
|
988
|
+
# Optional. Maximum number of workers for autoscaling.
|
989
|
+
class WorkerResource
|
990
|
+
include ::Google::Protobuf::MessageExts
|
991
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
992
|
+
end
|
993
|
+
end
|
994
|
+
|
995
|
+
# The Recovery settings of an environment.
|
996
|
+
# @!attribute [rw] scheduled_snapshots_config
|
997
|
+
# @return [::Google::Cloud::Orchestration::Airflow::Service::V1::ScheduledSnapshotsConfig]
|
998
|
+
# Optional. The configuration for scheduled snapshot creation mechanism.
|
999
|
+
class RecoveryConfig
|
1000
|
+
include ::Google::Protobuf::MessageExts
|
1001
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1002
|
+
end
|
1003
|
+
|
1004
|
+
# The configuration for scheduled snapshot creation mechanism.
|
1005
|
+
# @!attribute [rw] enabled
|
1006
|
+
# @return [::Boolean]
|
1007
|
+
# Optional. Whether scheduled snapshots creation is enabled.
|
1008
|
+
# @!attribute [rw] snapshot_location
|
1009
|
+
# @return [::String]
|
1010
|
+
# Optional. The Cloud Storage location for storing automatically created snapshots.
|
1011
|
+
# @!attribute [rw] snapshot_creation_schedule
|
1012
|
+
# @return [::String]
|
1013
|
+
# Optional. The cron expression representing the time when snapshots creation mechanism
|
1014
|
+
# runs. This field is subject to additional validation around frequency of
|
1015
|
+
# execution.
|
1016
|
+
# @!attribute [rw] time_zone
|
1017
|
+
# @return [::String]
|
1018
|
+
# Optional. Time zone that sets the context to interpret snapshot_creation_schedule.
|
1019
|
+
class ScheduledSnapshotsConfig
|
1020
|
+
include ::Google::Protobuf::MessageExts
|
1021
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1022
|
+
end
|
1023
|
+
|
1024
|
+
# Configuration options for the master authorized networks feature. Enabled
|
1025
|
+
# master authorized networks will disallow all external traffic to access
|
1026
|
+
# Kubernetes master through HTTPS except traffic from the given CIDR blocks,
|
1027
|
+
# Google Compute Engine Public IPs and Google Prod IPs.
|
1028
|
+
# @!attribute [rw] enabled
|
1029
|
+
# @return [::Boolean]
|
1030
|
+
# Whether or not master authorized networks feature is enabled.
|
1031
|
+
# @!attribute [rw] cidr_blocks
|
1032
|
+
# @return [::Array<::Google::Cloud::Orchestration::Airflow::Service::V1::MasterAuthorizedNetworksConfig::CidrBlock>]
|
1033
|
+
# Up to 50 external networks that could access Kubernetes master through
|
1034
|
+
# HTTPS.
|
1035
|
+
class MasterAuthorizedNetworksConfig
|
1036
|
+
include ::Google::Protobuf::MessageExts
|
1037
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1038
|
+
|
1039
|
+
# CIDR block with an optional name.
|
1040
|
+
# @!attribute [rw] display_name
|
1041
|
+
# @return [::String]
|
1042
|
+
# User-defined name that identifies the CIDR block.
|
1043
|
+
# @!attribute [rw] cidr_block
|
1044
|
+
# @return [::String]
|
1045
|
+
# CIDR block that must be specified in CIDR notation.
|
1046
|
+
class CidrBlock
|
1047
|
+
include ::Google::Protobuf::MessageExts
|
1048
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1049
|
+
end
|
1050
|
+
end
|
1051
|
+
|
643
1052
|
# An environment for running orchestration tasks.
|
644
1053
|
# @!attribute [rw] name
|
645
1054
|
# @return [::String]
|