使用 Terraform 创建用于执行 Cloud Run 作业的工作流
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
使用 Terraform 部署示例工作流。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。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,["# Create a workflow that executes a Cloud Run job using Terraform\n\nDeploys a sample workflow using Terraform.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Execute a Cloud Run job using Workflows](/workflows/docs/tutorials/execute-cloud-run-jobs)\n\nCode sample\n-----------\n\n### Terraform\n\n\nTo learn how to apply or remove a Terraform configuration, see\n[Basic Terraform commands](/docs/terraform/basic-commands).\n\n\nFor more information, see the\n[Terraform provider reference documentation](https://registry.terraform.io/providers/hashicorp/google/latest/docs).\n\n # Create a workflow\n resource \"google_workflows_workflow\" \"default\" {\n name = \"cloud-run-job-workflow\"\n region = \"us-central1\"\n description = \"Workflow that routes a Cloud Storage event and executes a Cloud Run job\"\n\n deletion_protection = false # set to \"true\" in production\n\n # Note that $$ is needed for Terraform\n source_contents = \u003c\u003cEOF\n main:\n params: [event]\n steps:\n - init:\n assign:\n - project_id: $${sys.get_env(\"GOOGLE_CLOUD_PROJECT_ID\")}\n - event_bucket: $${event.data.bucket}\n - event_file: $${event.data.name}\n - target_bucket: \"${google_storage_bucket.default.name}\"\n - job_name: parallel-job\n - job_location: us-central1\n - check_input_file:\n switch:\n - condition: $${event_bucket == target_bucket}\n next: run_job\n - condition: true\n next: end\n - run_job:\n call: googleapis.run.v1.namespaces.jobs.run\n args:\n name: $${\"namespaces/\" + project_id + \"/jobs/\" + job_name}\n location: $${job_location}\n body:\n overrides:\n containerOverrides:\n env:\n - name: INPUT_BUCKET\n value: $${event_bucket}\n - name: INPUT_FILE\n value: $${event_file}\n result: job_execution\n - finish:\n return: $${job_execution}\n EOF\n }\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)."]]