Puma and Sidekiq not starting properly through monit after deployment

Viewed 134

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}&current_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
0 Answers
Related