Class: Google::Apis::BatchV1::TaskSpec
- Inherits:
-
Object
- Object
- Google::Apis::BatchV1::TaskSpec
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/batch_v1/classes.rb,
lib/google/apis/batch_v1/representations.rb,
lib/google/apis/batch_v1/representations.rb
Overview
Spec of a task
Instance Attribute Summary collapse
-
#compute_resource ⇒ Google::Apis::BatchV1::ComputeResource
Compute resource requirements.
-
#environment ⇒ Google::Apis::BatchV1::Environment
An Environment describes a collection of environment variables to set when executing Tasks.
-
#environments ⇒ Hash<String,String>
Deprecated: please use environment(non-plural) instead.
-
#lifecycle_policies ⇒ Array<Google::Apis::BatchV1::LifecyclePolicy>
Lifecycle management schema when any task in a task group is failed.
-
#max_retry_count ⇒ Fixnum
Maximum number of retries on failures.
-
#max_run_duration ⇒ String
Maximum duration the task should run before being automatically retried (if enabled) or automatically failed.
-
#runnables ⇒ Array<Google::Apis::BatchV1::Runnable>
The sequence of scripts or containers to run for this Task.
-
#volumes ⇒ Array<Google::Apis::BatchV1::Volume>
Volumes to mount before running Tasks using this TaskSpec.
Instance Method Summary collapse
-
#initialize(**args) ⇒ TaskSpec
constructor
A new instance of TaskSpec.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ TaskSpec
Returns a new instance of TaskSpec.
2499 2500 2501 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2499 def initialize(**args) update!(**args) end |
Instance Attribute Details
#compute_resource ⇒ Google::Apis::BatchV1::ComputeResource
Compute resource requirements. ComputeResource defines the amount of resources
required for each task. Make sure your tasks have enough resources to
successfully run. If you also define the types of resources for a job to use
with the InstancePolicyOrTemplate field,
make sure both fields are compatible with each other.
Corresponds to the JSON property computeResource
2441 2442 2443 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2441 def compute_resource @compute_resource end |
#environment ⇒ Google::Apis::BatchV1::Environment
An Environment describes a collection of environment variables to set when
executing Tasks.
Corresponds to the JSON property environment
2447 2448 2449 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2447 def environment @environment end |
#environments ⇒ Hash<String,String>
Deprecated: please use environment(non-plural) instead.
Corresponds to the JSON property environments
2452 2453 2454 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2452 def environments @environments end |
#lifecycle_policies ⇒ Array<Google::Apis::BatchV1::LifecyclePolicy>
Lifecycle management schema when any task in a task group is failed. Currently
we only support one lifecycle policy. When the lifecycle policy condition is
met, the action in the policy will execute. If task execution result does not
meet with the defined lifecycle policy, we consider it as the default policy.
Default policy means if the exit code is 0, exit task. If task ends with non-
zero exit code, retry the task with max_retry_count.
Corresponds to the JSON property lifecyclePolicies
2462 2463 2464 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2462 def lifecycle_policies @lifecycle_policies end |
#max_retry_count ⇒ Fixnum
Maximum number of retries on failures. The default, 0, which means never retry.
The valid value range is [0, 10].
Corresponds to the JSON property maxRetryCount
2468 2469 2470 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2468 def max_retry_count @max_retry_count end |
#max_run_duration ⇒ String
Maximum duration the task should run before being automatically retried (if
enabled) or automatically failed. Format the value of this field as a time
limit in seconds followed by s—for example, 3600s for 1 hour. The field
accepts any value between 0 and the maximum listed for the Duration field
type at https://protobuf.dev/reference/protobuf/google.protobuf/#duration;
however, the actual maximum run time for a job will be limited to the maximum
run time for a job listed at https://cloud.google.com/batch/quotas#max-job-
duration.
Corresponds to the JSON property maxRunDuration
2480 2481 2482 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2480 def max_run_duration @max_run_duration end |
#runnables ⇒ Array<Google::Apis::BatchV1::Runnable>
The sequence of scripts or containers to run for this Task. Each Task using
this TaskSpec executes its list of runnables in order. The Task succeeds if
all of its runnables either exit with a zero status or any that exit with a
non-zero status have the ignore_exit_status flag. Background runnables are
killed automatically (if they have not already exited) a short time after all
foreground runnables have completed. Even though this is likely to result in a
non-zero exit status for the background runnable, these automatic kills are
not treated as Task failures.
Corresponds to the JSON property runnables
2492 2493 2494 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2492 def runnables @runnables end |
#volumes ⇒ Array<Google::Apis::BatchV1::Volume>
Volumes to mount before running Tasks using this TaskSpec.
Corresponds to the JSON property volumes
2497 2498 2499 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2497 def volumes @volumes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 |
# File 'lib/google/apis/batch_v1/classes.rb', line 2504 def update!(**args) @compute_resource = args[:compute_resource] if args.key?(:compute_resource) @environment = args[:environment] if args.key?(:environment) @environments = args[:environments] if args.key?(:environments) @lifecycle_policies = args[:lifecycle_policies] if args.key?(:lifecycle_policies) @max_retry_count = args[:max_retry_count] if args.key?(:max_retry_count) @max_run_duration = args[:max_run_duration] if args.key?(:max_run_duration) @runnables = args[:runnables] if args.key?(:runnables) @volumes = args[:volumes] if args.key?(:volumes) end |