package Google::Dataflow::V1beta3::Environment;

use strict;
use warnings;

our $VERSION = '0.11';

use Protobuf::Message;
use Protobuf::DescriptorPool;
use Protobuf::Internal qw(:all);
use MIME::Base64;

BEGIN {
    eval { require Google::Api::FieldBehavior };
    eval { require Google::Protobuf::Any };
    eval { require Google::Protobuf::Struct };
    my $descriptor_b64 = <<'EOF';
[encoded data, 42997 characters]
BSEiYgZwcm90bzM=
EOF
    Protobuf::DescriptorPool->generated_pool->add_serialized_file(MIME::Base64::decode_base64($descriptor_b64));
}

# Message definitions

# === Message: Google::Dataflow::V1beta3::Environment::Environment ===
    # Fields for Environment
    # Field: temp_storage_prefix Type: 9 ()
    # Field: cluster_manager_api_service Type: 9 ()
    # Field: experiments Type: 9 ()
    # Field: service_options Type: 9 ()
    # Field: service_kms_key_name Type: 9 ()
    # Field: worker_pools Type: 11 (.google.dataflow.v1beta3.WorkerPool)
    # Field: user_agent Type: 11 (.google.protobuf.Struct)
    # Field: version Type: 11 (.google.protobuf.Struct)
    # Field: dataset Type: 9 ()
    # Field: sdk_pipeline_options Type: 11 (.google.protobuf.Struct)
    # Field: internal_experiments Type: 11 (.google.protobuf.Any)
    # Field: service_account_email Type: 9 ()
    # Field: flex_resource_scheduling_goal Type: 14 (.google.dataflow.v1beta3.FlexResourceSchedulingGoal)
    # Field: worker_region Type: 9 ()
    # Field: worker_zone Type: 9 ()
    # Field: shuffle_mode Type: 14 (.google.dataflow.v1beta3.ShuffleMode)
    # Field: debug_options Type: 11 (.google.dataflow.v1beta3.DebugOptions)
    # Field: use_streaming_engine_resource_based_billing Type: 8 ()
    # Field: streaming_mode Type: 14 (.google.dataflow.v1beta3.StreamingMode)
    # Field: use_public_ips Type: 8 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::Environment - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::Environment->new(
        temp_storage_prefix => $value,
    );

=head1 FIELDS

=over 4

=item * B<temp_storage_prefix>

Type: String

=item * B<cluster_manager_api_service>

Type: String

=item * B<experiments>

Type: String

=item * B<service_options>

Type: String

=item * B<service_kms_key_name>

Type: String

=item * B<worker_pools>

Type: Message (.google.dataflow.v1beta3.WorkerPool)

=item * B<user_agent>

Type: Message (.google.protobuf.Struct)

=item * B<version>

Type: Message (.google.protobuf.Struct)

=item * B<dataset>

Type: String

=item * B<sdk_pipeline_options>

Type: Message (.google.protobuf.Struct)

=item * B<internal_experiments>

Type: Message (.google.protobuf.Any)

=item * B<service_account_email>

Type: String

=item * B<flex_resource_scheduling_goal>

Type: Enum (.google.dataflow.v1beta3.FlexResourceSchedulingGoal)

=item * B<worker_region>

Type: String

=item * B<worker_zone>

Type: String

=item * B<shuffle_mode>

Type: Enum (.google.dataflow.v1beta3.ShuffleMode)

=item * B<debug_options>

Type: Message (.google.dataflow.v1beta3.DebugOptions)

=item * B<use_streaming_engine_resource_based_billing>

Type: Bool

=item * B<streaming_mode>

Type: Enum (.google.dataflow.v1beta3.StreamingMode)

=item * B<use_public_ips>

Type: Bool

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::Package ===
    # Fields for Package
    # Field: name Type: 9 ()
    # Field: location Type: 9 ()
    # Field: sha256 Type: 9 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::Package - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::Package->new(
        name => $value,
    );

=head1 FIELDS

=over 4

=item * B<name>

Type: String

=item * B<location>

Type: String

=item * B<sha256>

Type: String

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::Disk ===
    # Fields for Disk
    # Field: size_gb Type: 5 ()
    # Field: disk_type Type: 9 ()
    # Field: mount_point Type: 9 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::Disk - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::Disk->new(
        size_gb => $value,
    );

=head1 FIELDS

=over 4

=item * B<size_gb>

Type: Int32

=item * B<disk_type>

Type: String

=item * B<mount_point>

Type: String

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::WorkerSettings ===
    # Fields for WorkerSettings
    # Field: base_url Type: 9 ()
    # Field: reporting_enabled Type: 8 ()
    # Field: service_path Type: 9 ()
    # Field: shuffle_service_path Type: 9 ()
    # Field: worker_id Type: 9 ()
    # Field: temp_storage_prefix Type: 9 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::WorkerSettings - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::WorkerSettings->new(
        base_url => $value,
    );

=head1 FIELDS

=over 4

=item * B<base_url>

Type: String

=item * B<reporting_enabled>

Type: Bool

=item * B<service_path>

Type: String

=item * B<shuffle_service_path>

Type: String

=item * B<worker_id>

Type: String

=item * B<temp_storage_prefix>

Type: String

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::TaskRunnerSettings ===
    # Fields for TaskRunnerSettings
    # Field: task_user Type: 9 ()
    # Field: task_group Type: 9 ()
    # Field: oauth_scopes Type: 9 ()
    # Field: base_url Type: 9 ()
    # Field: dataflow_api_version Type: 9 ()
    # Field: parallel_worker_settings Type: 11 (.google.dataflow.v1beta3.WorkerSettings)
    # Field: base_task_dir Type: 9 ()
    # Field: continue_on_exception Type: 8 ()
    # Field: log_to_serialconsole Type: 8 ()
    # Field: alsologtostderr Type: 8 ()
    # Field: log_upload_location Type: 9 ()
    # Field: log_dir Type: 9 ()
    # Field: temp_storage_prefix Type: 9 ()
    # Field: harness_command Type: 9 ()
    # Field: workflow_file_name Type: 9 ()
    # Field: commandlines_file_name Type: 9 ()
    # Field: vm_id Type: 9 ()
    # Field: language_hint Type: 9 ()
    # Field: streaming_worker_main_class Type: 9 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::TaskRunnerSettings - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::TaskRunnerSettings->new(
        task_user => $value,
    );

=head1 FIELDS

=over 4

=item * B<task_user>

Type: String

=item * B<task_group>

Type: String

=item * B<oauth_scopes>

Type: String

=item * B<base_url>

Type: String

=item * B<dataflow_api_version>

Type: String

=item * B<parallel_worker_settings>

Type: Message (.google.dataflow.v1beta3.WorkerSettings)

=item * B<base_task_dir>

Type: String

=item * B<continue_on_exception>

Type: Bool

=item * B<log_to_serialconsole>

Type: Bool

=item * B<alsologtostderr>

Type: Bool

=item * B<log_upload_location>

Type: String

=item * B<log_dir>

Type: String

=item * B<temp_storage_prefix>

Type: String

=item * B<harness_command>

Type: String

=item * B<workflow_file_name>

Type: String

=item * B<commandlines_file_name>

Type: String

=item * B<vm_id>

Type: String

=item * B<language_hint>

Type: String

=item * B<streaming_worker_main_class>

Type: String

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::AutoscalingSettings ===
    # Fields for AutoscalingSettings
    # Field: algorithm Type: 14 (.google.dataflow.v1beta3.AutoscalingAlgorithm)
    # Field: max_num_workers Type: 5 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::AutoscalingSettings - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::AutoscalingSettings->new(
        algorithm => $value,
    );

=head1 FIELDS

=over 4

=item * B<algorithm>

Type: Enum (.google.dataflow.v1beta3.AutoscalingAlgorithm)

=item * B<max_num_workers>

Type: Int32

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::SdkHarnessContainerImage ===
    # Fields for SdkHarnessContainerImage
    # Field: container_image Type: 9 ()
    # Field: use_single_core_per_container Type: 8 ()
    # Field: environment_id Type: 9 ()
    # Field: capabilities Type: 9 ()

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::SdkHarnessContainerImage - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::SdkHarnessContainerImage->new(
        container_image => $value,
    );

=head1 FIELDS

=over 4

=item * B<container_image>

Type: String

=item * B<use_single_core_per_container>

Type: Bool

=item * B<environment_id>

Type: String

=item * B<capabilities>

Type: String

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::WorkerPool ===
    # Fields for WorkerPool
    # Field: kind Type: 9 ()
    # Field: num_workers Type: 5 ()
    # Field: packages Type: 11 (.google.dataflow.v1beta3.Package)
    # Field: default_package_set Type: 14 (.google.dataflow.v1beta3.DefaultPackageSet)
    # Field: machine_type Type: 9 ()
    # Field: teardown_policy Type: 14 (.google.dataflow.v1beta3.TeardownPolicy)
    # Field: disk_size_gb Type: 5 ()
    # Field: disk_type Type: 9 ()
    # Field: disk_provisioned_iops Type: 3 ()
    # Field: disk_provisioned_throughput_mibps Type: 3 ()
    # Field: disk_source_image Type: 9 ()
    # Field: zone Type: 9 ()
    # Field: taskrunner_settings Type: 11 (.google.dataflow.v1beta3.TaskRunnerSettings)
    # Field: on_host_maintenance Type: 9 ()
    # Field: data_disks Type: 11 (.google.dataflow.v1beta3.Disk)
    # Field: metadata Type: 11 (.google.dataflow.v1beta3.WorkerPool.MetadataEntry)
    # Field: autoscaling_settings Type: 11 (.google.dataflow.v1beta3.AutoscalingSettings)
    # Field: pool_args Type: 11 (.google.protobuf.Any)
    # Field: network Type: 9 ()
    # Field: subnetwork Type: 9 ()
    # Field: worker_harness_container_image Type: 9 ()
    # Field: num_threads_per_worker Type: 5 ()
    # Field: ip_configuration Type: 14 (.google.dataflow.v1beta3.WorkerIPAddressConfiguration)
    # Field: sdk_harness_container_images Type: 11 (.google.dataflow.v1beta3.SdkHarnessContainerImage)

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::WorkerPool - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::WorkerPool->new(
        kind => $value,
    );

=head1 FIELDS

=over 4

=item * B<kind>

Type: String

=item * B<num_workers>

Type: Int32

=item * B<packages>

Type: Message (.google.dataflow.v1beta3.Package)

=item * B<default_package_set>

Type: Enum (.google.dataflow.v1beta3.DefaultPackageSet)

=item * B<machine_type>

Type: String

=item * B<teardown_policy>

Type: Enum (.google.dataflow.v1beta3.TeardownPolicy)

=item * B<disk_size_gb>

Type: Int32

=item * B<disk_type>

Type: String

=item * B<disk_provisioned_iops>

Type: Int64

=item * B<disk_provisioned_throughput_mibps>

Type: Int64

=item * B<disk_source_image>

Type: String

=item * B<zone>

Type: String

=item * B<taskrunner_settings>

Type: Message (.google.dataflow.v1beta3.TaskRunnerSettings)

=item * B<on_host_maintenance>

Type: String

=item * B<data_disks>

Type: Message (.google.dataflow.v1beta3.Disk)

=item * B<metadata>

Type: Message (.google.dataflow.v1beta3.WorkerPool.MetadataEntry)

=item * B<autoscaling_settings>

Type: Message (.google.dataflow.v1beta3.AutoscalingSettings)

=item * B<pool_args>

Type: Message (.google.protobuf.Any)

=item * B<network>

Type: String

=item * B<subnetwork>

Type: String

=item * B<worker_harness_container_image>

Type: String

=item * B<num_threads_per_worker>

Type: Int32

=item * B<ip_configuration>

Type: Enum (.google.dataflow.v1beta3.WorkerIPAddressConfiguration)

=item * B<sdk_harness_container_images>

Type: Message (.google.dataflow.v1beta3.SdkHarnessContainerImage)

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::DataSamplingConfig ===
    # Fields for DataSamplingConfig
    # Field: behaviors Type: 14 (.google.dataflow.v1beta3.DataSamplingConfig.DataSamplingBehavior)

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::DataSamplingConfig - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::DataSamplingConfig->new(
        behaviors => $value,
    );

=head1 FIELDS

=over 4

=item * B<behaviors>

Type: Enum (.google.dataflow.v1beta3.DataSamplingConfig.DataSamplingBehavior)

=back

=cut

# Enum: DataSamplingConfig::DataSamplingBehavior
our $DataSamplingConfig_DATA_SAMPLING_BEHAVIOR_UNSPECIFIED = 0;
our $DataSamplingConfig_DISABLED = 1;
our $DataSamplingConfig_ALWAYS_ON = 2;
our $DataSamplingConfig_EXCEPTIONS = 3;

=pod

=head2 Enum: DataSamplingConfig::DataSamplingBehavior

Values:

=over 4

=item * C<DATA_SAMPLING_BEHAVIOR_UNSPECIFIED> => 0

=item * C<DISABLED> => 1

=item * C<ALWAYS_ON> => 2

=item * C<EXCEPTIONS> => 3

=back

=cut

# === Message: Google::Dataflow::V1beta3::Environment::DebugOptions ===
    # Fields for DebugOptions
    # Field: enable_hot_key_logging Type: 8 ()
    # Field: data_sampling Type: 11 (.google.dataflow.v1beta3.DataSamplingConfig)

=pod

=head1 NAME

Google::Dataflow::V1beta3::Environment::DebugOptions - Compiled Protocol Buffers message class

=head1 SYNOPSIS

    use Google::Dataflow::V1beta3::Environment;

    my $msg = Google::Dataflow::V1beta3::Environment::DebugOptions->new(
        enable_hot_key_logging => $value,
    );

=head1 FIELDS

=over 4

=item * B<enable_hot_key_logging>

Type: Bool

=item * B<data_sampling>

Type: Message (.google.dataflow.v1beta3.DataSamplingConfig)

=back

=cut

1;

__END__

=head1 NAME

Google::Dataflow::V1beta3::Environment - Protocol Buffers schema definition

=head1 DESCRIPTION

Auto-generated Protocol Buffers schema definition class.

=head1 LICENSE AND COPYRIGHT

Copyright (C) 2026 Google LLC

This program is released under the Apache 2.0 license.

=cut
