SQL Server Integration Services パッケージを可能な限りポータブルにしようとしていますが、それを妨げているのは、構成へのパスが常に絶対パスであるため、テストと展開が頭痛の種になることです。これをより管理しやすくするための提案はありますか?
もう 1 つの問題は、別の開発者がパッケージをソース管理から外した場合、パスが開発者のマシンに固有のものになることです。
SQL Server Integration Services パッケージを可能な限りポータブルにしようとしていますが、それを妨げているのは、構成へのパスが常に絶対パスであるため、テストと展開が頭痛の種になることです。これをより管理しやすくするための提案はありますか?
もう 1 つの問題は、別の開発者がパッケージをソース管理から外した場合、パスが開発者のマシンに固有のものになることです。
Visual Studio を使用してパッケージを実行しようとしている場合、構成ファイルのパスはそこにハードコーディングされます。したがって、プロジェクトを移動する場合は、パッケージ設定でパスを変更する必要があります。これを回避するには、環境変数オプションを使用して構成ファイルのパスを保存します。その後、それを変更するだけで済みます。
ただし、テストと展開の場合は、おそらく dtexec ユーティリティを使用してパッケージを実行する必要があります。そのためのバッチファイルをいくつか作成します。できれば、異なる環境ごとに 1 つ。ここで、構成ファイルのパスは相対パスにすることができます。
dtexec /File Package.dtsx /Conf configuration.dtsConfig
これは、パッケージがファイル システム上にある場合です。それらを SQL Server に格納することもできます。構成を SQL Server に保存することもできるため、柔軟性が得られます。
この作業を数時間試みた後、ここで解決策を見つけました(最良の解決策ではありませんが、機能します)
そうしないと、相対パスが機能しませんでした。
BIDS なしで SSIS 構成ファイルのパスを編集できる無料のユーティリティを確認してください: http://ssisconfigeditor.codeplex.com/