0

簡単なカスタム レシピの GitHub リポジトリを作成しました。

laravel/
  |- recipes/
     |  - deploy.rb
  |- templates/
     |- default
        |  - database.php.erb

https://github.com/minkruben/Laravel-opsworks.gitとしてリポジトリを Custom Chef Recipes に追加しました

laravel::deployデプロイの「サイクル」を追加しました。

これは私の deploy.rb です:

node[:deploy].each do |app_name, deploy|
 if deploy[:application] == "platform"
 script "set_permissions" do
  interpreter "bash"
  user "root"
  cwd "#{deploy[:deploy_to]}/current/app"
  code <<-EOH
  chmod -R 777 storage
  EOH
end


template "#{deploy[:deploy_to]}/current/app/config/database.php" do
  source "database.php.erb"
  mode 0660
  group deploy[:group]

  if platform?("ubuntu")
    owner "www-data"
  elsif platform?("amazon")   
    owner "apache"
  end

  variables(
    :host =>     (deploy[:database][:host] rescue nil),
    :user =>     (deploy[:database][:username] rescue nil),
    :password => (deploy[:database][:password] rescue nil),
    :db =>       (deploy[:database][:database] rescue nil)
  )

 only_if do
   File.directory?("#{deploy[:deploy_to]}/current")
 end
end

end
end

ubuntu ユーザーを使用して SSH でインスタンスにログインすると、アプリ/ストレージ フォルダーのアクセス許可が変更されapp/config/database.phpず、データベースの詳細が入力されません。

どこかで重要なステップが欠落していますか? ログにエラーはありません。レシピは明確に認識されて読み込まれますが、実行されていないようです。

4

1 に答える 1