エクスポート (0) 印刷
すべて展開

CSPack コマンド ライン ツール

更新日: 2013年11月

CSPack コマンド ライン ツール (CSPack.exe) は、デプロイ用にアプリケーションを準備します。CSPack の使用方法は、アプリケーションのデプロイ場所によって変わります。

  • Windows Azure コンピューティング エミュレーターへのデプロイを目的としてアプリケーションを準備するには、CSPack を使用してバイナリ ファイルをディレクトリ レイアウトにコピーします。

  • Windows Azure へのデプロイを目的としてアプリケーションを準備するには、CSPack を使用して Windows Azure にアップロードするパッケージ ファイルを生成します。

  • 既存のパッケージを新しいパッケージ形式に変換するには、「Windows Azure のパッケージ形式」を参照してください。

ツールの場所

Windows Azure SDK Version 1.7 およびそれ以降で、SDK を既定の場所にインストールした場合、CSPack は C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\<sdk-version>\bin ディレクトリにあります。Windows Azure SDK Version 1.6 およびそれ以前の場合、CSPack は C:\Program Files\Windows Azure SDK\<SDK version>\bin\ ディレクトリにインストールされます。

Command Line Syntax

CSPack <DefinitionFile> [options]

オプション

次の表は、CSPack で使用できるオプションの一覧です。最新のオプションの一覧を表示するには、コマンド プロンプトでインストール場所に移動して「CSPack /?」と入力します。

 

オプション 説明

/out:<file> | directory>

このオプションはロール バイナリの出力形式と場所を示します。

/copyOnly オプションをこのオプションと同時に指定すると、CSPack は指定された出力ディレクトリを作成し、そのディレクトリにロール バイナリをコピーします。

/copyOnly が指定されていない場合、このオプションはアプリケーション パッケージのファイル名を指定します。ファイル名が指定されていない場合、アプリケーション パッケージは <service-definition-file-name>.cspkg という名前で作成されます。

/copyOnly

このオプションを指定すると、CSPack は、コンピューティング エミュレーターがアプリケーションをローカルに実行するときに使用するロール バイナリを格納するディレクトリ レイアウトを作成します。

出力場所が /out オプションで指定されていない場合、CSPack は <service-definition-file-name>.csx というディレクトリを作成します。

/role:<RoleName>;[<RoleBinariesDirectory>];[<RoleEntryPointDLL>]

When this option is specified, CSPack creates a directory layout for the role binaries, which the コンピューティング エミュレーター uses to run the application locally.

If no output location is specified with the /out option, CSPack creates a directory named <service-definition-file-name>.csx.

/roleFiles:<RoleName>;<RoleFileList>

このオプションは、ロールを構成するファイルのパスが記載されたファイルを指定します。コマンド ラインでは、定義ファイルで定義されたロールごとに 1 つ /roleFiles オプションを指定することができます。

ロールのエントリ ポイントを定義する DLL を指定するには、/roleFiles オプションと共に /rolePropertiesFile オプションを使用します。

<RoleFileList> パラメーターは、各行が次の形式の単純なローカル テキスト ファイルを指定します。

<InputPath>;<TargetPath>

<InputPath は>、ロールを構成するファイルへの絶対パスまたは相対パスです。<InputPath> が相対パスである場合は、<RoleFileList> で指定されたファイルの場所が基準になります。

<TargetPath> は <InputPath> で参照されたファイルをサービス パッケージに配置する場所を示す相対パスです。

/roleFiles オプションを指定する場合は、/role オプションを同時に指定することはできません。

/rolePropertiesFile:<RoleName>;<RolePropertyFile>

このオプションは、ロールのプロパティの一覧を含むファイルを指定します。/rolePropertiesFile オプションは、/roleFiles オプションと同時に指定する必要があります。ロール プロパティ ファイル内では、ロールのエントリ ポイントを含む DLL、および、このロールを実行する .NET Framework のバージョンを指定できます。

<RolePropertyFile> パラメーターは、各行が次の形式の単純なローカル テキスト ファイルを指定します。

<PropertyName>=<PropertyValue>

有効なプロパティ名と値の詳細については、「解説」を参照してください。

/sitePhysicalDirectories:<RoleName>;<VirtualPath1>;
<PhysicalPath1>;<VirtualPath2>;<PhysicalPath2>;…

このオプションは、Sites セクションで定義されている各仮想パスの物理ディレクトリの定義を有効にします。各サイト、仮想ディレクトリ、および仮想アプリケーションを要素として仮想パスが作成されます (仮想パスは、web.config の location 要素ではロケーション パスとも呼ばれます)。

Site 要素の使用方法の詳細については、「サービス定義ファイルの Site エントリを構成する」を参照してください。

/sites:<RoleName>;<SiteName>;<VirtualPath1>;
<PhysicalPath1>;…

このオプションは、Web サイトの仮想ディレクトリに対する物理ディレクトリにあるコンテンツのマッピングを有効にします。各サイト、仮想ディレクトリ、仮想アプリケーションの要素は、順番に結合されて仮想パスを構成します (仮想パスは、web.config の location 要素ではロケーション パスとも呼ばれます)。

VirtualPath1 は、サービス定義ファイルの <Site> 要素の name 属性によって定義されるサイト名にマッピングされます。

PhysicalPath1 は、Site のコンテンツの場所です。

/generateConfigurationFile:<ConfigurationFile>

このオプションは、アプリケーションのスケルトン構成ファイルを生成するために使用されます。デプロイする前に、生成されたファイルを編集して、設定の値とアプリケーションのロール インスタンスの数を指定します。

/allowLegacyWebRoles

このフラグは、Hosted Web Core で実行するレガシ Web ロールを含むパッケージで発生する警告を抑制します。このオプションを使用して Hosted Web Core でロール インスタンスを実行できます。または、サービス定義に Sites 要素を追加できます。

/useCtpPackageFormat

このオプションは、パッケージを新しいパッケージ形式にすることを指定します。新しい形式の詳細については、「CSPack を使用して新しい形式のパッケージを作成する」を参照してください。

/convertToCTPPackage

このオプションは、既存のパッケージを新しいパッケージ形式に変換することを指定します。詳細については、「既存のパッケージを新しい形式に変換する」を参照してください。

解説

ロール プロパティ ファイルで次のプロパティを指定できます。

note
Windows Azure ライブラリのこのトピックを表示できない場合は、MSDN ライブラリで表示してみてください。

 

プロパティ名 プロパティ値

TargetFrameWorkVersion

このロールを実行する .NET Framework のバージョンを示す数値。このプロパティ設定の形式は、TargetFrameWorkVersion=vMajor.Minor です。ここで Major はメジャー リリース番号、Minor はマイナー リリース番号を指します。

TargetFrameWorkVersion=v4.0

TargetFrameWorkVersion=v3.5

[EntryPoint]

ロールのエントリ ポイントとして機能する DLL の名前です。このプロパティ設定の形式は、EntryPoint=DLLFileName です。ここで DLLFileName は DLL のファイル名を示す文字列です。

EntryPoint=myroleentrypoint.dll

Important重要
Windows Azure SDK 1.1 で機能した CSPack の呼び出しが、Windows Azure SDK 1.2 またはそれ以降にアップグレードした後、失敗するようになった場合、CSPack に対して正しく対象 .NET Framework のバージョンを指定していないことが原因である可能性があります。CSPack assumes that your service code has been compiled under .NET 3.5 by default.コードを .NET 4 でコンパイルしている場合、ロール プロパティ ファイルを作成し、コマンド ラインで /rolePropertiesFile オプションを使って、.NET 4 のコードであることを指定する必要があります。

Warning警告
Windows SDK Version 1.5 およびそれ以降では、CSPack の作成するパッケージは暗号化されなくなりました。パッケージに重要情報を格納することは避けてください。

以下の例は、CSPack を使用して、コマンド ラインから Windows Azure SDK サンプルのいくつかを手動でパッケージ化する方法を示しています。

次の例は、開発環境にデプロイする HelloWorld サンプルをパッケージ化する方法を示しています。


c:\samples\HelloWorld>cspack HelloWorld\ServiceDefinition.csdef /out:HelloWorld.csx /role:HelloWorld_WebRole;HelloWorld_WebRole /sites:HelloWorld_WebRole;Web;d:\HelloWorld_WebRole\HelloWorld_WebRole /copyOnly

次の例は、Windows Azure にデプロイする HelloWorld サンプルをパッケージ化する方法を示しています。


c:\samples\HelloWorld>cspack HelloWorld\ServiceDefinition.csdef /out:HelloWorld.cspkg /role:HelloWorld_WebRole;HelloWorld_WebRole /sites:HelloWorld_WebRole;Web;d:\HelloWorld_WebRole\HelloWorld_WebRole

次の例は、ワーカー ロールを含むサンプルをパッケージ化する方法を示しています。


c:\samples\HelloFabric>cspack HelloFabric\ServiceDefinition.csdef 
   /role:HelloFabric_WorkerRole;HelloFabric_WorkerRole\bin\Debug;HelloFabric_WorkerRole.dll 
   /out:HelloFabric.cspkg

c:\samples\Thumbnails>cspack ThumbnailsWorkerOnly\ServiceDefinition.csdef 
/role:Thumbnails_WorkerRole;Thumbnails_WorkerRole\bin\Debug;Thumbnails_WorkerRole.dll 
/out:ThumbnailsWorkerOnly.cspkg

次の例は、ワーカー ロールである OrderProcessingRole と Web ロールである FrontendWebRole の両方を含むサンプルをパッケージ化する方法を示しています。


C:\samples\MultiTierApp>cspack MultiTierApp\ServiceDefinition.csdef /out:MultiTierApp.cspkg
/role:FrontendWebRole;FrontendWebRole /sites:FrontendWebRole;Web;c:\MyDirectory\MultiTierApp\FrontendWebRole 
/role:OrderProcessingRole;OrderProcessingRole\bin\Debug;OrderProcessingRole.dll

参照

表示:
© 2014 Microsoft