即使作业在后台执行,AWS System Manager 上的 Azure Release Pipeline 任务也会成功
Azure Release Pipeline task on AWS System Manger succeeds even when the job is in execution in background
我在 Azure 上安装了 AWS-Toolkit 扩展。在 Azure 发布管道中,我配置了 System Manager 运行 Command 任务以在 ec2 实例上执行 python 脚本。问题是,一旦 SSM - 运行 命令任务被触发,它就会给出 "succeess" 状态(在 1 秒内)并继续执行下一个任务在舞台上。但是,该作业仍在 ec2-instance 上执行。
我想知道我应该如何让 azure 管道任务等到执行真正结束,然后提供它执行的脚本的适当状态。
对于 AWS SSM 控制台上的相同调用,它显示作业(脚本)正在执行中。
这是天蓝色管道的问题吗?我其余的 AWS 任务似乎在 Azure 管道中运行良好。
注意: 管道任务已根据需要正确配置(因为它正在做它应该做的事情)。唯一的问题是这个任务应该等到作业完成。
编辑 1:
添加在管道中执行的任务以更加清晰:
- 使用 Terraform 启动 EC2
- 从 repo 获取代码并发布它(使用 Publish Artifact 任务)
- 存档(创建 zip)然后上传到 S3
- 使用 AWS CodeDeploy 服务从 S3 获取代码,"Install" 它在启动的 EC2 上,然后 运行 使用 CodeDeploy Hooks 的一些 "After-Install" 脚本。
- 通过 SSM 执行另一个脚本(因为它可能需要数小时才能完成,因此无法通过最大超时为 3600 的 CodeDeploy Hooks 执行)
- 脚本执行完成后,使用 terraform destroy 终止实例。
Azure Release Pipeline task on AWS System Manger succeeds even when
the job is in execution in background. Is this an issue with azure pipeline?
Azure 管道没有问题。尝试使用官方 CMD task 来 运行 您的 python 脚本。官方的CMD任务不会显示Success
状态,除非脚本执行成功且没有错误。 (您的预期行为。)
反而我觉得是第三方任务本身的问题。 Azure Devops支持developing custom extensions,如果遇到任务本身的问题,应该尝试联系第三方扩展的作者。
您可以尝试通过与该任务相关的问题 here. And here's one open issue 联系他们,这与您遇到的行为类似。我建议您在那里跟踪问题,并要求对该功能请求进行任何更新。
我在 Azure 上安装了 AWS-Toolkit 扩展。在 Azure 发布管道中,我配置了 System Manager 运行 Command 任务以在 ec2 实例上执行 python 脚本。问题是,一旦 SSM - 运行 命令任务被触发,它就会给出 "succeess" 状态(在 1 秒内)并继续执行下一个任务在舞台上。但是,该作业仍在 ec2-instance 上执行。
我想知道我应该如何让 azure 管道任务等到执行真正结束,然后提供它执行的脚本的适当状态。
对于 AWS SSM 控制台上的相同调用,它显示作业(脚本)正在执行中。 这是天蓝色管道的问题吗?我其余的 AWS 任务似乎在 Azure 管道中运行良好。
注意: 管道任务已根据需要正确配置(因为它正在做它应该做的事情)。唯一的问题是这个任务应该等到作业完成。
编辑 1: 添加在管道中执行的任务以更加清晰:
- 使用 Terraform 启动 EC2
- 从 repo 获取代码并发布它(使用 Publish Artifact 任务)
- 存档(创建 zip)然后上传到 S3
- 使用 AWS CodeDeploy 服务从 S3 获取代码,"Install" 它在启动的 EC2 上,然后 运行 使用 CodeDeploy Hooks 的一些 "After-Install" 脚本。
- 通过 SSM 执行另一个脚本(因为它可能需要数小时才能完成,因此无法通过最大超时为 3600 的 CodeDeploy Hooks 执行)
- 脚本执行完成后,使用 terraform destroy 终止实例。
Azure Release Pipeline task on AWS System Manger succeeds even when the job is in execution in background. Is this an issue with azure pipeline?
Azure 管道没有问题。尝试使用官方 CMD task 来 运行 您的 python 脚本。官方的CMD任务不会显示Success
状态,除非脚本执行成功且没有错误。 (您的预期行为。)
反而我觉得是第三方任务本身的问题。 Azure Devops支持developing custom extensions,如果遇到任务本身的问题,应该尝试联系第三方扩展的作者。
您可以尝试通过与该任务相关的问题 here. And here's one open issue 联系他们,这与您遇到的行为类似。我建议您在那里跟踪问题,并要求对该功能请求进行任何更新。