私が開発し、50+スクリプトのバイオインフォマティクスアプリケーションスイートを維持し、その展開プロセスが混乱です:私のperlアプリケーションの展開プロセスをどのように改善すればよいですか?
- スイート全体が一つの大きなgitリポジトリです。それには多くのCPAN依存性と数十の内部モジュールがあります。
- 開発プラットフォームはLinuxです。
- 展開プラットフォームは、Windows(20人以上のユーザー)、Mac(10+)、Linux(2-3)です。ほとんどが「パワーユーザー」ではありません。
- 私は、イチゴperl +必須モジュール(Windowsの箱にイチゴをインストールし、すべてのモジュールをインストールし、c:\ strawberryを圧縮したもの)用のインストーラ(NSIS製) - 私はこのスイートを必要なモジュールのリストよりもずっと多く更新しました。
- Macの場合、perl 5.14、すべての必要なcpanモジュール、およびアプリケーションスイートをダブルクリック可能なインストーラにバンドルします。私はperl b/cというシステムを使用していません。これは古くなる傾向があります。私はWindowsのb/cとは違って、すべて一緒にバンドルしています。
- Linuxの場合は、手動でインストールするのは手作業でしかありません。なぜなら、それらはほんのわずかしかなく、異なるディストリビューションを使用するからです。
これは明らかに、数世代にわたる開発者によって有機的に成長した混乱です。理想的には、内部ライブラリと関連スクリプトのさまざまなグループからcpan-installableディストリビューションを作成し、モジュール依存関係を使用してcpanをインストールしてください。
しかし、私はこれについて最善のアプローチがb/cであるかどうかはまだわかりませんが、私はまだperlそのものを配布する必要があり、CPANに非コマンドラインインターフェイスを書いて、サードパーティのCPANモジュールのデフォルトでは、モジュールを格納する私の "DarkPan"、アップデートなどのプッシュ方法などを指します。
afaikからPerlAppまたはParを使用することはできません。単一のスクリプトをバンドルするためのものであり、それらのスイート全体ではありません。
アドバイスありがとうございます。言及した3つのプラットフォームのほか
私はスクリプトの「ユーザー」の多くが異なる組織に属していますが、コンピュータを直接制御することはできません(半数は私と同じ建物にあります)。しかし、カワウソは有望に見える。編集:2番目の考えでは、たとえユーザーの半分であっても、マシン固有のインストールの問題について心配する必要がなければ、その価値はあるかもしれません... – user1481
おそらくあなたのユーザーはあなたのスクリプトの実行に興味があります。言い換えれば、彼らはやりたいこと、彼らはむしろスキップするだろう何かをすることを余儀なくされていません。私は世界中の200人のユーザーのために、それらを実行したいので、セットアップスクリプトを実行して必要なドライブをマップし、.PLファイルなどを関連付けることを望んでいます。これが人々が必要とするものではない走って、この余分なセットアップを通過することはさらに厳しいかもしれません!しかし、Perl、CPANモジュール、およびあなたのカスタムスクリプトとモジュールのセットアップスクリプトやネットワークインストールの中には素晴らしいスタートです。 – jimtut