capstrano の用語辞典
capstrano の用語辞典
set 関連
:bundle_flags
"--deployment は、自分が管理権限を持たないサーバに対してデプロイする場合、bundle installしてもpermission errorでgemをインストールできないので、プロジェクト直下にvendorディレクトリを作ってそこにgemをインストールしようぜ、というアプローチです。よって、管理権限があるなら不要です。更に、rbenvをインストールしておくと、デプロイユーザごとにgemをインストールできますね。 これにより、更に--deploymentの必要がなくなります。つまり、本番環境でrbenv使っている人は、config/deploy.rb では上記のようにすると良いでしょう、ということでした。"
rbenvがあればCapistranoのbundle:installでdeploymentはいらない
:git_shallow_clone
過去の履歴をどれぐらい取ってくるか。1を指定した場合は、以下と同じ意味になる。
git clone --depth 1 https://github.com/git/git
過去の履歴は取得せず、最新版のみ取得する。通常に比べclone時間が短い。
git リポジトリの最新の履歴だけを取得する shallow clone
:deploy_via, :remote_cache
:git と併用して使う。毎回のデプロイでフルリポジトリクローンせず、サーバーでローカルgitレポジトリを保って、差分を取得する。
:shared_children
"Capistranoではリリース間でファイルを共有するためにいくつかのディレクトリがshared/以下にコピーされ、そちらにシンボリックリンクをはるようになっている。たとえばpublic/assetsとかlogとか。この仕組は任意のディレクトリに対しても使うことができる。"
Capistrano2でsharedにシンボリックリンクするディレクトリを追加する
run と run_locally の違い
ローカル側の処理は、 run_locally リモート側の処理は run ってことなのかな?後で調べよう
http://capistranorb.com/documentation/getting-started/local-tasks/#
deployコマンド
Capstrano のdeployコマンドの種類は覚えておこう。以下の記事でまとめられています。
deployの順序
Capstrano の deploy コマンド実行時のタスクの流れについても覚えておこう。以下の記事の「「タスク」の概念」を参考。