mmts1007’s diary

プログラミング関連の技術系ブログです。

構成管理ツールを作ってみた

siman(シーマン) という構成管理ツールを作りました。
(SImple configuration MANagement tool の略です。seaman ではありません。)

github.com

Vagrant仮想マシンを作るたびに環境構築するのが面倒だったので、楽にするためのツールを作成しました。 Chef よりもさらにシンプルに、Ruby を使わずにできたらと思いこの形になりました。 Chef の様にリモートサーバの構成管理は行えません。

"No." "実行内容" "レシピ(シェルスクリプト)の URL"

の形式でメニューを作成し、siman を実行すると
レシピを DL し、順次実行します。

冪等性を保つために、メニューの何番目まで実行したか記憶しています。 既に実行済みのメニューは再度実行されません。

レシピは URL 形式で指定するため

github.com

な感じでリポジトリに置いたシェルスクリプトの URL を指定したり、 Gist の URL を張るなりして使用します。

例えば、私は Rails の環境をよく作るので
rbenv を install -> ruby 2.2.3 を install -> rails を install といったメニューを作成しました。
(URL は git.io で短絡しています。)

001  install_rbenv     https://git.io/vzohD
002  install_ruby_223  https://git.io/vzohy
003  install_rails     https://git.io/vzohH

インストール方法等は siman/README.md at master · mmts1007/siman · GitHub を参考にしていただければと思います。