[Kateryna’s Blog Web PI Extensibility: Custom Feeds – Installing Custom Applications ]の翻訳です。
9 月にリリースされた Web Platform Installer Version 2 RTW の最も重要な機能の 1 つは、Windows Web アプリケーション ギャラリーで提供される Web アプリケーションに対応できることです。このギャラリーは、オープン ソース アプリケーションをオンライン登録手続きによって登録し、Web PI を含むさまざまなソースを通じて多くのユーザーに提供できる場所になっています。登録および入会は完全に無料であり、必要となるのは、アプリケーションがアプリケーション ギャラリーの基本方針に従っていることと、Web 配置 zip パッケージであることだけです。
Web PI でアプリケーションをインストールできるようにするために、アプリケーションをアプリケーション ギャラリーに登録する必要はありません。Version 2 の新機能である拡張性により、Web PI でカスタム アプリケーションを簡単に展開できます。ここでは、Web PI でカスタム アプリケーションを認識し、インストールできるようにするためのカスタム フィードを作成する方法を紹介します。
この記事の手順を実行する際に必要となるのは、アプリケーションの Web 配置 zip パッケージと、アプリケーションの UI 表示の見ばえをよくするためのアイコン (省略可能) です。
それでは実際に作業を始めましょう。
以下のフィードでは、ASP.NET/SQL および PHP/MySql の依存関係を持つアプリケーションを追加し、キーワードに基づいて新しいタブとサブタブを作成し、製品をグループ化して、Web PI に対して複数の言語で製品を使用できるようにする方法を示しています。カスタム製品は Web PI のコア タブには追加できないため、カスタム製品用に新しいカスタム タブを定義する必要があることに注意してください。
<?xml version="1.0" encoding="utf-8"?> <feed xmlns="http://www.w3.org/2005/Atom"> <version>1.0.0</version> <title>Sample Applications for WebPI v2 RTW Feed</title> <link href="http://www.contoso.com/SampleApplicationsFeed.xml" /> <updated>2009-10-5T16:30:00Z</updated> <author> <name>Sample Application Builder</name> <uri>http://www.contoso.com/</uri> </author> <id>http://www.contoso.com/SampleApplicationsFeed.xml</id> <!-- 依存関係を含むサンプル ASP.NET および SQL アプリケーション --> <entry type="application"> <productId>Sample_ASPNET_SQL_App</productId> <title>Sample ASP.NET and SQL application</title> <title>Sample ASP.NET and SQL application</title> <longSummary>Sample ASP.NET and SQL to show how to add a feed with a custom ASP.NET application to WebPI and define all dependencies.</longSummary> <!-- キーワードに基づい��アプリケーションのグループ化を定義する --> <keywords> <keywordId>ASPNETApps</keywordId> </keywords> <version>1.0</version> <images> <icon>c:\SampleASPNETAppIcon.jpg</icon> </images> <updated>2009-10-5T18:30:02Z</updated> <published>2009-10-5T18:30:02Z</published> <author> <name>Sample Application Builder</name> <uri>http://www.contoso.com</uri> </author> <!-- SQLExpress (依存関係ではない) が関連/オプション製品としてインストールされていない場合に、インストールする --> <related> <relatedProduct> <productId>SQLExpress</productId> </relatedProduct> </related> <!-- アプリケーションを正常にインストールするための最小限の要件/依存関係のセット: WDeploy、SQL 管理オブジェクト、および URL Rewrite --> <dependency> <and> <dependency> <productId>SMO</productId> </dependency> <dependency> <productId>WDeployNoSMO</productId> </dependency> <dependency> <productId>UrlRewrite2RC1</productId> </dependency> </and> </dependency> <!-- アプリケーションのインストーラーは Web 配置パッケージである必要がある --> <installers> <installer> <id>1</id> <!-- このパッケージがローカライズされる言語のリスト: 英語、韓国語、スペイン語、繁体字中国語、および簡体字中国語 --> <languageId>en</languageId> <languageId>ko</languageId> <languageId>es</languageId> <languageId>zh-tw</languageId> <languageId>zh-cn</languageId> <installerFile> <!-- パッケージのサイズ (KB 単位) --> <fileSize>1024</fileSize> <installerURL>http://www.contoso.com/SampleASPNETApplication.zip</installerURL> <displayURL>http://www.contoso.com/SampleASPNETApplication.aspx</displayURL> <!-- 署名検証用のパッケージ ファイルの SHA --> <sha1>1223334444555556666667777777888888889999</sha1> </installerFile> <helpLink>http://www.contoso.com/SampleASPNETApplicationForum.aspx</helpLink> <msDeploy> <startPage> <!-- 既定以外のセットアップ ページで開始 --> <startPage>Setup.aspx</startPage> </startPage> </msDeploy> </installer> </installers> </entry> <!-- 依存関係を含むサンプル PHP および MySQL アプリケーション --> <entry type="application"> <productId>Sample_PHP_MySQL_App</productId> <title>Sample PHP and and MySQL application</title> <summary>PHP and MySQL application sample</summary> <longSummary>Sample PHP and MySQL to show how to add a feed with a custom PHP application to WebPI and define all dependencies.</longSummary> <!-- PHPApps キーワード サブタブに表示する --> <keywords> <keywordId>PHPApps</keywordId> </keywords> <version>1.0</version> <images> <icon>c:\SamplePHPAppIcon.jpg</icon> </images> <updated>2009-10-5T18:30:02Z</updated> <published>2009-10-5T18:30:02Z</published> <author> <name>Sample Application Builder</name> <uri>http://www.contoso.com</uri> </author> <!-- SQLExpress (依存関係ではない) が関連/オプション製品としてインストールされていない場合に、インストールする --> <related> <relatedProduct> <productId>SQLExpress</productId> </relatedProduct> </related> <!-- アプリケーションを正常にインストールするための最小限の要件/依存関係のセット: PHP、WDeploy、SQL 管理オブジェクト、MySql Connector、および URL Rewrite --> <dependency> <and> <dependency> <productId>WDeployNoSMO</productId> </dependency> <dependency> <productId>PHP</productId> </dependency> <dependency> <productId>MySQLConnector</productId> </dependency> <dependency> <productId>UrlRewrite2RC1</productId> </dependency> </and> </dependency> <!-- アプリケーションのインストーラーは Web 配置パッケージである必要がある --> <installers> <installer> <id>1</id> <!-- このパッケージがローカライズされる言語のリスト: 英語、ロシア語、フランス語、ドイツ語、およびイタリア語 --> <languageId>en</languageId> <languageId>ru</languageId> <languageId>fr</languageId> <languageId>de</languageId> <languageId>it</languageId> <installerFile> <!-- パッケージのサイズ (KB 単位) --> <fileSize>1024</fileSize> <installerURL>http://www.contoso.com/SamplePHPApplication.zip</installerURL> <displayURL>http://www.contoso.com/SamplePHPApplication.aspx</displayURL> <!-- 署名検証用のパッケージ ファイルの SHA --> <sha1>1223334444555556666667777777888888889999</sha1> </installerFile> <helpLink>http://www.contoso.com/SamplePHPApplicationForum.aspx</helpLink> <msDeploy> <!-- 既定のページが開始ページ --> <startPage /> </msDeploy> </installer> </installers> </entry> <!-- タブの定義 --> <tabs> <tab> <keywordTab> <id>SampleApplications</id> <name>Sample Applications</name> <description>Select from sample applications:</description> <!-- サブタブの定義 --> <keywords> <keywordId>ASPNETApps</keywordId> <keywordId>PHPApps</keywordId> </keywords> </keywordTab> </tab> </tabs> <!-- アプリケーションをキーワードでグループ化するためのサブタブのキーワード/タイトル --> <keywords> <keyword id="ASPNETApps">ASP.NET Apps</keyword> <keyword id="PHPApps">PHP Apps</keyword> </keywords> </feed>
zip パッケージのハッシュを取得するには、File Checksum Integrity Verifier (FCIV) と呼ばれる無料のユーティリティを使用して、コマンド プロンプトから fciv.exe -sha <zip パッケージへのパス> を実行します。
フィードを試すことができるようになりました。フィードを試すには、フィードをローカルに保存するか、アップロードして、[オプションの変更] ダイアログ ボックスを開き、物理パスまたは URL のいずれかでフィードを追加します。
アプリケーションは、製品の場合とは異なり、製品ファミリではなく、キーワードに基づいてグループ化されます。また、グループ ボックス (製品のピラー) ではなく、キーワード サブタブにグループ化されます。カスタム フィードによってカスタム製品を追加する方法については、「Web PI の拡張性: カスタム フィード - カスタム製品のインストール」の記事を参照してください。