代码之家  ›  专栏  ›  技术社区  ›  Rover

teamcity+msbuild:具有访问权限的部署

  •  2
  • Rover  · 技术社区  · 15 年前

    需要编写将网站部署到共享目录的脚本。但要访问此目录,需要输入登录名/密码。我该怎么做?

    msbuild config的一部分:

     <PropertyGroup Condition="'$(SERVER)'=='DEV'">
        <DeploymentFolder>\\server\dir$</DeploymentFolder>
          <CopyConfig>dev.web.config</CopyConfig>
          <ZipFile>webSite.zip</ZipFile>
      </PropertyGroup>
    

    在哪里以及如何指定允许TeamCity将网站部署到所选目录的登录名和密码?

    P.S.I不能使用部署时应使用的相同访问权限运行TeamCity。

    2 回复  |  直到 15 年前
        1
  •  4
  •   Petter Wigle    15 年前

    您可以使用dos“net use”-命令将远程服务器目录映射到驱动器号,如本例中所示:

    <Exec Command="net use Q: \\server\dir your-password /USER:your-username"/>
    <Copy SourceFiles="@(YourDeploymentFiles)" DestinationFolder="Q:\%(RecursiveDir)" />
    <Exec Command="net use Q: /delete"/>
    
        2
  •  1
  •   Noffls    15 年前

    在正确的帐户下运行的其他生成代理怎么样?

    另一个想法可能是编写一个对指定目录执行操作的msbuild任务。在这个任务中,您可以使用正确的凭证。

    ==编辑===

    还有一个想法:编写一个执行 msbuild 有正确的证件。不要使用teamcity中的msbuild runner,而是使用命令行runner并执行包装工具

    推荐文章