問題タブ [msdeploy]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - _web.config 変換を使用した _CopyWebApplication
リリース ビルドの実行時に Web アプリケーションを自動的に公開しようとしています。_CopyWebApplication ターゲットを使用してこれを行っています。.csproj ファイルに以下を追加しました。
これは機能しますが、1 つの問題があります。この出力と、Visual Studio で [発行] メニュー項目を使用したときに生成される出力の違いは、MSBuild メソッドを使用する場合、Web.Release.config 変換が Web.config ファイルに適用されないことです。代わりに、Web.config、Web.Release.config、および Web.Debug.config がすべてコピーされます。
どんなアイデアでも大歓迎です。
visual-studio - コマンドラインからVisualStudio2010 RCの「ワンクリック公開」を使用するにはどうすればよいですか?
VS 2010 RCを実行していて、2つの公開プロファイルが設定されています。1つはステージングサーバーへの公開用で、もう1つは開発者テストボックス用です。うまく機能しますが、開発サーバーへのデプロイをビルドサーバーに配置し、チェックイン時に実行したいと思います。
MSビルドターゲットまたはMSビルドを介して呼び出すことができるコマンドを探しています。これらのコマンドをビルドプロセスの最後に追加して展開できます。これまでのところ、私は思いついた。
これは、サーバーがWeb展開サービス用にIISでSSL接続を持っていることを前提としていることを除いてほぼ機能します(内部ネットワーク上にあるため、ポート80しかありません)。エラーが発生するので、これを知っています。
エラーから、 http:// myserverではなくhttps://myserverに移動したことがわかります。
MS Build自体がこれを行うためにDLLを呼び出しているように見えるので、パラメーターをスパイすることはできず、MsDeployServiceUrlのドキュメントはありません。
iis - MSDeployを使用して、サイトの*新しい*DestinationBindingをパッケージに追加します
MSDeployでステージングモデルを使用して、いくつかのサイトをWebファームに展開しています。サイトはステージングボックスのIISでのみ構成され、MSDeployを使用してターゲットWebサーバーを最初から構築します。
ステージングボックスは、ライブになるサイトに対して独自のバインディング(つまり、ヘッダーエントリ、異なるIP /ポート、およびホストヘッダーなし)を使用します。-declareParamFile
それらをデプロイすると、最初に、次のようにパラメーターを宣言するパラメーター化されたパッケージを準備するために使用されるxmlファイルがあります(スイッチを使用)。
match
したがって、上記のXMLでは、属性がその値を持つバインディングと一致するように設定されているため、ステージングされたサイトがポート17000でホストされていることがわかります。
次に、各ライブサイトに展開するときに、そのマシンの正しいホストヘッダーとIPを指定する異なるパラメーターXMLを使用します。これは-setParamFileスイッチを使用して適用します。そのうちの1つの例を次に示します。
したがって、元のパラメーターは既知のバインディングの1つと一致するように宣言されているため、そのバインディングを、各ライブサーバーで実際に使用したいものに置き換えることができます。
私が今やりたいのは、サイトをデプロイし、サイトに新しい宛先バインディングを追加することです。これには、すべて同じIPアドレスにバインドされたさまざまなTLD(site.com、site.co.uk、site.caなど)が組み込まれています。およびポート。
これを実行したい理由は次のとおりです。
- デプロイする新しいサイトに別のホスト名が必要ですが、独自のIPアドレス(ここではIPが不足しています!)を指定したくはありませんが、既存のサイトのIPを共有します。サーバーはすでに持っています。
- これは、任意のホスト名に応答させるのではなく、すでにそこにあるサイトに特定のホスト名バインディングを追加することを意味します。
- 現在、既存のサイトの負荷分散されたIP(.com、.us、.ca、.com.au)を指す4つのドメイン名があります。現時点では、Webサーバーがホストヘッダーを気にしないため機能しますが、新しいサイトが同じIP上にある場合は機能し、他のドメイン名は機能しなくなります。
問題は、そのような情報を追加する方法がないように思われることです。2番目のXMLに複数の要素を追加しようとしましsetParameter
たが、それは単にバインディングを繰り返し上書きする効果があり、最後の要素が最終的な勝者になります。
1つの解決策は、ステージングボックスの各サイトに「プレースホルダー」バインディングを追加することです。これは、各ドメイン名、ポートなどのターゲット外部バインディングを表します。次に、2つのパラメータファイルを変更して、これらのバインディングを実際のバインディングに置き換えます。
しかし、私にはこれは完全に間違っていると感じます。つまり、ライブ展開に合わせてステージングボックスをモデル化することになります。逆のはずです。
MSDeployを使用してサイトバインディングを実際に追加することは可能ですか(ある場合、どのように?)、それとも置換のみをサポートしますか?
teamcity - msdeployの出力を解析し、エラーが発生した場合にTeamCityビルドを失敗させるにはどうすればよいですか?
ASP.Netプロジェクトをステージングサーバーに展開するためにTeamCityから実行されたmsdeploy.exeを使用していますが、いくつかのエラーが発生した場合でも、終了時に常に0のステータスを返すことに深刻な問題がある場合。これは、不適切なデプロイが失敗することはなく、すべてが正常に見えることを意味します。
したがって、出力を解析してエラーを発生させる必要がありますが、これを行う簡単な方法はありますか?あるいは、これを行うのは難しい方法がありますか?
以下のTeamCityビルドログから、何が起こっているかを確認できます(エラーですが、終了ステータスが0であるため継続します)。
visual-studio-2010 - VS2010 で MS Deploy をどのように使用しますか?
私は VS2010 を持っていて、Web サイトを開きました。MS Deploy を使用して、リモート IIS サイトにインストールできる zip ファイルにデプロイするにはどうすればよいですか?
すべてのメニュー オプションを検索しましたが、どこから始めればよいかわかりません。
前もって感謝します
iis-7 - MSDeploy は構成のみを IIS 6 から 7 に移行します
IIS 6 サーバーには 19 の Web サイトがあり、その多くは多くの「仮想」ディレクトリを持っています。別のサーバー上の IIS 7 にすべてを移行しようとしています。
http://learn.iis.net/page.aspx/427/migrate-a-web-site-from-iis-60-to-iis-70/の指示に従って、次のコマンド ラインの実行を試みました。
「ディスクに十分なスペースがありません」というエラーが表示されるまで、動作しているように見えました。お気づきのように、D ドライブはパッケージのターゲットの場所であり、ログには十分なスペースがあります (Web サイトのすべてのリソースは約 5 GB で、ドライブには 200 以上あります)。Cドライブのサイズには制限がありますが(6Gb)、それが問題になる可能性があります.
とにかく、実際のリソースではなく、設定/構成のみの移行を試みることが最善の策だと思います。NAnt ビルド スクリプトを使用してリソースを新しいサーバーに簡単にデプロイできるため、問題はありません。ただし、すべての正しい構成を手動で移動するのは困難です。
msdeploy (またはその他のツール) を使用して、IIS 6 サーバーの構成/オプションのみをエクスポート/パッケージ化する方法はありますか?
msbuild - MSBuild ターゲット パッケージが見つかりません
VS2010 Web アプリケーション プロジェクトをパッケージ化して、msdeploy で配置できるようにしたいと考えています。開発マシンでは、次を使用してこれを行うことができます。
しかし、私のビルド サーバーでは、次のエラーが発生します。
エラー MSB4057: 対象の "パッケージ" がプロジェクトに存在しません。
ビルド サーバーで不足しているものは何ですか?
msbuild - ビルド/統合サーバーで MSDeploy を動作させる - MSBuild のアップグレードは必要ですか?
1. 開発者: コードをチェックインする 2. ビルド: リポジトリをポーリングし、変更を確認してビルドを開始する: 3. ビルド: リポジトリから更新し、MSBuild を使用してビルドし、ユニットを実行するnunit を使用したテスト、4. ビルド: インストーラー パッケージを作成します。
私たちのセキュリティ チームは、ビルド サーバーからのプルは許可していますが、ビルド サーバーからのプッシュは許可していません。そのため、通常は rdp でインストーラーを d/l して実行します。これにより、洗練された展開サービスが除外されるため、代わりにパッケージを生成する必要があります。次の問題があることを除いて、MSDeploy を使用したいと思います。
- 私たちは .net 3.5 を使用しており、MSDeploy を使用する MSBuild ターゲット (パッケージ) には 4.0 が必要です。このために .net 4.0 RC 以外にインストールする必要があるものはありますか? (MSBuild はそのアップグレードの一部になりますか?)
- MSDeploy でパッケージを生成すると、ファイルが 1 つだけではないことがわかります。zip、deploy.cmd、SourceManifest.xml、および SetParameters.xml があります。他のすべてのファイルは何のためにあり、なぜそれらすべてが「パッケージ」に含まれないのでしょうか?
- 動作中の IIS サイトを参照するようにシステムに指示することで、パッケージを作成できるように思えます。しかし、パッケージが CI 環境からビルドされている場合、基本的にここでは運が悪いのではないでしょうか? 開発環境からデプロイする小規模な開発者向けに、これらの一部を設計したように感じます。これは素晴らしい使用例ですが、このツールを使用したエンタープライズ エクスペリエンスがどのようなものかを知りたいと思っています。
助言がありますか?
visual-studio-2010 - TFS2010でMSBUILDを介してMSDEPLOYを実行するにはどうすればよいですか?
ここでは、Vishal Joshiから入手できる優れたPDCトークがあり、Visual Studio 2010の新しいMSDEPLOY機能と、TFS内でアプリケーションを展開する方法について説明しています。(スコット・ハンゼルマンからの素晴らしい話もありますが、彼はTFSには参加していません)。
TFS2010内でMSBUILDを使用して、MSDEPLOYを呼び出し、パッケージをIISに展開できます。これは、MSBUILDのパラメーターを使用して行われます。
講演では、次のようなコマンドラインパラメータのいくつかについて説明します。
しかし、これに関するドキュメントはどこにありますか?私は何も見つかりませんか?
私はこれを機能させるために一日中費やしてきましたが、それを正しく行うことができず、さまざまなエラーが発生し続けます。パッケージのcmd
ファイルを実行すると、完全にデプロイされます。Visual Studioを介してWebDeployを実行すると、それも完全に機能します。
ただし、パッケージファイルmsbuild
を個別に呼び出したり実行したりするのではなく、これらの引数を使用してデプロイメント全体を実行したいと考えています。これどうやってするの?msdeploy
.cmd
PS。はい、私はWeb Deployment Agent Service
走っています。また、IISで管理サービスを実行しています。両方使ってみました。
私が使用しているArgs:
私に与える:
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ Web \ Microsoft.Web.Publishing.targets(2660):VsMsdeployが失敗しました(リモートエージェント(URL https://staging.example.com: 8172 / msdeploy.axd?site = staging.example.com)に接続できませんでした。リモートエージェントサービスがターゲットコンピューターにインストールされ、開始されていることを確認してください。)エラーの詳細:リモートエージェント(URL https://staging.example。 com:8172 / msdeploy.axd?site = staging.example.com)に接続できませんでした。リモートエージェントサービスがターゲットコンピューターにインストールされ、開始されていることを確認してください。サポートされていない応答を受信しました。応答ヘッダー「MSDeploy.Response」は「」でしたが、「v1」が予期されていました。リモートサーバーがエラーを返しました:(401)許可されていません。
tfs - TFS2010でビルドが成功したときにコマンドを実行するにはどうすればよいですか?
TFS2010を起動して実行し、webdeploy
展開パッケージを構築しています。
私のディレクトリに:
次の2つのディレクトリを取得します。
ビルドが成功したときに次のコマンドを実行するだけで、サイトをデプロイできます。
ビルドプロセステンプレートをカスタマイズして、そのパッケージを実際に実行するにはどうすればよいですか?TFS 2010では、プロセステンプレートを使用する必要があります(TFSBuild.csprojのものは不要です)。
ファイルを複製しようとしましたDefaultProcessTemplate.xaml
が、基本的に、ファイルを開くとVisualStudioが強制終了します。
ビルドが成功したときにこの単純なコマンドを実行するために、.xamlを手動で編集するにはどうすればよいですか?