Class: Google::Apis::CloudschedulerV1beta1::Job

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

Overview

Configuration for a job. The maximum allowed size for a job is 100KB.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Job

Returns a new instance of Job



469
470
471
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 469

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

Instance Attribute Details

#app_engine_http_targetGoogle::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



321
322
323
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 321

def app_engine_http_target
  @app_engine_http_target
end

#descriptionString

A human-readable description for the job. This string must not contain more than 500 characters. Corresponds to the JSON property description

Returns:

  • (String)


327
328
329
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 327

def description
  @description
end

#http_targetGoogle::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



337
338
339
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 337

def http_target
  @http_target
end

#last_attempt_timeString

Output only. The time the last job attempt started. Corresponds to the JSON property lastAttemptTime

Returns:

  • (String)


342
343
344
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 342

def last_attempt_time
  @last_attempt_time
end

#nameString

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

Returns:

  • (String)


359
360
361
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 359

def name
  @name
end

#pubsub_targetGoogle::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



365
366
367
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 365

def pubsub_target
  @pubsub_target
end

#retry_configGoogle::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



373
374
375
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 373

def retry_config
  @retry_config
end

#scheduleString

Required. Describes the schedule on which the job will be executed. 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+1th execution is scheduled to run at 16:00 but the nth execution takes until 16:15, the n+1th 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. The schedule can be either of the following types:

Returns:

  • (String)


395
396
397
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 395

def schedule
  @schedule
end

#schedule_timeString

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

Returns:

  • (String)


402
403
404
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 402

def schedule_time
  @schedule_time
end

#stateString

Output only. State of the job. Corresponds to the JSON property state

Returns:

  • (String)


407
408
409
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 407

def state
  @state
end

#statusGoogle::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. The error model is designed to be:

  • Simple to use and understand for most users
  • Flexible enough to meet unexpected needs # Overview The Status message contains three pieces of data: error code, error message, and error details. The error code should be an enum value of google.rpc.Code, but it may accept additional error codes if needed. The error message should be a developer-facing English message that helps developers understand and resolve the error. If a localized user-facing error message is needed, put the localized message in the error details or localize it in the client. The optional error details may contain arbitrary information about the error. There is a predefined set of error detail types in the package google.rpc that can be used for common error conditions. # Language mapping The Status message is the logical representation of the error model, but it is not necessarily the actual wire format. When the Status message is exposed in different client libraries and different wire protocols, it can be mapped differently. For example, it will likely be mapped to some exceptions in Java, but more likely mapped to some error codes in C. # Other uses The error model and the Status message can be used in a variety of environments, either with or without APIs, to provide a consistent developer experience across different environments. Example uses of this error model include:
  • Partial errors. If a service needs to return partial errors to the client, it may embed the Status in the normal response to indicate the partial errors.
  • Workflow errors. A typical workflow has multiple steps. Each step may have a Status message for error reporting.
  • Batch operations. If a client uses batch request and batch response, the Status message should be used directly inside batch response, one for each error sub-response.
  • Asynchronous operations. If an API call embeds asynchronous operation results in its response, the status of those operations should be represented directly using the Status message.
  • Logging. If some API errors are stored in logs, the message Status could be used directly after any stripping needed for security/privacy reasons. Corresponds to the JSON property status


450
451
452
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 450

def status
  @status
end

#time_zoneString

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

Returns:

  • (String)


462
463
464
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 462

def time_zone
  @time_zone
end

#user_update_timeString

Output only. The creation time of the job. Corresponds to the JSON property userUpdateTime

Returns:

  • (String)


467
468
469
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 467

def user_update_time
  @user_update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
# File 'generated/google/apis/cloudscheduler_v1beta1/classes.rb', line 474

def update!(**args)
  @app_engine_http_target = args[:app_engine_http_target] if args.key?(:app_engine_http_target)
  @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)
  @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