Deploy RTL without the deprecated application cookbook

This commit is contained in:
Greg Karékinian 2023-06-28 16:31:11 +02:00
parent 9378df23db
commit 57fdf0723f
3 changed files with 49 additions and 58 deletions

View File

@ -74,13 +74,8 @@ node.default['rtl']['revision'] = 'v0.12.1'
node.default['rtl']['host'] = '10.1.1.163' node.default['rtl']['host'] = '10.1.1.163'
node.default['rtl']['port'] = '3000' node.default['rtl']['port'] = '3000'
node.default['lndhub']['repo'] = 'https://gitea.kosmos.org/kosmos/lndhub.git'
node.default['lndhub']['revision'] = 'master'
node.default['lndhub']['port'] = '3023'
node.default['lndhub']['domain'] = 'lndhub.kosmos.org'
node.default['lndhub-go']['repo'] = 'https://github.com/getAlby/lndhub.go.git' node.default['lndhub-go']['repo'] = 'https://github.com/getAlby/lndhub.go.git'
node.default['lndhub-go']['revision'] = '0.12.0' node.default['lndhub-go']['revision'] = '0.14.0'
node.default['lndhub-go']['source_dir'] = '/opt/lndhub-go' node.default['lndhub-go']['source_dir'] = '/opt/lndhub-go'
node.default['lndhub-go']['port'] = 3026 node.default['lndhub-go']['port'] = 3026
node.default['lndhub-go']['domain'] = 'lndhub.kosmos.org' node.default['lndhub-go']['domain'] = 'lndhub.kosmos.org'

View File

@ -7,7 +7,6 @@ long_description 'Installs/configures bitcoin-related software'
version '0.1.0' version '0.1.0'
chef_version '>= 14.0' chef_version '>= 14.0'
depends 'application_javascript'
depends 'ark' depends 'ark'
depends 'backup' depends 'backup'
depends 'firewall' depends 'firewall'

View File

@ -51,60 +51,57 @@ if node['boltz']
rtl_config[:nodes][0][:Settings][:boltzServerUrl] = "https://#{node['boltz']['rest_host']}:#{node['boltz']['rest_port']}" rtl_config[:nodes][0][:Settings][:boltzServerUrl] = "https://#{node['boltz']['rest_host']}:#{node['boltz']['rest_port']}"
end end
application rtl_dir do git rtl_dir do
user bitcoin_user
group bitcoin_group
repository node['rtl']['repo']
revision node['rtl']['revision']
notifies :restart, "systemd_unit[#{app_name}.service]", :delayed
end
execute "npm install" do
cwd rtl_dir
environment "HOME" => rtl_dir
user bitcoin_user
end
file "#{rtl_dir}/RTL-Config.json" do
owner bitcoin_user owner bitcoin_user
group bitcoin_group group bitcoin_group
mode '0640'
content rtl_config.to_json
notifies :restart, "systemd_unit[#{app_name}.service]", :delayed
end
git do systemd_unit "#{app_name}.service" do
user bitcoin_user content({
group bitcoin_group Unit: {
repository node['rtl']['repo'] Description: 'Ride The Lightning',
revision node['rtl']['revision'] Documentation: ['https://github.com/Ride-The-Lightning/RTL'],
notifies :restart, "systemd_unit[rtl.service]", :delayed Requires: 'lnd.service',
end After: 'lnd.service'
},
npm_install do Service: {
user bitcoin_user User: bitcoin_user,
end Group: bitcoin_group,
Type: 'simple',
file "#{rtl_dir}/RTL-Config.json" do # ExecStartPre: '/bin/sleep 120',
owner bitcoin_user ExecStart: "/usr/bin/node #{rtl_dir}/rtl.js",
group bitcoin_group Restart: 'always',
mode '0640' RestartSec: '30',
content rtl_config.to_json TimeoutSec: '120',
notifies :restart, "systemd_unit[rtl.service]", :delayed PrivateTmp: true,
end ProtectSystem: 'full',
NoNewPrivileges: true,
systemd_unit 'rtl.service' do PrivateDevices: true,
content({ },
Unit: { Install: {
Description: 'Ride The Lightning', WantedBy: 'multi-user.target'
Documentation: ['https://github.com/Ride-The-Lightning/RTL'], }
Requires: 'lnd.service', })
After: 'lnd.service' verify false
}, triggers_reload true
Service: { action [:create, :enable, :start]
User: bitcoin_user,
Group: bitcoin_group,
Type: 'simple',
# ExecStartPre: '/bin/sleep 120',
ExecStart: "/usr/bin/node #{rtl_dir}/rtl.js",
Restart: 'always',
RestartSec: '30',
TimeoutSec: '120',
PrivateTmp: true,
ProtectSystem: 'full',
NoNewPrivileges: true,
PrivateDevices: true,
},
Install: {
WantedBy: 'multi-user.target'
}
})
verify false
triggers_reload true
action [:create, :enable, :start]
end
end end
include_recipe 'firewall' include_recipe 'firewall'