0

WebRole Azureプロジェクトがあり、ソリューションのビルドが成功するたびにTFSビルドサーバーでパッケージを生成することを計画しています。

以下は私の解決策の簡単な説明です。

  1. ウェブアプリケーション。
  2. TDD方法論が開発に続きました。
  3. 1つのWebロール。
  4. 2つの構成(クラウドとローカル)
  5. ACSベースの検証。

Visual Studioから、PACKAGEコマンドを使用してパッケージを作成しています。

PACKAGEコマンドを実行しているときに、次を選択します。

  1. サービス構成:クラウド。
  2. ビルドコンギファレーション:リリース。
  3. チェック済み:リモートデスクトップを有効にします。

Visual Studioで使用されているのと同じ設定を使用して、TFSビルドサーバーでパッケージを作成するプロセスは何ですか?

どんな助けでも大歓迎です。

4

2 に答える 2

1

そのために msbuild CorePublish ターゲットを使用できます。(たとえば、このブログ投稿を参照)

セキュリティのベスト プラクティスとして、リモート デスクトップはソース ツリーで有効になっていますが、実際の証明書、リモート デスクトップの設定はそこにはなく、展開中に構成を変更することによって追加されます。ビルド構成は期待どおりに動作し、ServiceConfiguration フレーバーは最終的に個別の cscfg ファイルになります。

于 2012-04-09T15:20:03.930 に答える
1

.ccproj を含むすべてのプロジェクトに含まれる Common.Targets があります。それは持っています:

<Import Project=".\AzurePackages.Targets" Condition=" '$(CloudToolsVersion)' != '' And '$(BuildingInsideVisualStudio)' != 'true'"/>

AzurePackages.Targets (少し編集):

<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
  <!-- Create Azure packages -->
  <PackageName>$(AssemblyName).cspkg</PackageName>
  <AzurePackageDir>$(OutDir)Packages\$(AssemblyName).Azure\</AzurePackageDir>
</PropertyGroup>

<Target Name="CopyPackageToOutDir" AfterTargets="Build" DependsOnTargets="CorePublish" Condition="'$(InRecursiveCall)' == ''">
  <Copy SourceFiles="@(PublishServicePackage)" DestinationFolder="$(AzurePackageDir)" />
</Target>

構成に関しては、各パッケージの近くに複数の .cscfg を配置したいので、デプロイ時にどれを取るかを決定します。そのための解決策がありますが、単一の質問には複雑すぎます。

于 2012-04-20T16:50:44.203 に答える