【问题标题】:Retrieve publish information after MSDeployPublish在 MSDeployPublish 之后检索发布信息
【发布时间】:2015-11-19 04:08:13
【问题描述】:

为了向 Rollbar 发布部署通知,我需要提供一个环境。我有多个发布配置文件设置,以便我可以部署到各种开发、测试和生产环境。是否有可以用来从发布配置文件访问配置文件/DeployIisAppPath 的属性或命令?

我有以下目标设置:

  <Target Name="NotifyRollbarOfDeploy" AfterTargets="MSDeployPublish">
    <Exec Command="git log -1 --format=%%H" ConsoleToMSBuild="true" EchoOff="true" WorkingDirectory="$(ProjectDir)\..">
      <Output TaskParameter="ConsoleOutput" PropertyName="GitSHA" />
    </Exec>

    <Exec Command="git config user.email" ConsoleToMSBuild="true" EchoOff="true" WorkingDirectory="$(ProjectDir)\..">
      <Output TaskParameter="ConsoleOutput" PropertyName="GitEmail" />
    </Exec>

    <Exec Command="@powershell -NoProfile -ExecutionPolicy unrestricted -Command &quot;(new-object net.webclient).UploadString('https://api.rollbar.com/api/1/deploy/', 'access_token=REDACTED&amp;environment=@(dev|test|production)&amp;revision=$(GitSHA)&amp;local_username=$(GitEmail)')&quot;" EchoOff="true" />
</Target>

我如何在此处为环境提供值?

【问题讨论】:

    标签: c# web msbuild visual-studio-2015 web-deployment


    【解决方案1】:

    我的解决方法相当难看。我没有尝试从目标检索信息,而是决定使用 Rollbar 为 RollbarSharp 建议的 sn-p。我需要添加三个构建配置:在我的例子中是 dev、test 和 prod,并连接我的发布配置文件以使用这些构建配置。然后我为每个构建配置添加了 web.config 转换,指定了实际的滚动条环境设置应该是什么。

    变换部分看起来像

      <appSettings>
        <add
          key="Rollbar.Environment"
          value="development"
          xdt:Transform="Replace"
          xdt:Locator="Match(key)"/>
      </appSettings>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-07
      • 2020-02-17
      • 2010-12-31
      • 1970-01-01
      • 1970-01-01
      • 2017-09-18
      • 2016-05-15
      相关资源
      最近更新 更多