TFS 以编程方式获取构建代理工作文件夹
TFS get build agent working folder programmatically
有什么方法可以以编程方式检索构建代理的工作文件夹(通过 TFS REST API)?
我想在构建代理重新启动期间清理此文件夹。
没有 REST API 来检索构建代理的工作文件夹。
工作文件夹是在部署构建代理时定义的。通常它应该是这样的 D:\VSOAgent_work (您部署代理的位置)。
要在构建代理重启期间清理文件夹,您只需要创建一个 .cmd/.bat 文件来删除 _work 目录,并将其复制到 启动 文件夹中 Windows 资源管理器。
请注意,您需要运行 cmd/bat 与管理员联系。
删除命令示例:(只需相应更改dir,该命令将删除所有文件和子文件夹,但不会删除目录_work)
@ECHO OFF
Set dir=D:\VSOAgent\_work\
Echo Deleting all files from %dir%
del %dir%\* /F /Q
Echo Deleting all folders from %dir%
for /d %%p in (%dir%\*) Do rd /Q /S "%%p"
@echo Folder deleted.
exit
找到启动文件夹:
对于您的用户帐户:Win + R 运行 shell:startup
对于所有用户 Win + R 运行 shell:common startup
如何以管理员身份自动启动程序,可以参考这篇文章:
http://www.thewindowsclub.com/autostart-programs-windows-10-make
有什么方法可以以编程方式检索构建代理的工作文件夹(通过 TFS REST API)?
我想在构建代理重新启动期间清理此文件夹。
没有 REST API 来检索构建代理的工作文件夹。
工作文件夹是在部署构建代理时定义的。通常它应该是这样的 D:\VSOAgent_work (您部署代理的位置)。
要在构建代理重启期间清理文件夹,您只需要创建一个 .cmd/.bat 文件来删除 _work 目录,并将其复制到 启动 文件夹中 Windows 资源管理器。
请注意,您需要运行 cmd/bat 与管理员联系。
删除命令示例:(只需相应更改dir,该命令将删除所有文件和子文件夹,但不会删除目录_work)
@ECHO OFF
Set dir=D:\VSOAgent\_work\
Echo Deleting all files from %dir%
del %dir%\* /F /Q
Echo Deleting all folders from %dir%
for /d %%p in (%dir%\*) Do rd /Q /S "%%p"
@echo Folder deleted.
exit
找到启动文件夹:
对于您的用户帐户:Win + R 运行 shell:startup
对于所有用户 Win + R 运行 shell:common startup
如何以管理员身份自动启动程序,可以参考这篇文章: http://www.thewindowsclub.com/autostart-programs-windows-10-make