resource_name :rails_port
provides :rails_port
+unified_mode true
+
default_action :create
property :site, String, :name_property => true
property :potlatch2_key, String
property :id_key, String
property :oauth_key, String
+property :oauth_application, String
property :nominatim_url, String
property :osrm_url, String
property :google_auth_id, String
depth 1
user new_resource.user
group new_resource.group
- notifies :restart, "passenger_application[#{rails_directory}]"
end
declare_resource :directory, "#{rails_directory}/tmp" do
:name => new_resource.database_name,
:username => new_resource.database_username,
:password => new_resource.database_password
- notifies :restart, "passenger_application[#{rails_directory}]"
end
application_yml = edit_file "#{rails_directory}/config/example.application.yml" do |line|
line.gsub!(/^( *)#oauth_key:.*$/, "\\1oauth_key: \"#{new_resource.oauth_key}\"")
end
+ if new_resource.oauth_application
+ line.gsub!(/^( *)#oauth_application:.*$/, "\\1oauth_application: \"#{new_resource.oauth_application}\"")
+ end
+
if new_resource.nominatim_url
line.gsub!(/^( *)nominatim_url:.*$/, "\\1nominatim_url: \"#{new_resource.nominatim_url}\"")
end
group new_resource.group
mode "664"
content application_yml
- notifies :restart, "passenger_application[#{rails_directory}]"
only_if { ::File.exist?("#{rails_directory}/config/example.application.yml") }
end
"potlatch2_key",
"id_key",
"oauth_key",
+ "oauth_application",
"nominatim_url",
"osrm_url",
"google_auth_id",
"storage_service",
"storage_url",
"tile_cdn_url"
- ).reject { |_k, v| v.nil? }.merge(
+ ).compact.merge(
"server_protocol" => "https",
"server_url" => new_resource.site,
"support_email" => "support@openstreetmap.org",
environment "NOKOGIRI_USE_SYSTEM_LIBRARIES" => "yes"
subscribes :run, "gem_package[bundler#{new_resource.ruby}]"
subscribes :run, "git[#{rails_directory}]"
- notifies :restart, "passenger_application[#{rails_directory}]"
end
execute "#{rails_directory}/db/migrate" do
user new_resource.user
group new_resource.group
subscribes :run, "git[#{rails_directory}]"
- notifies :restart, "passenger_application[#{rails_directory}]"
only_if { new_resource.run_migrations }
end
subscribes :run, "file[#{rails_directory}/config/piwik.yml]"
subscribes :run, "execute[#{rails_directory}/package.json]"
subscribes :run, "execute[#{rails_directory}/app/assets/javascripts/i18n]"
- notifies :restart, "passenger_application[#{rails_directory}]"
only_if { new_resource.build_assets }
end
file "#{rails_directory}/public/export/embed.html" do
action :nothing
subscribes :delete, "git[#{rails_directory}]"
+ subscribes :delete, "file[#{rails_directory}/config/settings.local.yml]"
end
passenger_application rails_directory do
action :nothing
+ subscribes :restart, "git[#{rails_directory}]"
+ subscribes :restart, "file[#{rails_directory}/config/database.yml]"
+ subscribes :restart, "file[create:#{rails_directory}/config/application.yml]"
+ subscribes :restart, "file[#{rails_directory}/config/settings.local.yml]"
+ subscribes :restart, "file[#{rails_directory}/config/storage.yml]"
+ subscribes :restart, "file[#{rails_directory}/config/piwik.yml]"
+ subscribes :restart, "execute[#{rails_directory}/Gemfile]"
+ subscribes :restart, "execute[#{rails_directory}/db/migrate]"
+ subscribes :restart, "execute[#{rails_directory}/package.json]"
+ subscribes :restart, "execute[#{rails_directory}/app/assets/javascripts/i18n]"
+ subscribes :restart, "execute[#{rails_directory}/public/assets]"
only_if { ::File.exist?("/usr/bin/passenger-config") }
end