クラウドconfig(ServiceDefinition.csdef)ファイルの構成でNugetパッケージを作成します

StackOverflow https://stackoverflow.com/questions/8352747

  •  27-10-2019
  •  | 
  •  

質問

エンドユーザーがスタートアップタスクとしてインストールし、その後、ウィンドウ紺碧のプラットフォームにアプリケーションをアップロードするために使用するアドオン用のNugetパッケージをビルドしたいと思います。

1つの単純なWebアプリケーションと1つのクラウドプロジェクトを使用して、Nugetエンドユーザーがアドオンパッケージを追加し、Webアプリケーションプロジェクトに2つのファイル(exeとconfig)を追加し、クラウドプロジェクトのServiceDefinition.csdefに起動タスクを追加します。図に示すように

ここに画像の説明を入力

このタイプのNugetPacakgeを作成するにはどうすればよいですか?

よろしくお願いします。

更新:

NICKの回答に従って試しましたが、下の図に示すように、クラウドプロジェクトで2つのWebロールに問題が発生しています。 2つのwebroleを持つクラウドプロジェクト 以下のようにエラーが発生します

PowerShellスクリプトで起動タスクを追加するエラー

また、コマンドラインでそのNugetパッケージをインストールする場合、すべてのwebroleプロジェクトを検討してexeファイルと構成ファイルをソリューションに追加するにはどうすればよいかという質問が1つありますか?

役に立ちましたか?

解決

Nugetパッケージは、次の規則に基づいて機能します。 http://docs.nuget.org/docs / creating-packages / creating-and-publishing-a-package#From_a_convention_based_working_directory

exeとconfigに関しては、次のことができます。

  1. パッケージディレクトリに次のディレクトリを作成します
    • mkdir lib(exe用)
    • mkdirコンテンツ(構成用)

      exeに対して行う必要があるのは、ファイルをlibディレクトリにドロップし、メタデータノードのすぐ下にある.nuspecファイルを変更することだけです。 「ファイル」ノードがあるはずです(そうでない場合は追加できます)。ファイルノード内に次のようなものを追加します: ジェネラコディセタグプレ

      設定が少し異なります。 myname.config.transformという名前のファイルをコンテンツディレクトリに追加し、.nuspecファイルにエントリを追加するだけです。

      注意すべき点がいくつかあります:

      1. アプリに設定ファイルが存在しない場合は、設定ファイルが追加されます。
      2. すでに存在するファイルがある場合にのみ、変換するノードを追加する必要があります
      3. 変換ファイルはノード上で完全に一致するため、以下が存在する場合

        設定ファイル: ジェネラコディセタグプレ

        そしてあなたの変身には: ジェネラコディセタグプレ

        結果のファイルは次のようになります: ジェネラコディセタグプレ

        スタートアップタスクを追加する限り、それは私にとってもう少しトリッキーでした(もっと良い方法があるかもしれません)。 install.ps1でPowerShellを使用しています(上記のファイルと同じですが、「tools」ディレクトリを作成します): ジェネラコディセタグプレ

        これがお役に立てば幸いです。

        -ニック

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top