【发布时间】:2013-05-29 08:58:56
【问题描述】:
我们的 azure 构建存在问题,因此只有在 csdef 文件的 WebRole/Contents/Content/SourceDirectory 部分中使用绝对路径时才能使其正常工作。虽然它确实支持相对路径(包括'..')和环境变量(!在 SET 中是的),但问题是我们无法获得任何非绝对路径来成功构建,因为 .csdef 文件似乎被“验证”了两次:一次它在打包之前位于项目目录中,然后再次移动到 /bin 文件夹。显然,如果我们从两个不同的地方开始,没有一个相对路径能够解析到相同的内容目录!您可以做的是为两个构建步骤阶段中的一个阶段设置正确的路径......但随后它将在另一个阶段失败。违规目标是调用 ValidateServiceFiles 任务的 PreValidateServiceModel。
为了使我的项目使用相对路径构建,我需要禁用 PreValidateServiceModel 目标。包装似乎可以工作,尽管我担心跳过目标会错过一些重要的过程(除了显而易见的......服务文件没有经过验证!)。也就是说 .csdef 文件仍然是“经过验证的”,因为它必须被解析才能创建包。
【问题讨论】: