Azure DevOps手动验证任务无法给多收件人发送邮件的解决办法
Azure DevOps ManualValidation任务多收件人邮件发送问题解决
问题根因
ManualValidation@0任务的notifyUsers参数要求传入邮箱列表(数组),而变量组中配置的逗号/分号分隔字符串会被识别为单个整体值,任务无法解析为多个收件人,导致邮件无法发送。
解决方案
步骤1:在流水线中引用变量组
确保流水线已正确关联你的变量组MyVariableGroup,在流水线顶部添加变量组引用:
variables: - group: MyVariableGroup
步骤2:使用表达式拆分邮箱字符串为数组
修改ManualValidation任务的notifyUsers参数,用Azure DevOps内置的split表达式将逗号分隔的邮箱字符串拆分为数组:
jobs: - job: PromptUserInput displayName: 'Manual Validation' pool: server timeoutInMinutes: 180 steps: - task: ManualValidation@0 timeoutInMinutes: 120 inputs: notifyUsers: ${{ split(variables.notifyEmails, ',') }} instructions: 'Please review' onTimeout: 'reject' displayName: 'Manual Validation Step'
注意事项
- 确保变量组中
notifyEmails的值没有多余空格,格式为邮箱1,邮箱2,邮箱3(如myemail1@gmail.com,myemail2@gmail.com) - 验证流水线是否有读取该变量组的权限(在变量组的“Pipeline permissions”中确认流水线已被授权)
- 若仍有问题,可检查单个邮箱的拼写是否正确,以及Azure DevOps邮件服务状态是否正常
内容的提问来源于stack exchange,提问作者user8295506
相关产品推荐
相关产品推荐

