Nuget.exeを使用してプロジェクトに追加する代わりに、.SQLファイルのみのフォルダーをパッケージ化する方法はありますか?
nuspec内でフォルダを指定できることは知っていますが、そのプロセスはどのようになっていますか?.netプロジェクト/アプリケーションを使用してパッケージを作成することしかできませんでした。
たとえば、Database.nuspecという名前のnuspecを内部に作成するとします。
F:\folder\trunk\Source\Database.nuspec
フォルダ内
F:\folder\trunk\Source\Database
パッチスクリプトフォルダをパッケージ化したい
F:\folder\trunk\Source\Database\Patch Scripts
そしてそのフォルダの中に私は
F:\folder\trunk\Source\Database\Patch Scripts\2.0
F:\folder\trunk\Source\Database\Patch Scripts\2.1
F:\folder\trunk\Source\Database\Patch Scripts\2.2
これらのフォルダーをnuspec内に含める必要がありますか、それともnuget.exeはそれらをパッケージ化するのに十分スマートですか?例えば
アップデート:
解決策1:各フォルダーをnuspecに含めることです
<files>
<file src="F:\folder\trunk\Source\Database\*.sql" target="Database" />
<file src="F:\folder\trunk\Source\Database\Patch Scripts\*.sql" target="Database\Patch Scripts\" />
<file src="F:\folder\trunk\Source\Database\Patch Scripts\2.0\*.sql" target="Database\Patch Scripts\2.0" />
</files>
しかし、私はたくさんのパッチファイルを持っており、約40をnuspecに書き出すのはかなり面倒です。回避策が見つかったら、更新します。
解決策2:ufuk-haciogullariは
*\*.sql
それらは1レベル下にあるため、ソースとして、これは私が望むことを実行しますが、ファイル構造をそのまま維持する必要があります。
<files>
<file src="F:\folder\trunk\Source\Database\*.sql" target="Database" />
<file src="F:\folder\trunk\Source\Database\Patch Scripts\*\*.sql" target="Database\Patch Scripts" />
</files>
すべてのリターンをターゲットのDatabase\Patch Scripts \に格納しますが、これは私が望む構造ではありません。
アップデート:
<?xml version="1.0" encoding="utf-8" ?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>database</id>
<version>1.0.6</version>
<authors>me</authors>
<description>Description</description>
</metadata>
<files>
<file src="F:\folder\trunk\Source\Database\*.sql" target="Database\" />
<file src="F:\folder\trunk\Source\Database\Patch Scripts\**\*.sql" target="Database\Patch Scripts" />
</files>
これにより、ソリューションがパッケージ化され、以前の形式のファイルが保存されます。
nuget.exe pack "F:\folder\trunk\Source\Database\database.nuspec" -OutputDirectory F:\NuGetStore
アップデート:
これに戻ると、ターゲットを空白のままにすると、すでに配置されているのと同じフォルダ構造が再作成されるため、ディレクトリを作成する必要はありません。
<?xml version="1.0" encoding="utf-8" ?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>database</id>
<version>1.0.6</version>
<authors>me</authors>
<description>Description</description>
</metadata>
<files>
<file src="F:\folder\trunk\Source\Database\*.sql" target="" />
<file src="F:\folder\trunk\Source\Database\Patch Scripts\**\*.sql" target="" />
</files>
これにより、ソリューションがパッケージ化され、ファイルが保存されます。
nuget.exe pack "F:\folder\trunk\Source\Database\database.nuspec" -OutputDirectory F:\NuGetStore