开发者

MSBUILD - block until a file exists on an ftp server?

开发者 https://www.devze.com 2023-04-06 23:16 出处:网络
As part of a build process 开发者_如何学运维.. I would like to block the build until a file gets created (exists) remotely at an ftp location, after which I would continue the build. (Preferably with

As part of a build process 开发者_如何学运维.. I would like to block the build until a file gets created (exists) remotely at an ftp location, after which I would continue the build. (Preferably with somekind of time out limit).

Suggestions?

Is this even possible using only the standard msbuild task and/or extensionPack/communitytask?


Your best bet is to build a small custom exe (you can even compile it as a build step) that polls for the file you are looking for. Then you use the PreBuild target, or a custom target in a pre-build step to verify that the file exists.

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Target Name="WaitOnFTP">
        <Exec Command="MyFTPWaiter.exe"/>
    </Target>
</Project>

Other more MSBuild oriented suggestions are to remake that exe as a custom task, or even an inline task in MSBuild 4.0.

FWIW, I've encountered a similar solution done by a peer who didn't want large binaries used by integration tests in version control and he required the use of a custom downloader in the build to get the files from a SMB share. It worked well enough.

Custom Tasks

Inline Tasks

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号