Pub/Sub のコネクタ
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
ワークフロー内の Pub/Sub へのアクセスに使用される組み込み関数を定義するワークフロー コネクタ。
もっと見る
このコードサンプルを含む詳細なドキュメントについては、以下をご覧ください。
コードサンプル
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],[],[],[],null,["# Connector for Pub/Sub\n\nWorkflows connector that defines the built-in function used to access Pub/Sub within a workflow.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Cloud Pub/Sub API Connector Overview](/workflows/docs/reference/googleapis/pubsub/Overview)\n\nCode sample\n-----------\n\n### YAML\n\n # This workflow demonstrates how to use the Cloud Pub/Sub connector:\n # Create a Pub/Sub topic and a subscription to that topic\n # Publish a message to the topic and pull the message from the subscription\n # Delete both the subscription and the topic\n # Expected output: \"SUCCESS\"\n - init:\n assign:\n - project: ${sys.get_env(\"GOOGLE_CLOUD_PROJECT_ID\")}\n - topic: \"TOPIC_ID\" # replace TOPIC_ID placeholder\n - subscription: \"SUBSCRIPTION_ID\" # replace SUBSCRIPTION_ID placeholder\n - message: {\"hello\": \"world\"}\n - base64Msg: ${base64.encode(json.encode(message))} # encodes bytes to Base64 text\n - create_topic:\n call: googleapis.pubsub.v1.projects.topics.create\n args:\n name: ${\"projects/\" + project + \"/topics/\" + topic}\n - create_subscription_to_topic:\n call: googleapis.pubsub.v1.projects.subscriptions.create\n args:\n name: ${\"projects/\" + project + \"/subscriptions/\" + subscription}\n body:\n name: ${\"projects/\" + project + \"/subscriptions/\" + subscription}\n topic: ${\"projects/\" + project + \"/topics/\" + topic}\n - publish_message_to_topic:\n call: googleapis.pubsub.v1.projects.topics.publish\n args:\n topic: ${\"projects/\" + project + \"/topics/\" + topic}\n body:\n messages:\n - data: ${base64Msg}\n - pull_message:\n call: googleapis.pubsub.v1.projects.subscriptions.pull\n args:\n subscription: ${\"projects/\" + project + \"/subscriptions/\" + subscription}\n body:\n maxMessages: 1\n result: m\n - check_message:\n switch:\n - condition: ${m.receivedMessages[0].message.data != base64Msg}\n next: failed\n - delete_subscription:\n call: googleapis.pubsub.v1.projects.subscriptions.delete\n args:\n subscription: ${\"projects/\" + project + \"/subscriptions/\" + subscription}\n - delete_topic:\n call: googleapis.pubsub.v1.projects.topics.delete\n args:\n topic: ${\"projects/\" + project + \"/topics/\" + topic}\n - the_end:\n return: \"SUCCESS\"\n - failed:\n raise: ${\"Received data:\" + m.receivedMessages[0].message.data + \" Expected data:\" + base64Msg}\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=workflows)."]]