windows - 天蓝色管道“命令行”代理作业是否从上一个作业继承工作目录?
问题描述
我对 azure pipelines 代理工作的理解是:
- 每个工作都是独立的
- 并且每个“命令行”作业都在其自己的上下文中运行,具有独立的范围。
但是,如果未设置 azure 管道“命令行”的工作目录,则默认为之前“命令行”代理作业的工作目录。
解决方案
在我回答这个问题之前,我想确保术语是清楚的:
管道是 ci cd 流程的总体定义,它们可以包含多个阶段。
阶段是管道的阶段,例如构建、测试、部署......它们可以包含多个作业。
作业是实施您的流程所需的任务/步骤的集合。它们包含一个或多个任务/步骤。
任务或步骤是正在执行的实际操作,例如“执行此命令”“构建该 dotnet 项目”...
在每个作业之间重置环境(意味着将使用新的虚拟机,再次拉取资源等)。在属于同一作业的每个任务或步骤之间,您将保持相同的环境,并且每个任务将从之前的结果“受益”(文件更改,环境变量......)。
在工作目录方面,它们都默认为 build.workingDirectory(请参阅 azure devops 默认变量)。如果您将一项任务的工作目录设置为不同的目录,则不会影响其他任务。
推荐阅读
- python - 如何在字典中获取匹配子字符串键并在 Python 上返回相应的值?
- github - 如何从没有行号的github复制代码?
- node.js - 如何将 MongoDB 查询从 Node.js 驱动程序格式调整为 Mongoose 格式
- spring - 每个线程环境的上下文中单例范围的 Spring Bean 的线程安全
- insert - couchbase upsert/insert 以 ttl 静默失败
- database - 在不同服务器上安装 Pimcore 数据库
- android - 使用 itemtouchhelper 在另一个回收器视图的项目中使用回收器视图
- ceph - 执行命令失败:env DEBIAN_FRONTEND=noninteractive DEBIAN_PRIORITY=critical apt-get --assume-yes -q update
- python - sublime 3 中的自定义语法
- java - 无需重新编译和重建应用程序即可更改 Hibernate xml 映射文件