4

を使用して展開することを目的とした Perl アプリに取り組んでいModule::Buildます。Ubuntu のパッケージ マネージャー (より正確には、すべてのサーバーが使用する内部 apt-get ミラー) では利用できなかったため、CPAN を介して多数のモジュールをインストールする必要があります。これは私たちの開発サーバーでは問題ありませんが、IT は (当然のことながら) キャッシュされていない、または社内で制御されていない運用マシンでコードを実行することに消極的です。

現在 CPAN ミラーがないため、これは基本的に、これらの非 Ubuntu モジュールをすべて 1 か所にまとめて、アーカイブしたり、バージョン管理にコミットしたりできるようにする必要があることを意味します。理想的な解決策は、ソース管理からユーティリティをチェックアウトし、データベースなどのいくつかの構成変数を変更し、おそらくビルド/インストール コマンドを実行して完了することです。幸いなことに、開発サーバーは運用サーバーのクローンであるため、XS やその他のアーキテクチャ固有の機能を使用するモジュールが問題を引き起こすことはありません。

これを処理する最もクリーンな方法は、必要なモジュールのソース tarball をチェックインし、Module::BuildCPAN を探す代わりにそれらを使用して依存関係を解決するように設定することだと思いますが、そのためのオプションが見つかりません。これは実行可能なものですか、それとも基本的にオフラインの展開に必要なすべてのモジュールをまとめるための別の方法はありますか?

4

3 に答える 3