Class: Google::Apis::ComposerV1::EnvironmentConfig

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/composer_v1/classes.rb,
lib/google/apis/composer_v1/representations.rb,
lib/google/apis/composer_v1/representations.rb

Overview

Configuration information for an environment.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ EnvironmentConfig

Returns a new instance of EnvironmentConfig.



686
687
688
# File 'lib/google/apis/composer_v1/classes.rb', line 686

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#airflow_byoid_uriString

Output only. The 'bring your own identity' variant of the URI of the Apache Airflow Web UI hosted within this environment, to be accessed with external identities using workforce identity federation (see Access environments with workforce identity federation). Corresponds to the JSON property airflowByoidUri

Returns:

  • (String)


567
568
569
# File 'lib/google/apis/composer_v1/classes.rb', line 567

def airflow_byoid_uri
  @airflow_byoid_uri
end

#airflow_uriString

Output only. The URI of the Apache Airflow Web UI hosted within this environment (see Airflow web interface). Corresponds to the JSON property airflowUri

Returns:

  • (String)


574
575
576
# File 'lib/google/apis/composer_v1/classes.rb', line 574

def airflow_uri
  @airflow_uri
end

#dag_gcs_prefixString

Output only. The Cloud Storage prefix of the DAGs for this environment. Although Cloud Storage objects reside in a flat namespace, a hierarchical file tree can be simulated using "/"-delimited object name prefixes. DAG objects for this environment reside in a simulated directory with the given prefix. Corresponds to the JSON property dagGcsPrefix

Returns:

  • (String)


582
583
584
# File 'lib/google/apis/composer_v1/classes.rb', line 582

def dag_gcs_prefix
  @dag_gcs_prefix
end

#data_retention_configGoogle::Apis::ComposerV1::DataRetentionConfig

The configuration setting for Airflow database data retention mechanism. Corresponds to the JSON property dataRetentionConfig



587
588
589
# File 'lib/google/apis/composer_v1/classes.rb', line 587

def data_retention_config
  @data_retention_config
end

#database_configGoogle::Apis::ComposerV1::DatabaseConfig

The configuration of Cloud SQL instance that is used by the Apache Airflow software. Corresponds to the JSON property databaseConfig



593
594
595
# File 'lib/google/apis/composer_v1/classes.rb', line 593

def database_config
  @database_config
end

#encryption_configGoogle::Apis::ComposerV1::EncryptionConfig

The encryption options for the Cloud Composer environment and its dependencies. Supported for Cloud Composer environments in versions composer-1..-airflow-. *.. Corresponds to the JSON property encryptionConfig



600
601
602
# File 'lib/google/apis/composer_v1/classes.rb', line 600

def encryption_config
  @encryption_config
end

#environment_sizeString

Optional. The size of the Cloud Composer environment. This field is supported for Cloud Composer environments in versions composer-2..-airflow-..* and newer. Corresponds to the JSON property environmentSize

Returns:

  • (String)


607
608
609
# File 'lib/google/apis/composer_v1/classes.rb', line 607

def environment_size
  @environment_size
end

#gke_clusterString

Output only. The Kubernetes Engine cluster used to run this environment. Corresponds to the JSON property gkeCluster

Returns:

  • (String)


612
613
614
# File 'lib/google/apis/composer_v1/classes.rb', line 612

def gke_cluster
  @gke_cluster
end

#maintenance_windowGoogle::Apis::ComposerV1::MaintenanceWindow

The configuration settings for Cloud Composer maintenance window. The following example: ` "startTime":"2019-08-01T01:00:00Z" "endTime":"2019-08- 01T07:00:00Z" "recurrence":"FREQ=WEEKLY;BYDAY=TU,WE" ` would define a maintenance window between 01 and 07 hours UTC during each Tuesday and Wednesday. Corresponds to the JSON property maintenanceWindow



621
622
623
# File 'lib/google/apis/composer_v1/classes.rb', line 621

def maintenance_window
  @maintenance_window
end

#master_authorized_networks_configGoogle::Apis::ComposerV1::MasterAuthorizedNetworksConfig

Configuration options for the master authorized networks feature. Enabled master authorized networks will disallow all external traffic to access Kubernetes master through HTTPS except traffic from the given CIDR blocks, Google Compute Engine Public IPs and Google Prod IPs. Corresponds to the JSON property masterAuthorizedNetworksConfig



629
630
631
# File 'lib/google/apis/composer_v1/classes.rb', line 629

def master_authorized_networks_config
  @master_authorized_networks_config
end

#node_configGoogle::Apis::ComposerV1::NodeConfig

The configuration information for the Kubernetes Engine nodes running the Apache Airflow software. Corresponds to the JSON property nodeConfig



635
636
637
# File 'lib/google/apis/composer_v1/classes.rb', line 635

def node_config
  @node_config
end

#node_countFixnum

The number of nodes in the Kubernetes Engine cluster that will be used to run this environment. This field is supported for Cloud Composer environments in versions composer-1..-airflow-..*. Corresponds to the JSON property nodeCount

Returns:

  • (Fixnum)


642
643
644
# File 'lib/google/apis/composer_v1/classes.rb', line 642

def node_count
  @node_count
end

#private_environment_configGoogle::Apis::ComposerV1::PrivateEnvironmentConfig

The configuration information for configuring a Private IP Cloud Composer environment. Corresponds to the JSON property privateEnvironmentConfig



648
649
650
# File 'lib/google/apis/composer_v1/classes.rb', line 648

def private_environment_config
  @private_environment_config
end

#recovery_configGoogle::Apis::ComposerV1::RecoveryConfig

The Recovery settings of an environment. Corresponds to the JSON property recoveryConfig



653
654
655
# File 'lib/google/apis/composer_v1/classes.rb', line 653

def recovery_config
  @recovery_config
end

#resilience_modeString

Optional. Resilience mode of the Cloud Composer Environment. This field is supported for Cloud Composer environments in versions composer-2.2.0-airflow-. *. and newer. Corresponds to the JSON property resilienceMode

Returns:

  • (String)


660
661
662
# File 'lib/google/apis/composer_v1/classes.rb', line 660

def resilience_mode
  @resilience_mode
end

#software_configGoogle::Apis::ComposerV1::SoftwareConfig

Specifies the selection and configuration of software inside the environment. Corresponds to the JSON property softwareConfig



665
666
667
# File 'lib/google/apis/composer_v1/classes.rb', line 665

def software_config
  @software_config
end

#web_server_configGoogle::Apis::ComposerV1::WebServerConfig

The configuration settings for the Airflow web server App Engine instance. Supported for Cloud Composer environments in versions composer-1..-airflow-. *. Corresponds to the JSON property webServerConfig



672
673
674
# File 'lib/google/apis/composer_v1/classes.rb', line 672

def web_server_config
  @web_server_config
end

#web_server_network_access_controlGoogle::Apis::ComposerV1::WebServerNetworkAccessControl

Network-level access control policy for the Airflow web server. Corresponds to the JSON property webServerNetworkAccessControl



677
678
679
# File 'lib/google/apis/composer_v1/classes.rb', line 677

def web_server_network_access_control
  @web_server_network_access_control
end

#workloads_configGoogle::Apis::ComposerV1::WorkloadsConfig

The Kubernetes workloads configuration for GKE cluster associated with the Cloud Composer environment. Supported for Cloud Composer environments in versions composer-2..-airflow-..* and newer. Corresponds to the JSON property workloadsConfig



684
685
686
# File 'lib/google/apis/composer_v1/classes.rb', line 684

def workloads_config
  @workloads_config
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
# File 'lib/google/apis/composer_v1/classes.rb', line 691

def update!(**args)
  @airflow_byoid_uri = args[:airflow_byoid_uri] if args.key?(:airflow_byoid_uri)
  @airflow_uri = args[:airflow_uri] if args.key?(:airflow_uri)
  @dag_gcs_prefix = args[:dag_gcs_prefix] if args.key?(:dag_gcs_prefix)
  @data_retention_config = args[:data_retention_config] if args.key?(:data_retention_config)
  @database_config = args[:database_config] if args.key?(:database_config)
  @encryption_config = args[:encryption_config] if args.key?(:encryption_config)
  @environment_size = args[:environment_size] if args.key?(:environment_size)
  @gke_cluster = args[:gke_cluster] if args.key?(:gke_cluster)
  @maintenance_window = args[:maintenance_window] if args.key?(:maintenance_window)
  @master_authorized_networks_config = args[:master_authorized_networks_config] if args.key?(:master_authorized_networks_config)
  @node_config = args[:node_config] if args.key?(:node_config)
  @node_count = args[:node_count] if args.key?(:node_count)
  @private_environment_config = args[:private_environment_config] if args.key?(:private_environment_config)
  @recovery_config = args[:recovery_config] if args.key?(:recovery_config)
  @resilience_mode = args[:resilience_mode] if args.key?(:resilience_mode)
  @software_config = args[:software_config] if args.key?(:software_config)
  @web_server_config = args[:web_server_config] if args.key?(:web_server_config)
  @web_server_network_access_control = args[:web_server_network_access_control] if args.key?(:web_server_network_access_control)
  @workloads_config = args[:workloads_config] if args.key?(:workloads_config)
end