Skip to main content

jobs

Creates, updates, deletes, gets or lists a jobs resource.

Overview

Namejobs
TypeResource
Idgoogle.run.jobs

Fields

NameDatatypeDescription
namestringThe fully qualified name of this Job. Format: projects/{project}/locations/{location}/jobs/{job}
annotationsobjectUnstructured key value map that may be set by external tools to store and arbitrary metadata. They are not queryable and should be preserved when modifying objects. Cloud Run API v2 does not support annotations with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected on new resources. All system annotations in v1 now have a corresponding field in v2 Job. This field follows Kubernetes annotations' namespacing, limits, and rules.
binaryAuthorizationobjectSettings for Binary Authorization feature.
clientstringArbitrary identifier for the API client.
clientVersionstringArbitrary version identifier for the API client.
conditionsarrayOutput only. The Conditions of all other associated sub-resources. They contain additional diagnostics information in case the Job does not reach its desired state. See comments in reconciling for additional information on reconciliation process in Cloud Run.
createTimestringOutput only. The creation time.
creatorstringOutput only. Email address of the authenticated creator.
deleteTimestringOutput only. The deletion time. It is only populated as a response to a Delete request.
etagstringOutput only. A system-generated fingerprint for this version of the resource. May be used to detect modification conflict during updates.
executionCountintegerOutput only. Number of executions created for this job.
expireTimestringOutput only. For a deleted resource, the time after which it will be permamently deleted.
generationstringOutput only. A number that monotonically increases every time the user modifies the desired state.
labelsobjectUnstructured key value map that can be used to organize and categorize objects. User-provided labels are shared with Google's billing system, so they can be used to filter, or break down billing charges by team, component, environment, state, etc. For more information, visit https://cloud.google.com/resource-manager/docs/creating-managing-labels or https://cloud.google.com/run/docs/configuring/labels. Cloud Run API v2 does not support labels with run.googleapis.com, cloud.googleapis.com, serving.knative.dev, or autoscaling.knative.dev namespaces, and they will be rejected. All system labels in v1 now have a corresponding field in v2 Job.
lastModifierstringOutput only. Email address of the last authenticated modifier.
latestCreatedExecutionobjectReference to an Execution. Use /Executions.GetExecution with the given name to get full execution including the latest status.
launchStagestringThe launch stage as defined by Google Cloud Platform Launch Stages. Cloud Run supports ALPHA, BETA, and GA. If no value is specified, GA is assumed. Set the launch stage to a preview stage on input to allow use of preview features in that stage. On read (or output), describes whether the resource uses preview features. For example, if ALPHA is provided as input, but only BETA and GA-level features are used, this field will be BETA on output.
observedGenerationstringOutput only. The generation of this Job. See comments in reconciling for additional information on reconciliation process in Cloud Run.
reconcilingbooleanOutput only. Returns true if the Job is currently being acted upon by the system to bring it into the desired state. When a new Job is created, or an existing one is updated, Cloud Run will asynchronously perform all necessary steps to bring the Job to the desired state. This process is called reconciliation. While reconciliation is in process, observed_generation and latest_succeeded_execution, will have transient values that might mismatch the intended state: Once reconciliation is over (and this field is false), there are two possible outcomes: reconciliation succeeded and the state matches the Job, or there was an error, and reconciliation failed. This state can be found in terminal_condition.state. If reconciliation succeeded, the following fields will match: observed_generation and generation, latest_succeeded_execution and latest_created_execution. If reconciliation failed, observed_generation and latest_succeeded_execution will have the state of the last succeeded execution or empty for newly created Job. Additional information on the failure can be found in terminal_condition and conditions.
runExecutionTokenstringA unique string used as a suffix for creating a new execution. The Job will become ready when the execution is successfully completed. The sum of job name and token length must be fewer than 63 characters.
satisfiesPzsbooleanOutput only. Reserved for future use.
startExecutionTokenstringA unique string used as a suffix creating a new execution. The Job will become ready when the execution is successfully started. The sum of job name and token length must be fewer than 63 characters.
templateobjectExecutionTemplate describes the data an execution should have when created from a template.
terminalConditionobjectDefines a status condition for a resource.
uidstringOutput only. Server assigned unique identifier for the Execution. The value is a UUID4 string and guaranteed to remain unchanged until the resource is deleted.
updateTimestringOutput only. The last-modified time.

Methods

NameAccessible byRequired ParamsDescription
getSELECTjobsId, locationsId, projectsIdGets information about a Job.
listSELECTlocationsId, projectsIdLists Jobs. Results are sorted by creation time, descending.
createINSERTlocationsId, projectsIdCreates a Job.
deleteDELETEjobsId, locationsId, projectsIdDeletes a Job.
patchUPDATEjobsId, locationsId, projectsIdUpdates a Job.
runEXECjobsId, locationsId, projectsIdTriggers creation of a new Execution of this Job.

SELECT examples

Lists Jobs. Results are sorted by creation time, descending.

SELECT
name,
annotations,
binaryAuthorization,
client,
clientVersion,
conditions,
createTime,
creator,
deleteTime,
etag,
executionCount,
expireTime,
generation,
labels,
lastModifier,
latestCreatedExecution,
launchStage,
observedGeneration,
reconciling,
runExecutionToken,
satisfiesPzs,
startExecutionToken,
template,
terminalCondition,
uid,
updateTime
FROM google.run.jobs
WHERE locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

INSERT example

Use the following StackQL query and manifest file to create a new jobs resource.

/*+ create */
INSERT INTO google.run.jobs (
locationsId,
projectsId,
name,
labels,
annotations,
client,
clientVersion,
launchStage,
binaryAuthorization,
template,
startExecutionToken,
runExecutionToken
)
SELECT
'{{ locationsId }}',
'{{ projectsId }}',
'{{ name }}',
'{{ labels }}',
'{{ annotations }}',
'{{ client }}',
'{{ clientVersion }}',
'{{ launchStage }}',
'{{ binaryAuthorization }}',
'{{ template }}',
'{{ startExecutionToken }}',
'{{ runExecutionToken }}'
;

UPDATE example

Updates a jobs resource.

/*+ update */
UPDATE google.run.jobs
SET
name = '{{ name }}',
labels = '{{ labels }}',
annotations = '{{ annotations }}',
client = '{{ client }}',
clientVersion = '{{ clientVersion }}',
launchStage = '{{ launchStage }}',
binaryAuthorization = '{{ binaryAuthorization }}',
template = '{{ template }}',
startExecutionToken = '{{ startExecutionToken }}',
runExecutionToken = '{{ runExecutionToken }}'
WHERE
jobsId = '{{ jobsId }}'
AND locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';

DELETE example

Deletes the specified jobs resource.

/*+ delete */
DELETE FROM google.run.jobs
WHERE jobsId = '{{ jobsId }}'
AND locationsId = '{{ locationsId }}'
AND projectsId = '{{ projectsId }}';