我正在创建一个Autosys Job,如下所示:
/* ----------------- GLB_1045_AMDGC_IntegrationAMDH_DEV ----------------- */
insert_job: GLB_1045_AMDGC_Integration_DEV job_type: CMD
command: /app/localstorage/AMDGC/Scripts/Integration_trigger.sh
machine: 1045_VM_AMDGC_APP_DEV2
owner: dgovdev
permission: gx,mx
date_conditions: 1
days_of_week: mo
start_times: "10:00"
description: "This Job is to trigger Integration workflow instance"
n_retrys: 2
std_out_file: "$LOGS_DIR/$AUTO_JOB_NAME.$AUTORUN"
std_err_file: "$LOGS_DIR/$AUTO_JOB_NAME.$AUTORUN"
max_run_alarm: 5
alarm_if_fail: 1
profile: "/app/localstorage/AMDGC/Profile/env.profile"
timezone: US/Eastern
我想参数化机器名称,以便JIL从env.profile文件中读取它类似于:
machine: ${machine_name}
其中machine_name
属性存在于env.profile
文件中,如下所示:
machine_name=1045_VM_AMDGC_APP_DEV2
我试过但在服务器上提交JIl时遇到错误。
可能无法从配置文件中获取计算机名称,因为在从autosys定义执行command
之前,配置文件来源于计算机,即machine
是读取profile
文件的先决条件。
您可以在machine
属性中使用机器选择器脚本。但这不是推荐的方法,因为它在AE服务器上执行脚本时会带来安全风险。
machine: `script_that_returns_machine_name`
如果您不想在autosys定义中对机器名进行硬编码,则更好的方法是使用虚拟机。