cakePHPのソースをローカル上で納品ファイルにする為のシェルスクリプト
GitHubとCapistranoつかって普段はデプロイしているのですが、ローカル上で納品ファイルをつくってscpで本番サーバにアップするような場合は、ローカル上に最新のファイルをPULLしてからcakePHPのデータベース設定の内容とか、デザイナさんがベタ打ちしているスタイルシートのリンクなどを修正する必要があります。
hoge_proディレクトリに納品ファイル一式を作成する場合、 ・hogeディレクトリの中身をgithubからpullして最新版にする ・hoge_proディレクトリにhogeディレクトリの中身をコピーする ・hoge_proディレクトリの、app/Config/database.phpを本番環境用に差し替える ・hoge_proディレクトリのapp/tmp内の不要ファイルを削除する ・hoge_proディレクトリのapp/View内のctpのベタ打URLを修正する そして、SCPで本番サーバにアップします。
これをMacでシェルスクリプトにします。 hoge_proディレクトリ直下にこのシェルスクリプトを置きます。差し替えるdatabase.phpもhoge_pro直下に置いておきます。
#!/bin/bash
cp -R ../hoge/* .cp ../hoge/.htaccess .rm README.mdcp -f database.php app/Config/.rm -rf app/tmp/logs/*rm -rf app/tmp/cache/persistent/*rm -rf app/tmp/cache/models/*find app/View/. -type f | xargs sed -i -e "s/\\/hoge//g"find app/View/. -name "*.*-e*" -type f | xargs rmscp -r . [email protected]:www