DBごとバックアップし再現する
事前準備
後から、環境が再現されていることを確認するため、vccwで作成したサイトに記事の追加とテーマの変更を行っておきましょう。
現在のDBのエクスポート
vagrant sshでログインし、下記のコマンドを実行すると、現在のDBをエクスポートすることができます。
wp db export /vagrant/wordpress.sql
provision-post.shを利用した自動インポート
VCCWでは、provision-post.shというシェルスクリプトを用意しておくことで、プロビジョニング(初回のvagrant up時の初期設定)の終了後にシェルスクリプトが実行される仕組みになっています。
vccwのフォルダ内にprovision-post.shを作成し、 以下のように記述します。
#!/usr/bin/env bash
# setは環境を設定するコマンド。
# エラーが発生したら即座に終了。トレースを表示
set -ex
# wp-cliを利用して、import.sqlをインポート
if [ -e /vagrant/wordpress.sql ]; then
sudo -u vagrant -- wp db import /vagrant/wordpress.sql
fi
# wp-cli.ymlに書き込み
cat << EOS > /vagrant/wp-cli.yml
path: wordpress
EOS
このように記述しておくことで、vagrant upで初期設定を行った後に、自動的に保存されていたSQLが実行されるようになります。
gitによるバージョン管理
これで、git管理されているvccwのフォルダ内に
- wordpress.sql
provision-post.sh
という2つのファイルが出来上がりました。 こちらを
git add -A git commit -m "dbインポートの仕組みを追加"
として、コミットしておきましょう。
環境の再現
では、一度vagrant destroyで仮想環境を破棄してから、 再度vagrant upで立ち上げてみましょう。 (現在仮想環境内に重要なファイルがある場合には、別のフォルダにcloneしてvagrant upすると良いでしょう。)
正しく記事の追加とテーマの変更が行われた環境が立ち上がれば成功です。