fabricをWebUI上で実行するFabricBoltを触ってみる

■ 目次

  1. 概要
  2. 準備
  3. 使ってみる
  4. 感想

■ 概要

FabricBoltというfabricのコマンドをWebUI上で実行するツールについて紹介する

■ 準備

fabric自体のインストールはこちら

pythonを2.7になっていなかった場合はアップデート

// rootユーザ変更
$ sudo su -
// pyenvをクローン
# git clone https://github.com/yyuu/pyenv.git ~/.pyenv
// パスを通す
# echo 'export PYENV_ROOT=$HOME/.pyenv' >> ~/.bash_profile
# echo 'export PATH=$PYENV_ROOT/bin:$PATH' >> ~/.bash_profile
# echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
# source ~/.bash_profile
// インストール可能なバージョン一覧を取得
# pyenv install -l
// 2.7.11をインストール
# pyenv install 2.7.11
// 2.7.11に切り替える
# pyenv global 2.7.11
// 確認
# pyenv version
2.7.11 (set by /root/.pyenv/version)
# python -V; which python
Python 2.7.11
/root/.pyenv/shims/python

// fabric-boltでは/usr/bin/pythonが使われるのでそっちのバージョンを2.7にする
# mv /usr/bin/python /usr/bin/python_bak
# ln -s /root/.pyenv/versions/2.7.11/bin/python /usr/bin/python
# /usr/bin/python -V
Python 2.7.11

pythonのバージョンをあげるとyumが新しいバージョンに対応してなくてエラーになるので修正する

// 2.7を指定する
# sudo vim /usr/bin/yum
#!/usr/bin/python
↓
#!/usr/bin/python2.6

FabricBoltの用意

# pip install --upgrade pip
# yum -y install python-pip gcc gcc-c++ kernel-devel python-lxml libxslt-devel
# pip install fabric-bolt
// 設定ファイルの作成
# fabric-bolt init
Configuration file created at '/root/.fabric-bolt/settings.py'
// 設定ファイルの修正
// 最後に以下の2行を追加する
# vim .fabric-bolt/settings.py
ALLOWED_HOSTS = ['*']
DEBUG = True
# fabric-bolt migrate
// adminユーザの作成
# fabric-bolt createsuperuser
Email address: XXX
Password:
Password (again):
Superuser created successfully.
// 起動 XXXはサーバのipを指定
# sudo -E /root/.pyenv/shims/fabric-bolt --config=.fabric-bolt/settings.py runserver XXX.XXX.XXX.XXX:8080

XXX.XXX.XXX.XXX:8080にアクセスするとFabricBoltのログイン画面が表示される
fabricbolt01

■ 使ってみる

ログインしてみる

fabricbolt02

「Projects」の「Add Project」より新規にProjectを作成する

Name プロジェクト名
Description プロジェクトの概要
Use repo’s fabfile? 指定したGitリポジトリのfabfileを利用するか
チェックしない場合はデフォルトのfabfileを使うことになる
Repo url 「Use repo’s fabfile?」にチェックした場合にリポジトリを指定する
Fabfile requirements 必要なものをpipからインストールする

今回はtestプロジェクトを作成する

fabricbolt03

無事に作成できた

fabricbolt04

「Add Stage」よりstageを作成する
Stage毎にhost名を指定できてfabricのタスクを実行することになるので
テスト環境と本番環境という単位で作成するのかも

fabricbolt05

「Create Stage」を実行するとStageが作成されている

fabricbolt06

次にhostの登録を行う
画面上部の「Hosts」タブに遷移して「Add Host」をクリックしてサーバの登録を行う
1台ずつしか登録できなさそう…
fabricbolt07

作成したStageのページに戻ってみると登録したサーバが選択できるようになっている
またデフォルトとして登録されているタスクが確認できる

fabricbolt08

試しに「test_env」を実行する

  1. 「Select Host」で先ほど登録したサーバを選択
  2. 「Add Stage Host」で選択したサーバをStageに登録する
  3. 「All Tasks」のプルダウンからtest_envを選択

すると確認画面に遷移してコメントを記述することができる

fabricbolt09

Go!

とりあえず成功した

fabricbolt10

■ 感想

  • 準備が結構面倒
  • リポジトリを指定しての実行は試してどうなるか…
  • 指定時間実行できなさそうな気がする…
  • サーバの登録が1台づつしかできないので面倒だったりする

まとめ

FabricBoltをちゃんと使っていくとすると結構骨が折れそうな気がしました


Be First to Comment

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です