Class SoftwareConfig

  • All Implemented Interfaces:
    SoftwareConfigOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

    public final class SoftwareConfig
    extends com.google.protobuf.GeneratedMessageV3
    implements SoftwareConfigOrBuilder
     Specifies the selection and configuration of software inside the environment.
     
    Protobuf type google.cloud.orchestration.airflow.service.v1.SoftwareConfig
    See Also:
    Serialized Form
    • Field Detail

      • IMAGE_VERSION_FIELD_NUMBER

        public static final int IMAGE_VERSION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • AIRFLOW_CONFIG_OVERRIDES_FIELD_NUMBER

        public static final int AIRFLOW_CONFIG_OVERRIDES_FIELD_NUMBER
        See Also:
        Constant Field Values
      • PYPI_PACKAGES_FIELD_NUMBER

        public static final int PYPI_PACKAGES_FIELD_NUMBER
        See Also:
        Constant Field Values
      • ENV_VARIABLES_FIELD_NUMBER

        public static final int ENV_VARIABLES_FIELD_NUMBER
        See Also:
        Constant Field Values
      • PYTHON_VERSION_FIELD_NUMBER

        public static final int PYTHON_VERSION_FIELD_NUMBER
        See Also:
        Constant Field Values
      • SCHEDULER_COUNT_FIELD_NUMBER

        public static final int SCHEDULER_COUNT_FIELD_NUMBER
        See Also:
        Constant Field Values
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetMapField

        protected com.google.protobuf.MapField internalGetMapField​(int number)
        Overrides:
        internalGetMapField in class com.google.protobuf.GeneratedMessageV3
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3
      • getImageVersion

        public String getImageVersion()
         The version of the software running in the environment.
         This encapsulates both the version of Cloud Composer functionality and the
         version of Apache Airflow. It must match the regular expression
         `composer-([0-9]+(\.[0-9]+\.[0-9]+(-preview\.[0-9]+)?)?|latest)-airflow-([0-9]+(\.[0-9]+(\.[0-9]+)?)?)`.
         When used as input, the server also checks if the provided version is
         supported and denies the request for an unsupported version.
        
         The Cloud Composer portion of the image version is a full
         [semantic version](https://semver.org), or an alias in the form of major
         version number or `latest`. When an alias is provided, the server replaces
         it with the current Cloud Composer version that satisfies the alias.
        
         The Apache Airflow portion of the image version is a full semantic version
         that points to one of the supported Apache Airflow versions, or an alias in
         the form of only major or major.minor versions specified. When an alias is
         provided, the server replaces it with the latest Apache Airflow version
         that satisfies the alias and is supported in the given Cloud Composer
         version.
        
         In all cases, the resolved image version is stored in the same field.
        
         See also [version
         list](/composer/docs/concepts/versioning/composer-versions) and [versioning
         overview](/composer/docs/concepts/versioning/composer-versioning-overview).
         
        string image_version = 1;
        Specified by:
        getImageVersion in interface SoftwareConfigOrBuilder
        Returns:
        The imageVersion.
      • getImageVersionBytes

        public com.google.protobuf.ByteString getImageVersionBytes()
         The version of the software running in the environment.
         This encapsulates both the version of Cloud Composer functionality and the
         version of Apache Airflow. It must match the regular expression
         `composer-([0-9]+(\.[0-9]+\.[0-9]+(-preview\.[0-9]+)?)?|latest)-airflow-([0-9]+(\.[0-9]+(\.[0-9]+)?)?)`.
         When used as input, the server also checks if the provided version is
         supported and denies the request for an unsupported version.
        
         The Cloud Composer portion of the image version is a full
         [semantic version](https://semver.org), or an alias in the form of major
         version number or `latest`. When an alias is provided, the server replaces
         it with the current Cloud Composer version that satisfies the alias.
        
         The Apache Airflow portion of the image version is a full semantic version
         that points to one of the supported Apache Airflow versions, or an alias in
         the form of only major or major.minor versions specified. When an alias is
         provided, the server replaces it with the latest Apache Airflow version
         that satisfies the alias and is supported in the given Cloud Composer
         version.
        
         In all cases, the resolved image version is stored in the same field.
        
         See also [version
         list](/composer/docs/concepts/versioning/composer-versions) and [versioning
         overview](/composer/docs/concepts/versioning/composer-versioning-overview).
         
        string image_version = 1;
        Specified by:
        getImageVersionBytes in interface SoftwareConfigOrBuilder
        Returns:
        The bytes for imageVersion.
      • getAirflowConfigOverridesCount

        public int getAirflowConfigOverridesCount()
        Description copied from interface: SoftwareConfigOrBuilder
         Optional. Apache Airflow configuration properties to override.
        
         Property keys contain the section and property names, separated by a
         hyphen, for example "core-dags_are_paused_at_creation". Section names must
         not contain hyphens ("-"), opening square brackets ("["),  or closing
         square brackets ("]"). The property name must not be empty and must not
         contain an equals sign ("=") or semicolon (";"). Section and property names
         must not contain a period ("."). Apache Airflow configuration property
         names must be written in
         [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
         contain any character, and can be written in any lower/upper case format.
        
         Certain Apache Airflow configuration property values are
         [blocked](/composer/docs/concepts/airflow-configurations),
         and cannot be overridden.
         
        map<string, string> airflow_config_overrides = 2;
        Specified by:
        getAirflowConfigOverridesCount in interface SoftwareConfigOrBuilder
      • containsAirflowConfigOverrides

        public boolean containsAirflowConfigOverrides​(String key)
         Optional. Apache Airflow configuration properties to override.
        
         Property keys contain the section and property names, separated by a
         hyphen, for example "core-dags_are_paused_at_creation". Section names must
         not contain hyphens ("-"), opening square brackets ("["),  or closing
         square brackets ("]"). The property name must not be empty and must not
         contain an equals sign ("=") or semicolon (";"). Section and property names
         must not contain a period ("."). Apache Airflow configuration property
         names must be written in
         [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
         contain any character, and can be written in any lower/upper case format.
        
         Certain Apache Airflow configuration property values are
         [blocked](/composer/docs/concepts/airflow-configurations),
         and cannot be overridden.
         
        map<string, string> airflow_config_overrides = 2;
        Specified by:
        containsAirflowConfigOverrides in interface SoftwareConfigOrBuilder
      • getAirflowConfigOverridesMap

        public Map<String,​String> getAirflowConfigOverridesMap()
         Optional. Apache Airflow configuration properties to override.
        
         Property keys contain the section and property names, separated by a
         hyphen, for example "core-dags_are_paused_at_creation". Section names must
         not contain hyphens ("-"), opening square brackets ("["),  or closing
         square brackets ("]"). The property name must not be empty and must not
         contain an equals sign ("=") or semicolon (";"). Section and property names
         must not contain a period ("."). Apache Airflow configuration property
         names must be written in
         [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
         contain any character, and can be written in any lower/upper case format.
        
         Certain Apache Airflow configuration property values are
         [blocked](/composer/docs/concepts/airflow-configurations),
         and cannot be overridden.
         
        map<string, string> airflow_config_overrides = 2;
        Specified by:
        getAirflowConfigOverridesMap in interface SoftwareConfigOrBuilder
      • getAirflowConfigOverridesOrDefault

        public String getAirflowConfigOverridesOrDefault​(String key,
                                                         String defaultValue)
         Optional. Apache Airflow configuration properties to override.
        
         Property keys contain the section and property names, separated by a
         hyphen, for example "core-dags_are_paused_at_creation". Section names must
         not contain hyphens ("-"), opening square brackets ("["),  or closing
         square brackets ("]"). The property name must not be empty and must not
         contain an equals sign ("=") or semicolon (";"). Section and property names
         must not contain a period ("."). Apache Airflow configuration property
         names must be written in
         [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
         contain any character, and can be written in any lower/upper case format.
        
         Certain Apache Airflow configuration property values are
         [blocked](/composer/docs/concepts/airflow-configurations),
         and cannot be overridden.
         
        map<string, string> airflow_config_overrides = 2;
        Specified by:
        getAirflowConfigOverridesOrDefault in interface SoftwareConfigOrBuilder
      • getAirflowConfigOverridesOrThrow

        public String getAirflowConfigOverridesOrThrow​(String key)
         Optional. Apache Airflow configuration properties to override.
        
         Property keys contain the section and property names, separated by a
         hyphen, for example "core-dags_are_paused_at_creation". Section names must
         not contain hyphens ("-"), opening square brackets ("["),  or closing
         square brackets ("]"). The property name must not be empty and must not
         contain an equals sign ("=") or semicolon (";"). Section and property names
         must not contain a period ("."). Apache Airflow configuration property
         names must be written in
         [snake_case](https://en.wikipedia.org/wiki/Snake_case). Property values can
         contain any character, and can be written in any lower/upper case format.
        
         Certain Apache Airflow configuration property values are
         [blocked](/composer/docs/concepts/airflow-configurations),
         and cannot be overridden.
         
        map<string, string> airflow_config_overrides = 2;
        Specified by:
        getAirflowConfigOverridesOrThrow in interface SoftwareConfigOrBuilder
      • getPypiPackagesCount

        public int getPypiPackagesCount()
        Description copied from interface: SoftwareConfigOrBuilder
         Optional. Custom Python Package Index (PyPI) packages to be installed in
         the environment.
        
         Keys refer to the lowercase package name such as "numpy"
         and values are the lowercase extras and version specifier such as
         "==1.12.0", "[devel,gcp_api]", or "[devel]>=1.8.2, <1.9.2". To specify a
         package without pinning it to a version specifier, use the empty string as
         the value.
         
        map<string, string> pypi_packages = 3;
        Specified by:
        getPypiPackagesCount in interface SoftwareConfigOrBuilder
      • containsPypiPackages

        public boolean containsPypiPackages​(String key)
         Optional. Custom Python Package Index (PyPI) packages to be installed in
         the environment.
        
         Keys refer to the lowercase package name such as "numpy"
         and values are the lowercase extras and version specifier such as
         "==1.12.0", "[devel,gcp_api]", or "[devel]>=1.8.2, <1.9.2". To specify a
         package without pinning it to a version specifier, use the empty string as
         the value.
         
        map<string, string> pypi_packages = 3;
        Specified by:
        containsPypiPackages in interface SoftwareConfigOrBuilder
      • getPypiPackagesMap

        public Map<String,​String> getPypiPackagesMap()
         Optional. Custom Python Package Index (PyPI) packages to be installed in
         the environment.
        
         Keys refer to the lowercase package name such as "numpy"
         and values are the lowercase extras and version specifier such as
         "==1.12.0", "[devel,gcp_api]", or "[devel]>=1.8.2, <1.9.2". To specify a
         package without pinning it to a version specifier, use the empty string as
         the value.
         
        map<string, string> pypi_packages = 3;
        Specified by:
        getPypiPackagesMap in interface SoftwareConfigOrBuilder
      • getPypiPackagesOrDefault

        public String getPypiPackagesOrDefault​(String key,
                                               String defaultValue)
         Optional. Custom Python Package Index (PyPI) packages to be installed in
         the environment.
        
         Keys refer to the lowercase package name such as "numpy"
         and values are the lowercase extras and version specifier such as
         "==1.12.0", "[devel,gcp_api]", or "[devel]>=1.8.2, <1.9.2". To specify a
         package without pinning it to a version specifier, use the empty string as
         the value.
         
        map<string, string> pypi_packages = 3;
        Specified by:
        getPypiPackagesOrDefault in interface SoftwareConfigOrBuilder
      • getPypiPackagesOrThrow

        public String getPypiPackagesOrThrow​(String key)
         Optional. Custom Python Package Index (PyPI) packages to be installed in
         the environment.
        
         Keys refer to the lowercase package name such as "numpy"
         and values are the lowercase extras and version specifier such as
         "==1.12.0", "[devel,gcp_api]", or "[devel]>=1.8.2, <1.9.2". To specify a
         package without pinning it to a version specifier, use the empty string as
         the value.
         
        map<string, string> pypi_packages = 3;
        Specified by:
        getPypiPackagesOrThrow in interface SoftwareConfigOrBuilder
      • getEnvVariablesCount

        public int getEnvVariablesCount()
        Description copied from interface: SoftwareConfigOrBuilder
         Optional. Additional environment variables to provide to the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Environment variable names must match the regular expression
         `[a-zA-Z_][a-zA-Z0-9_]*`. They cannot specify Apache Airflow
         software configuration overrides (they cannot match the regular expression
         `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
         following reserved names:
        
         * `AIRFLOW_HOME`
         * `C_FORCE_ROOT`
         * `CONTAINER_NAME`
         * `DAGS_FOLDER`
         * `GCP_PROJECT`
         * `GCS_BUCKET`
         * `GKE_CLUSTER_NAME`
         * `SQL_DATABASE`
         * `SQL_INSTANCE`
         * `SQL_PASSWORD`
         * `SQL_PROJECT`
         * `SQL_REGION`
         * `SQL_USER`
         
        map<string, string> env_variables = 4;
        Specified by:
        getEnvVariablesCount in interface SoftwareConfigOrBuilder
      • containsEnvVariables

        public boolean containsEnvVariables​(String key)
         Optional. Additional environment variables to provide to the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Environment variable names must match the regular expression
         `[a-zA-Z_][a-zA-Z0-9_]*`. They cannot specify Apache Airflow
         software configuration overrides (they cannot match the regular expression
         `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
         following reserved names:
        
         * `AIRFLOW_HOME`
         * `C_FORCE_ROOT`
         * `CONTAINER_NAME`
         * `DAGS_FOLDER`
         * `GCP_PROJECT`
         * `GCS_BUCKET`
         * `GKE_CLUSTER_NAME`
         * `SQL_DATABASE`
         * `SQL_INSTANCE`
         * `SQL_PASSWORD`
         * `SQL_PROJECT`
         * `SQL_REGION`
         * `SQL_USER`
         
        map<string, string> env_variables = 4;
        Specified by:
        containsEnvVariables in interface SoftwareConfigOrBuilder
      • getEnvVariablesMap

        public Map<String,​String> getEnvVariablesMap()
         Optional. Additional environment variables to provide to the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Environment variable names must match the regular expression
         `[a-zA-Z_][a-zA-Z0-9_]*`. They cannot specify Apache Airflow
         software configuration overrides (they cannot match the regular expression
         `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
         following reserved names:
        
         * `AIRFLOW_HOME`
         * `C_FORCE_ROOT`
         * `CONTAINER_NAME`
         * `DAGS_FOLDER`
         * `GCP_PROJECT`
         * `GCS_BUCKET`
         * `GKE_CLUSTER_NAME`
         * `SQL_DATABASE`
         * `SQL_INSTANCE`
         * `SQL_PASSWORD`
         * `SQL_PROJECT`
         * `SQL_REGION`
         * `SQL_USER`
         
        map<string, string> env_variables = 4;
        Specified by:
        getEnvVariablesMap in interface SoftwareConfigOrBuilder
      • getEnvVariablesOrDefault

        public String getEnvVariablesOrDefault​(String key,
                                               String defaultValue)
         Optional. Additional environment variables to provide to the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Environment variable names must match the regular expression
         `[a-zA-Z_][a-zA-Z0-9_]*`. They cannot specify Apache Airflow
         software configuration overrides (they cannot match the regular expression
         `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
         following reserved names:
        
         * `AIRFLOW_HOME`
         * `C_FORCE_ROOT`
         * `CONTAINER_NAME`
         * `DAGS_FOLDER`
         * `GCP_PROJECT`
         * `GCS_BUCKET`
         * `GKE_CLUSTER_NAME`
         * `SQL_DATABASE`
         * `SQL_INSTANCE`
         * `SQL_PASSWORD`
         * `SQL_PROJECT`
         * `SQL_REGION`
         * `SQL_USER`
         
        map<string, string> env_variables = 4;
        Specified by:
        getEnvVariablesOrDefault in interface SoftwareConfigOrBuilder
      • getEnvVariablesOrThrow

        public String getEnvVariablesOrThrow​(String key)
         Optional. Additional environment variables to provide to the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Environment variable names must match the regular expression
         `[a-zA-Z_][a-zA-Z0-9_]*`. They cannot specify Apache Airflow
         software configuration overrides (they cannot match the regular expression
         `AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+`), and they cannot match any of the
         following reserved names:
        
         * `AIRFLOW_HOME`
         * `C_FORCE_ROOT`
         * `CONTAINER_NAME`
         * `DAGS_FOLDER`
         * `GCP_PROJECT`
         * `GCS_BUCKET`
         * `GKE_CLUSTER_NAME`
         * `SQL_DATABASE`
         * `SQL_INSTANCE`
         * `SQL_PASSWORD`
         * `SQL_PROJECT`
         * `SQL_REGION`
         * `SQL_USER`
         
        map<string, string> env_variables = 4;
        Specified by:
        getEnvVariablesOrThrow in interface SoftwareConfigOrBuilder
      • getPythonVersion

        public String getPythonVersion()
         Optional. The major version of Python used to run the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Can be set to '2' or '3'. If not specified, the default is '3'. Cannot be
         updated.
        
         This field is only supported for Cloud Composer environments in versions
         composer-1.*.*-airflow-*.*.*. Environments in newer versions always use
         Python major version 3.
         
        string python_version = 6;
        Specified by:
        getPythonVersion in interface SoftwareConfigOrBuilder
        Returns:
        The pythonVersion.
      • getPythonVersionBytes

        public com.google.protobuf.ByteString getPythonVersionBytes()
         Optional. The major version of Python used to run the Apache Airflow
         scheduler, worker, and webserver processes.
        
         Can be set to '2' or '3'. If not specified, the default is '3'. Cannot be
         updated.
        
         This field is only supported for Cloud Composer environments in versions
         composer-1.*.*-airflow-*.*.*. Environments in newer versions always use
         Python major version 3.
         
        string python_version = 6;
        Specified by:
        getPythonVersionBytes in interface SoftwareConfigOrBuilder
        Returns:
        The bytes for pythonVersion.
      • getSchedulerCount

        public int getSchedulerCount()
         Optional. The number of schedulers for Airflow.
        
         This field is supported for Cloud Composer environments in versions
         composer-1.*.*-airflow-2.*.*.
         
        int32 scheduler_count = 7 [(.google.api.field_behavior) = OPTIONAL];
        Specified by:
        getSchedulerCount in interface SoftwareConfigOrBuilder
        Returns:
        The schedulerCount.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • writeTo

        public void writeTo​(com.google.protobuf.CodedOutputStream output)
                     throws IOException
        Specified by:
        writeTo in interface com.google.protobuf.MessageLite
        Overrides:
        writeTo in class com.google.protobuf.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • equals

        public boolean equals​(Object obj)
        Specified by:
        equals in interface com.google.protobuf.Message
        Overrides:
        equals in class com.google.protobuf.AbstractMessage
      • hashCode

        public int hashCode()
        Specified by:
        hashCode in interface com.google.protobuf.Message
        Overrides:
        hashCode in class com.google.protobuf.AbstractMessage
      • parseFrom

        public static SoftwareConfig parseFrom​(ByteBuffer data)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static SoftwareConfig parseFrom​(ByteBuffer data,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static SoftwareConfig parseFrom​(com.google.protobuf.ByteString data)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static SoftwareConfig parseFrom​(com.google.protobuf.ByteString data,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static SoftwareConfig parseFrom​(byte[] data)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static SoftwareConfig parseFrom​(byte[] data,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

        public static SoftwareConfig parseFrom​(com.google.protobuf.CodedInputStream input,
                                               com.google.protobuf.ExtensionRegistryLite extensionRegistry)
                                        throws IOException
        Throws:
        IOException
      • newBuilderForType

        public SoftwareConfig.Builder newBuilderForType()
        Specified by:
        newBuilderForType in interface com.google.protobuf.Message
        Specified by:
        newBuilderForType in interface com.google.protobuf.MessageLite
      • toBuilder

        public SoftwareConfig.Builder toBuilder()
        Specified by:
        toBuilder in interface com.google.protobuf.Message
        Specified by:
        toBuilder in interface com.google.protobuf.MessageLite
      • newBuilderForType

        protected SoftwareConfig.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstance

        public static SoftwareConfig getDefaultInstance()
      • parser

        public static com.google.protobuf.Parser<SoftwareConfig> parser()
      • getParserForType

        public com.google.protobuf.Parser<SoftwareConfig> getParserForType()
        Specified by:
        getParserForType in interface com.google.protobuf.Message
        Specified by:
        getParserForType in interface com.google.protobuf.MessageLite
        Overrides:
        getParserForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstanceForType

        public SoftwareConfig getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder