-
Notifications
You must be signed in to change notification settings - Fork 4
chefのdeployリソースを使ってみる
mechamogera edited this page Aug 29, 2012
·
11 revisions
[release dir]
|-- current -> [release dir]/releases/20120829044144
|-- releases
| |-- 20120829040421
| |-- 20120829042522
| |-- 20120829043409
| |-- 20120829043514
| `-- 20120829044144
`-- shared
- shared
- リリース毎のコードに依存しない設定ファイルや一時ファイルを管理する
- ユーザが管理する必要がある
- railsアプリだと一般的にはconfig、log、pids、systemディレクトリが存在することになる
- releases
- 最新の5つのデプロイしたアプリを保持する
- デプロイプロセスが作成する
- current
- 現在のリリースバージョンへのリンク
- デプロイプロセスが作成する
- デプロイはcheckout、migrate、symlink、restartの4つのスッテプを実行する
- checkout
- 指定されたリビジョンをSCMリソースを使って取得する。
- SCMリソースは取得したコードをshared/cached-copyに配置し、releasesにコピーする
- migrate
- migrateが実行されるなら、Chefはデータベース設定ファイルのsharedからreleases/YYYYMMDDHHMMSSへのシンボルリンクを作成する
- railsアプリでは、migration_commandは一般的にrake db:migrateに設定される
- symlink
- releasesの
- restart