Class: Google::Apis::CloudschedulerV1beta1::Job
- Inherits:
-
Object
- Object
- Google::Apis::CloudschedulerV1beta1::Job
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/cloudscheduler_v1beta1/classes.rb,
lib/google/apis/cloudscheduler_v1beta1/representations.rb,
lib/google/apis/cloudscheduler_v1beta1/representations.rb
Overview
Configuration for a job. The maximum allowed size for a job is 1MB.
Instance Attribute Summary collapse
-
#app_engine_http_target ⇒ Google::Apis::CloudschedulerV1beta1::AppEngineHttpTarget
App Engine target.
-
#attempt_deadline ⇒ String
The deadline for job attempts.
-
#description ⇒ String
Optionally caller-specified in CreateJob or UpdateJob.
-
#http_target ⇒ Google::Apis::CloudschedulerV1beta1::HttpTarget
Http target.
-
#last_attempt_time ⇒ String
Output only.
-
#legacy_app_engine_cron ⇒ Boolean
(also: #legacy_app_engine_cron?)
Immutable.
-
#name ⇒ String
Optionally caller-specified in CreateJob, after which it becomes output only.
-
#pubsub_target ⇒ Google::Apis::CloudschedulerV1beta1::PubsubTarget
Pub/Sub target.
-
#retry_config ⇒ Google::Apis::CloudschedulerV1beta1::RetryConfig
Settings that determine the retry behavior.
-
#schedule ⇒ String
Required, except when used with UpdateJob.
-
#schedule_time ⇒ String
Output only.
-
#state ⇒ String
Output only.
-
#status ⇒ Google::Apis::CloudschedulerV1beta1::Status
The
Status
type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. -
#time_zone ⇒ String
Specifies the time zone to be used in interpreting schedule.
-
#user_update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Job
constructor
A new instance of Job.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Job
Returns a new instance of Job.
424 425 426 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 424 def initialize(**args) update!(**args) end |
Instance Attribute Details
#app_engine_http_target ⇒ Google::Apis::CloudschedulerV1beta1::AppEngineHttpTarget
App Engine target. The job will be pushed to a job handler by means of an HTTP
request via an http_method such as HTTP POST, HTTP GET, etc. The job is
acknowledged by means of an HTTP response code in the range [200 - 299]. Error
503 is considered an App Engine system error instead of an application error.
Requests returning error 503 will be retried regardless of retry configuration
and not counted against retry counts. Any other response code, or a failure to
receive a response before the deadline, constitutes a failed attempt.
Corresponds to the JSON property appEngineHttpTarget
292 293 294 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 292 def app_engine_http_target @app_engine_http_target end |
#attempt_deadline ⇒ String
The deadline for job attempts. If the request handler does not respond by this
deadline then the request is cancelled and the attempt is marked as a
DEADLINE_EXCEEDED
failure. The failed attempt can be viewed in execution logs.
Cloud Scheduler will retry the job according to the RetryConfig. The default
and the allowed values depend on the type of target: * For HTTP targets, the
default is 3 minutes. The deadline must be in the interval [15 seconds, 30
minutes]. * For App Engine HTTP targets, 0 indicates that the request has the
default deadline. The default deadline depends on the scaling type of the
service: 10 minutes for standard apps with automatic scaling, 24 hours for
standard apps with manual and basic scaling, and 60 minutes for flex apps. If
the request deadline is set, it must be in the interval [15 seconds, 24 hours
15 seconds]. * For Pub/Sub targets, this field is ignored.
Corresponds to the JSON property attemptDeadline
308 309 310 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 308 def attempt_deadline @attempt_deadline end |
#description ⇒ String
Optionally caller-specified in CreateJob or UpdateJob. A human-readable
description for the job. This string must not contain more than 500 characters.
Corresponds to the JSON property description
314 315 316 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 314 def description @description end |
#http_target ⇒ Google::Apis::CloudschedulerV1beta1::HttpTarget
Http target. The job will be pushed to the job handler by means of an HTTP
request via an http_method such as HTTP POST, HTTP GET, etc. The job is
acknowledged by means of an HTTP response code in the range [200 - 299]. A
failure to receive a response constitutes a failed execution. For a redirected
request, the response returned by the redirected request is considered.
Corresponds to the JSON property httpTarget
323 324 325 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 323 def http_target @http_target end |
#last_attempt_time ⇒ String
Output only. The time the last job attempt started.
Corresponds to the JSON property lastAttemptTime
328 329 330 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 328 def last_attempt_time @last_attempt_time end |
#legacy_app_engine_cron ⇒ Boolean Also known as: legacy_app_engine_cron?
Immutable. This field is used to manage the legacy App Engine Cron jobs using
the Cloud Scheduler API. If the field is set to true, the job will be
considered a legacy job. Note that App Engine Cron jobs have fewer features
than Cloud Scheduler jobs, e.g., are only limited to App Engine targets.
Corresponds to the JSON property legacyAppEngineCron
336 337 338 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 336 def legacy_app_engine_cron @legacy_app_engine_cron end |
#name ⇒ String
Optionally caller-specified in CreateJob, after which it becomes output only.
The job name. For example: projects/PROJECT_ID/locations/LOCATION_ID/jobs/
JOB_ID
. * PROJECT_ID
can contain letters ([A-Za-z]), numbers ([0-9]),
hyphens (-), colons (:), or periods (.). For more information, see
Identifying projects * LOCATION_ID
is the canonical ID
for the job's location. The list of available locations can be obtained by
calling ListLocations. For more information, see https://cloud.google.com/
about/locations/. * JOB_ID
can contain only letters ([A-Za-z]), numbers ([0-
9]), hyphens (-), or underscores (_). The maximum length is 500 characters.
Corresponds to the JSON property name
351 352 353 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 351 def name @name end |
#pubsub_target ⇒ Google::Apis::CloudschedulerV1beta1::PubsubTarget
Pub/Sub target. The job will be delivered by publishing a message to the given
Pub/Sub topic.
Corresponds to the JSON property pubsubTarget
357 358 359 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 357 def pubsub_target @pubsub_target end |
#retry_config ⇒ Google::Apis::CloudschedulerV1beta1::RetryConfig
Settings that determine the retry behavior. By default, if a job does not
complete successfully (meaning that an acknowledgement is not received from
the handler, then it will be retried with exponential backoff according to the
settings in RetryConfig.
Corresponds to the JSON property retryConfig
365 366 367 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 365 def retry_config @retry_config end |
#schedule ⇒ String
Required, except when used with UpdateJob. Describes the schedule on which the
job will be executed. The schedule can be either of the following types: *
Crontab * English-like schedule As a
general rule, execution n + 1
of a job will not begin until execution n
has finished. Cloud Scheduler will never allow two simultaneously outstanding
executions. For example, this implies that if the n+1
th execution is
scheduled to run at 16:00 but the n
th execution takes until 16:15, the n+1
th execution will not start until 16:15
. A scheduled start time will be
delayed if the previous execution has not ended when its scheduled time occurs.
If retry_count > 0 and a job attempt fails, the job will be tried a total of
retry_count times, with exponential backoff, until the next scheduled start
time. If retry_count is 0, a job attempt will not be retried if it fails.
Instead the Cloud Scheduler system will wait for the next scheduled execution
time. Setting retry_count to 0 does not prevent failed jobs from running
according to schedule after the failure.
Corresponds to the JSON property schedule
385 386 387 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 385 def schedule @schedule end |
#schedule_time ⇒ String
Output only. The next time the job is scheduled. Note that this may be a retry
of a previously failed attempt or the next execution time according to the
schedule.
Corresponds to the JSON property scheduleTime
392 393 394 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 392 def schedule_time @schedule_time end |
#state ⇒ String
Output only. State of the job.
Corresponds to the JSON property state
397 398 399 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 397 def state @state end |
#status ⇒ Google::Apis::CloudschedulerV1beta1::Status
The Status
type defines a logical error model that is suitable for different
programming environments, including REST APIs and RPC APIs. It is used by
gRPC. Each Status
message contains three pieces of
data: error code, error message, and error details. You can find out more
about this error model and how to work with it in the API Design Guide.
Corresponds to the JSON property status
407 408 409 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 407 def status @status end |
#time_zone ⇒ String
Specifies the time zone to be used in interpreting schedule. The value of this
field must be a time zone name from the tz database. Note that some time zones include a provision for daylight
savings time. The rules for daylight saving time are determined by the chosen
tz. For UTC use the string "utc". If a time zone is not specified, the default
will be in UTC (also known as GMT).
Corresponds to the JSON property timeZone
417 418 419 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 417 def time_zone @time_zone end |
#user_update_time ⇒ String
Output only. The creation time of the job.
Corresponds to the JSON property userUpdateTime
422 423 424 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 422 def user_update_time @user_update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 |
# File 'lib/google/apis/cloudscheduler_v1beta1/classes.rb', line 429 def update!(**args) @app_engine_http_target = args[:app_engine_http_target] if args.key?(:app_engine_http_target) @attempt_deadline = args[:attempt_deadline] if args.key?(:attempt_deadline) @description = args[:description] if args.key?(:description) @http_target = args[:http_target] if args.key?(:http_target) @last_attempt_time = args[:last_attempt_time] if args.key?(:last_attempt_time) @legacy_app_engine_cron = args[:legacy_app_engine_cron] if args.key?(:legacy_app_engine_cron) @name = args[:name] if args.key?(:name) @pubsub_target = args[:pubsub_target] if args.key?(:pubsub_target) @retry_config = args[:retry_config] if args.key?(:retry_config) @schedule = args[:schedule] if args.key?(:schedule) @schedule_time = args[:schedule_time] if args.key?(:schedule_time) @state = args[:state] if args.key?(:state) @status = args[:status] if args.key?(:status) @time_zone = args[:time_zone] if args.key?(:time_zone) @user_update_time = args[:user_update_time] if args.key?(:user_update_time) end |