トップページ

環境構築をまるごとプログラミングする。それもシンプルに。それがPacifistaです。

var host = VirtualMacine.getHost("MyVirtualMacine");
var address = host.create("/tmp/data.vmdk");
host.boot();
var remote = Remote.create(address.getHost(), address.getPort(), "user", "password");
if (remote.loadVersion() < 1) {
    remote.call("yum install -y zabbix-agent");
}

Pacifistaの特徴

仮想環境の作成と起動をプログラミングできます。

  • VirtualBox上の仮想マシンを、1ファイル・4行でセットアップすることができます。
  • EC2(AWS)上の仮想マシンを、1ファイル・4行でセットアップすることができます。

リモートのUnix環境の設定をプログラミングすることができます。

  • JavaScript、Ruby、Groovyのいずれでもプログラミングができます。
  • いずれかの言語で作られた環境設定プログラムを別の言語から呼び出すことができます。
  • プログラミングで環境構築できるので、繰り返し、条件分岐が思いのままです。

環境のバージョンをホストごとに記録することができます。

  • 環境構築のテストをプログラミングすることができます。

利用可能なオブジェクト

オブジェクト名 説明
VirtualMacine 仮想マシンの操作をすることができます。
Remote 仮想マシンやリモートのマシンにssh接続することができます。
Template 設定ファイル等のために、テンプレートのロードと値の設定を行うことができます。エンジンにはVelocityを利用しています。
Tester 仮想マシンやリモートのマシンにテストができます。
local ローカル環境でのディレクトリ作成やファイル削除ができます。
git Gitリポジトリのクローンができます。
console コンソールに出力を行うことができます。
runtime 環境変数の取得や、他のファイルの設定ができます。

セットアップ

  1. javaをインストールしてください。
  2. pacifista.x.x.x.zipをダウンロードして下さい。
  3. pacifista.x.x.x.zipを展開してください。

以上です。

実行

  1. スクリプトをscriptsフォルダの中に作ってください。スクリプトはJavaScriptで記述する場合は拡張子を.js、Rubyは.rb、Groovyは.groovyとしてください。
  2. bin/pacifistaを実行してください。

以上です。

その他

Pacifistaは現在実行環境をMac,リモートホストをCentOSでテストを行っています。 実行環境はWindowsでもLinuxでも、リモートホストはRed Hat 系のLinuxでは動くと思いますが、一部動かないことがあるかもしれません。鋭意対応中です。もし何か発見したら、ご連絡をお願いします。