ProvisionerAnsibleでWordPress環境を構築する2018/02/21AnsibleでWordPressの動作環境を構築するplaybookを書きました。Ansibleが2.0系になってからしっかりとつかっていなかったのと、今使っているVPSで稼働しているOSがCentOS6系ということもあり、そろそろCentOS7系にアップデートするときにの動作検証に使おうかなと思って作りました。galaxyから探せばよかったんですけど、今回は自分で書きました。beeete2/wp-install基本的な方針としてソースからのビルドは行わずにyumでパッケージインストールすることにしました。動作検証用といってもなるべく本番環境に合わせたほうがよいと思うのでApache等のミドルウェアの設定はデフォルトではなくてある程度は設定を変更しています。マルチプラットフォームには対応せずに素直にパッケージをインストールするので設定ファイル等はデフォルトの場所をymlにベタ書きしてあります。汎用性は・・・ほぼないです。rootユーザーのパスワードを変更できる(emptyパスワードにはできない)・データベースを作成することができる・MySQLユーザーを作成することができるPHP・remiレポジトリからphp7.1をインストールするchrony・インストール時にデフォルト設定されているserverをコメントアウトする・任意のserverを追加できるmigration・WordPressのバックアップファイルを指定されたディレクトリへ解凍することができる・MySQLのダンプファイルを指定されたDBへ展開することができる使い方Vagrant上で動かすことを想定してますので、デフォルトのホストはlocalhostになっています。普通パッケージインストールした直後にmysql_secure_installationを実行すると思うのですがAnsibleからだと対話形式はできないことはないんでしょうけど、なかなか難しそうだったので諦めました。mysql_secure_installation自体はシェルスクリプトなので、ここに書いてあることをplaybookで実行することにしました。・テストデータベースの削除のようでした。実はこのMySQLのrootユーザーの初期パスワードを変更したか?という状態をどのように検知して冪等性を確保するか少し悩みました。rootユーザーの初期パスワード状態を検知する方法を考えました。1.パスワードを変更したファイルを作って、そのファイルがない場合はパスワードを変更する2.パスワードがemptyの場合はパスワードを変更する1の方法は確実なのですがサーバーに状態を残すことになるので今回は見送って、2の方法で構築しました。2の方法はパスワードがempty状態でないとセットアップが継続できないことになるのですが、仕組みとしては単純なのでこちらにしました。手順としては以下になります。(1)rootユーザーにパスワードなしでログインできるか検証(2)ログインできる場合はrootパスワードを変更する(3)rootユーザーの.my.cnfを配置する(パスワードを設定しておく)ここは、もう少しいいやり方があったら改善します。まとめAnsibleは1.x系のとき触っていたのですが2.0系になって更に便利になっていました。実際に体感できる部分ではblockがすごい便利だったしincludeも思い通りの動きをしてくれたのですごい便利になったなーという感じでした。コメントをキャンセルメールアドレスが公開されることはありません。今回は、JenkinsにiOSアプリをビルドするためのプラグインをインストールしてみたいと思います。Jenkinsのインストールは終わっているものと仮定します。...ProvisionerChefでTomcatをバイナリインストールする(とりあえず動いた編)先日の記事に引き続き、ChefでTomcatをバイナリインストールする練習です。取り急ぎ、先日の記事でなんとなくのレシピの骨子になるようなものを書きました。「URLがUTF-8でデコードされていません。...CIJenkinsでビルド実行時に確認を行う方法Jenkins便利ですねー。ビルドボタン一発で処理が実行されますからね。中には実行が怖いビルドもありますよね・・・。先日インストールしたBerkshelfですが、実行するとエラーが発生しました。エラー内容は取っていないのですが、ChefにバンドルされているRubyがSSLの証明書を見つけられないような感じでした。AFFINGER5.。