3

我已经升级到 azure 1.7,现在我的构建过程被破坏了。我有一个在构建之后运行的脚本,它简单地触发 cspack,如下所示。

cspack "C:\Users\MyAppBuild\.hudson\jobs\MyApp Portal Build\workspace\trunk\Portal\SMEEDI.Cloud\ServiceDefinition.csdef"   
/role:MyApp.Portal;"C:\Users\MyAppBuild\.hudson\jobs\MyApp Portal Build\workspace\trunk\Portal\Portal\MyApp.Portal\bin"   
/sites:"C:\Users\MyAppBuild\.hudson\jobs\MyApp Portal Build\workspace\trunk\Portal\Portal\MyApp.Portal\bin";"MyApp.Portal"   
/out:"C:\Users\MyAppBuild\.hudson\jobs\MyApp Portal Build\MyApp.Cloud.cspkg

这是我的服务定义:

<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="MyApp.Cloud" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition" schemaVersion="2012-05.1.7">
<WebRole name="MyApp.Portal" enableNativeCodeExecution="true">
<ConfigurationSettings>
  <Setting name="DiagnosticsConnectionString" />
  <Setting name="DataConnectionString" />
  <Setting name="BaseUrl" />
  <Setting name="DatabaseConnectionString" />
  <Setting name="Environment" />
</ConfigurationSettings>
<Sites>
  <Site name="MyApp_WebRole" physicalDirectory="..\Portal\MyApp.Portal">
    <Bindings>
      <Binding name="HttpIn" endpointName="HttpIn" />
    </Bindings>
  </Site>
</Sites>
<Endpoints>
  <InputEndpoint name="HttpIn" protocol="http" port="80" />
</Endpoints>
<Imports>
  <Import moduleName="RemoteAccess" />
  <Import moduleName="RemoteForwarder" />
</Imports>

我得到错误:

Error: CloudServices7 : The physical directories are not valid for role /sites:C
:\Users\MyAppBuild\.hudson\jobs\MyApp Portal Build\workspace\trunk\Portal\Port
al\MyApp.Portal\bin;MyApp.Portal sites, virtual directories, and virtual appli
cations..

物理目录应该是什么?

4

1 回答 1

0

您可能需要使用相对路径而不是绝对路径。请参考这里

将在 csdef 中具有相对路径的项目(如此处的情况)升级到 1.8 SDK 时,您应该在升级日志中看到以下有关相对路径更改的警告。进行此特定更改是为了更好地支持并行构建。

Site 元素的physicalDirectory 属性包含一个相对路径。此路径相对于打包时目标服务定义文件所在的目录。在以前的版本中,此文件位于根项目目录中。在此版本中,默认情况下,此文件位于项目输出目录中。您可能需要更新相对路径以反映目标服务定义文件的新位置。

于 2016-08-12T04:24:53.407 回答