I have recently added fillable-pdf gem into my Rails application after adding gem and install dependencies related to Gem monit is not able to restart puma and sidekiq.
Before adding this stuff everything working as expected by Capistrano deployment.
Currenty I'm restarting puma manually and adding sidekiq into screen by below command.
bundle exec sidekiq -e production -C config/sidekiq.yml -L log/sidekiq.log -d
I'm stuck, Please guide me if somebody has gone through this issue.
Added stuff:
Gem https://github.com/vkononov/fillable-pdf
Ubuntu/CentOS: /usr/lib/jvm/java-1.8.0-openjdk
sudo nano /etc/environment
JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
sudo nano /etc/bash.bashrc
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
sudo ln -sf /usr/lib/jvm/java-11-openjdk-amd64/bin/java /usr/bin/java
sudo gem install rjb -v '1.6.4' --source 'https://rubygems.org/'
here is the deploy.rb file
append :linked_files, ".env", "config/master.key"
append :linked_dirs, "log", "tmp/pids", "tmp/cache", "tmp/sockets", "public/system", "public/packs", ".bundle", "node_modules"
set :application, "xxxxxxx"
set :repo_url, "xxxxxxxxxx"
set :ssh_options, { forward_agent: true }
set :assets_prefix, 'generated'
set :puma_init_active_record, true
set :puma_threads, [0, 8]
# set :puma_workers, 2
set :nginx_config_name, -> { "#{fetch(:application)}_#{fetch :rails_env}" }
set :puma_monit_service_name, -> { "puma_#{fetch(:application)}_#{fetch(:rails_env)}" }
# set :sidekiq_log, nil
set :sidekiq_env, -> { fetch :rails_env }
# set :sidekiq_concurrency, 8
# set :sidekiq_processes, 2
set :init_system, :systemd
set :service_unit_name, -> { "sidekiq-#{fetch :application}-#{fetch :rails_env}.service" }
# set :rollbar_token, '7a3015f6a90b4019bf39bc169b99d3ec'
# set :rollbar_env, Proc.new { fetch :stage }
# set :rollbar_role, Proc.new { :app }
set :whenever_path, -> { release_path }
set :whenever_variables, -> { "'environment=#{fetch :whenever_environment}¤t_path=#{release_path}&shared_path=#{shared_path}'" }
# set :bundle_env_variables, -> { { DEPLOYMENT_NAME: fetch(:deployment_name) } }
task 'deploy:assets:symlink_customizations' do
on roles(:web) do |host|
execute "rm -rf #{release_path}/app/js/customizations/current"
execute "ln -s #{host.properties.deployment_name} #{release_path}/app/js/customizations/current"
end
end
before "deploy:assets:precompile", "deploy:assets:symlink_customizations"
before "deploy:assets:precompile", "deploy:yarn_install"
namespace :deploy do
desc "Run rake yarn install"
task :yarn_install do
on roles(:web) do
within release_path do
execute("cd #{release_path} && yarn install --silent --no-progress --no-audit --no-optional")
end
end
end
end