55 lines
1.1 KiB
Ruby
55 lines
1.1 KiB
Ruby
#
|
|
# Cookbook Name:: kosmos-ipfs
|
|
# Recipe:: kredits_pinner
|
|
#
|
|
|
|
include_recipe 'kosmos-nodejs'
|
|
|
|
app_name = "kredits-ipfs-pinner"
|
|
deploy_user = "ipfs"
|
|
deploy_group = "ipfs"
|
|
|
|
group deploy_group
|
|
|
|
path_to_deploy = "/opt/#{app_name}"
|
|
application path_to_deploy do
|
|
owner deploy_user
|
|
group deploy_group
|
|
|
|
git do
|
|
user deploy_user
|
|
group deploy_group
|
|
repository "https://gitea.kosmos.org/kosmos/#{app_name}.git"
|
|
revision node['kosmos-ipfs']['kredits-pinner']['revision']
|
|
end
|
|
|
|
npm_install do
|
|
user deploy_user
|
|
end
|
|
|
|
execute "systemctl daemon-reload" do
|
|
command "systemctl daemon-reload"
|
|
action :nothing
|
|
end
|
|
|
|
template "/lib/systemd/system/#{app_name}.service" do
|
|
source 'nodejs.systemd.service.erb'
|
|
owner 'root'
|
|
group 'root'
|
|
mode '0640'
|
|
variables(
|
|
user: deploy_user,
|
|
group: deploy_group,
|
|
app_dir: path_to_deploy,
|
|
entry: "/usr/bin/node /usr/bin/npm start",
|
|
environment: {}
|
|
)
|
|
notifies :run, "execute[systemctl daemon-reload]", :delayed
|
|
notifies :restart, "service[#{app_name}]", :delayed
|
|
end
|
|
|
|
service app_name do
|
|
action [:enable, :start]
|
|
end
|
|
end
|