This repository has been archived on 2025-02-14. You can view files and clone it, but cannot push or open issues or pull requests.
esh/esh_nitter/recipes/install.rb

77 lines
2.2 KiB
Ruby
Raw Permalink Normal View History

2025-02-15 00:56:26 +09:00
#
# Cookbook:: esh_nitter
# Recipe:: install
#
# Copyright:: 2022, https://easyself.host
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
git '/home/nitter/nitter' do
repository 'https://github.com/zedeus/nitter.git'
# Sadly nitter poject does not manage any releases nor tags/branches
revision 'HEAD'
user 'nitter'
group 'nitter'
action :sync
notifies :run, 'execute[build nitter]', :immediately
notifies :run, 'execute[generate CSS]', :immediately
notifies :run, 'execute[render MD]', :immediately
end
execute 'build nitter' do
command 'nimble -y build -d:release'
user 'nitter'
login true
cwd '/home/nitter/nitter'
live_stream true
action :nothing
notifies :restart, 'service[nitter]', :delayed
end
execute 'generate CSS' do
command 'nimble scss'
user 'nitter'
login true
cwd '/home/nitter/nitter'
live_stream true
action :nothing
notifies :restart, 'service[nitter]', :delayed
end
execute 'render MD' do
command 'nimble md'
user 'nitter'
login true
cwd '/home/nitter/nitter'
live_stream true
action :nothing
notifies :restart, 'service[nitter]', :delayed
end
template '/home/nitter/nitter/nitter.conf' do
owner 'nitter'
group 'nitter'
mode '0400'
variables title: node['esh']['nitter']['config']['title'],
hostname: node['esh']['nitter']['config']['hostname'],
hmac_key: node['esh']['nitter']['config']['hmac_key'],
replace_twitter: node['esh']['nitter']['config']['replace_twitter'],
replace_youtube: node['esh']['nitter']['config']['replace_youtube']
notifies :restart, 'service[nitter]', :delayed
action :create
end
esh_nginx_basic_proxy node['esh']['nitter']['nginx']['ip_addr'] do
port node['esh']['nitter']['nginx']['port']
end