Connector for Cloud Scheduler

Workflows connector that defines the built-in function used to access Cloud Scheduler within a workflow.

Explore further

For detailed documentation that includes this code sample, see the following:

Code sample

YAML

# This workflow demonstrates how to use the Cloud Scheduler connector: # Create a Pub/Sub topic and subscription for notifications # Create a Cloud Scheduler job that runs every minute and publishes # a message to the Pub/Sub topic when finished # Retrieve message from the subscription and then delete all resources # Expected output: "SUCCESS" - init:  assign:  - project_id: ${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")}  - location_id: "us-central1"  - job_id: "example-job-id"  - topic: "example-topic-id"  - subscription: "example-subscription-id" - create_topic:  call: googleapis.pubsub.v1.projects.topics.create  args:  name: ${"projects/" + project_id + "/topics/" + topic} - create_subscription_to_topic:  call: googleapis.pubsub.v1.projects.subscriptions.create  args:  name: ${"projects/" + project_id + "/subscriptions/" + subscription}  body:  name: ${"projects/" + project_id + "/subscriptions/" + subscription}  topic: ${"projects/" + project_id + "/topics/" + topic} - create_job:  call: googleapis.cloudscheduler.v1.projects.locations.jobs.create  args:  parent: ${"projects/" + project_id + "/locations/" + location_id}  body:  name: ${"projects/" + project_id + "/locations/" + location_id + "/jobs/" + job_id}  description: "An example job created by Workflows to test the Cloud Scheduler connector."  schedule: "* * * * *" # runs job every minute  pubsubTarget:  topicName: ${"projects/" + project_id + "/topics/" + topic}  attributes:  job: "finished!" - sleep:  call: sys.sleep  args:  seconds: 100 # sleeps for 100 seconds to allow job to run - pull_message:  call: googleapis.pubsub.v1.projects.subscriptions.pull  args:  subscription: ${"projects/" + project_id + "/subscriptions/" + subscription}  body:  maxMessages: 1 - delete_job:  call: googleapis.cloudscheduler.v1.projects.locations.jobs.delete  args:  name: ${"projects/" + project_id + "/locations/" + location_id + "/jobs/" + job_id} - delete_subscription:  call: googleapis.pubsub.v1.projects.subscriptions.delete  args:  subscription: ${"projects/" + project_id + "/subscriptions/" + subscription} - delete_topic:  call: googleapis.pubsub.v1.projects.topics.delete  args:  topic: ${"projects/" + project_id + "/topics/" + topic} - the_end:  return: "SUCCESS"

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.