私のアプリケーションには、Linux ホストのファームを制御するための Python スクリプトがあります。より正確には、クラスター化されたデータベース管理システムを使用しています。このスクリプトは、クラスターを制御するための日常的なタスク (ノードの開始、ノードの停止、ノードのステータスの取得など) を実装します。
現在、スクリプトは標準の Python ライブラリのみを使用して Python で記述されています。ssh によるリモート ホストへのアクセスには paramiko を使用します。これは非常に見苦しく、スクリプトの開発者や保守担当者にとって役に立ちません。
python-fabricに切り替えたい。
私の問題は、スクリプトを正しく記述してディストリビューション (パッケージ、tar.gz など) にパックするにはどうすればよいかということです。
主なアプリケーション ビルド システムは CMake であり、configure_file
ステートメントを使用してテンプレートからスクリプトを生成し、C++ アプリケーション、ライブラリなどへのフル パスを置き換えます。
ビルドスクリプトで次のことを行います。
- virtualenv を使用して別の環境を作成する
- 別環境にpipをインストール
- 別の環境にファブリックをインストールする
- virtualenv によって生成された「activate」スクリプトを実行し、そこから何かを呼び出します
このソリューションの欠点は何ですか? 他にどのようなソリューションを提案できますか?