

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 任务捆绑包的参数值元素
<a name="build-job-bundle-parameters"></a>

您可以使用参数文件来设置任务模板中某些任务参数的值或任务捆绑包中的[CreateJob](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateJob.html)操作请求参数的值，这样在提交任务时就无需设置值。提交作业的用户界面允许您修改这些值。

您可以用 YAML 格式 (`parameter_values.yaml`) 或 JSON 格式 (`parameter_values.json`) 定义作业模板。本节中的示例以 YAML 格式显示。

在 YAML 中，文件的格式为：

```
parameterValues:
- name: <string>
  value: <integer>, <float>, or <string>
- name: <string>
  value: <integer>, <float>, or <string>ab
... {{repeating as necessary}}
```

`parameterValues`列表中的每个元素都必须是以下元素之一：
+ 在作业模板中定义的作业参数。
+ 在队列环境中为你提交作业的队列定义的作业参数...
+ 创建作业时传递给`CreateJob`操作的特殊参数。
  + `deadline:priority`— 该值必须为整数。它作为[优先级](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateJob.html#deadlinecloud-CreateJob-request-priority)参数传递给`CreateJob`操作。
  + `deadline:targetTaskRunStatus`— 该值必须是字符串。它作为[targetTaskRun状态](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateJob.html#deadlinecloud-CreateJob-request-targetTaskRunStatus)参数传递给`CreateJob`操作。
  + `deadline:maxFailedTasksCount`— 该值必须为整数。它作为 C [maxFailedTasksount](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateJob.html#deadlinecloud-CreateJob-request-maxFailedTasksCount) 参数传递给`CreateJob`操作。
  + `deadline:maxRetriesPerTask`— 该值必须为整数。它作为 T [maxRetriesPerask](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateJob.html#deadlinecloud-CreateJob-request-maxRetriesPerTask) 参数传递给`CreateJob`操作。
  + `deadline:maxWorkercount`— 该值必须为整数。它作为[maxWorkerCount](https://docs.aws.amazon.com/deadline-cloud/latest/APIReference/API_CreateJob.html#deadlinecloud-CreateJob-request-maxRetriesPerTask)参数传递给`CreateJob`操作。

作业模板始终是一个模板，而不是要运行的特定作业。如果某些参数在此文件中未定义值，则参数值文件使作业捆绑包可以充当模板，或者如果所有参数都有值，则可以用作特定的作业提交。

例如，[blender\_render 示例](https://github.com/aws-deadline/deadline-cloud-samples/tree/mainline/job_bundles/blender_render)没有参数文件，其作业模板定义的参数没有默认值。此模板必须用作创建作业的模板。使用此任务捆绑包创建任务后，Deadline Cloud 会将新的任务捆绑包写入作业历史记录目录。

例如，当您使用以下命令提交作业时：

```
deadline bundle gui-submit blender_render/
```

新的任务捆绑包包含一个包含指定参数的`parameter_values.yaml`文件：

```
% cat ~/.deadline/job_history/\(default\)/2024-06/2024-06-20-01-JobBundle-Demo/parameter_values.yaml
parameterValues:
- name: deadline:targetTaskRunStatus
  value: READY
- name: deadline:maxFailedTasksCount
  value: 10
- name: deadline:maxRetriesPerTask
  value: 5
- name: deadline:priority
  value: 75
- name: BlenderSceneFile
  value: /private/tmp/bundle_demo/bmw27_cpu.blend
- name: Frames
  value: 1-10
- name: OutputDir
  value: /private/tmp/bundle_demo/output
- name: OutputPattern
  value: output_####
- name: Format
  value: PNG
- name: CondaPackages
  value: blender
- name: RezPackages
  value: blender
```

您可以使用以下命令创建相同的作业：

```
deadline bundle submit ~/.deadline/job_history/\(default\)/2024-06/2024-06-20-01-JobBundle-Demo/
```

**注意**  
您提交的任务包将保存到您的作业历史记录目录中。你可以使用以下命令找到该目录的位置：  

```
deadline config get settings.job_history_dir
```