Giter Site home page Giter Site logo

mina-sidekiq's Introduction

mina-sidekiq

mina-sidekiq is a gem that adds tasks to aid in the deployment of Sidekiq using Mina.

Starting with 1.0.0 this gem requires Mina 1.0! (thanks @devvmh)

Support sidekiq > 6.0, reference project capistrano-sidekiq, github: https://github.com/seuros/capistrano-sidekiq

Getting Start

Installation

gem install mina-sidekiq

Example

require 'mina_sidekiq/tasks'
#...

task :setup do
  # sidekiq needs a place to store its pid file and log file
  command %(mkdir -p "#{fetch(:deploy_to)}/shared/pids/")
  command %(mkdir -p "#{fetch(:deploy_to)}/shared/log/")
end

task :deploy do
  deploy do
    # stop accepting new workers
    invoke :'git:clone'
    invoke :'sidekiq:quiet'
    invoke :'deploy:link_shared_paths'
    ...

    on :launch do
      ...
      invoke :'sidekiq:restart'
    end
  end
end

Support sidekiq > 6.0

Set init system to systemd in the mina deploy config:

  set :init_system, :systemd

Enable lingering for systemd user account

  loginctl enable-linger USERACCOUNT

Install systemd.service template file and enable the service with:

  bundle exec mina sidekiq:install

Default name for the service file is sidekiq-env.service. This can be changed as needed, for example:

  set :service_unit_name, "sidekiq-#{fetch(:rails_env)}.service"

Default systemctl command is systemctl --user, this can be changed, for example:

  set :systemctl_command, 'systemctl --user'

For non privileged user (non sudo) usage set up path for systemctl unit file:

  set :service_unit_path, '/home/www/.config/systemd/user'

where www is the username. For details see systemctl doc page

To use systemctl integration with rbenv bundler path must be setted:

  set :bundler_path, '/home/www/.rbenv/shims/bundler'

To get bundler path use:

  which bundler

Integration with upstart

Set init system to upstart in the cap deploy config:

  set :init_system, :upstart

Set upstart service name:

  set :upstart_service_name, 'sidekiq'

Available Tasks

  • sidekiq:stop
  • sidekiq:start
  • sidekiq:restart
  • sidekiq:quiet
  • sidekiq:log

sidekiq > 6.0

  • sidekiq:install
  • sidekiq:uninstall

Available Options

Option Description
sidekiq Sets the path to sidekiq.
sidekiqctl Sets the path to sidekiqctl.
sidekiq_timeout Sets a upper limit of time a worker is allowed to finish, before it is killed.
sidekiq_log Sets the path to the log file of sidekiq.
sidekiq_pid Sets the path to the pid file of a sidekiq worker.
sidekiq_processes Sets the number of sidekiq processes launched.
sidekiq_config Sets the config file path.
sidekiq_configs Sets the config file paths when using more than one sidekiq process with different configuration.

Testing

The test requires a local running ssh server with the ssh keys of the current user added to its ~/.ssh/authorized_keys. In OS X, this is "Remote Login" under the Sharing pref pane. You will also need a working rvm installation.

To run the full blown test suite use:

bundle exec rake test

For faster release cycle use

cd test_env
bundle exec mina deploy --verbose

Copyright

Copyright (c) 2016 Jörg Thalheim [email protected]

See LICENSE for further details.

mina-sidekiq's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

mina-sidekiq's Issues

sidekiq_concurrency overrides concurrency in config sidekiq.yml

sidekiq command line argument "sidekiq -c " overrides concurrency in config file

# ### sidekiq:start desc "Start sidekiq" task :start => :environment do queue %[echo "-----> Start sidekiq"] for_each_process do |pid_file, idx| queue #%{ cd "#{deploy_to}/#{current_path}" #{echo_cmd %[#{sidekiq} -d -e #{rails_env} -C #{sidekiq_config} **-c #{sidekiq_concurrency}** -i #{idx} -P #{pid_file} -L #{sidekiq_log}] } } end end

pull request #12 removes sidekiq_concurrency

sidekiq:quiet fails on first deploy

Since it assumes that current_path exists. Which doesn't on first deploy.

Workaround:

task 'smart:sidekiq:quiet' do
  command "
    if [ -e '#{fetch(:current_path)}' ]; then
      #{get_task_commands('sidekiq:quiet')}
    fi
  "
end

def get_task_commands(task)
  on(:get_task_commands_stage) do
    invoke task
  end
  commands.delete(:get_task_commands_stage).join(" &&\n")
end

Or a more elaborate version (that keeps the generated code nicely indented):

task 'sidekiq:quiet:smart' do
  command "
    if [ -e '#{fetch(:current_path)}' ]; then
      #{indent_but_first(
        6, get_task_commands('sidekiq:quiet')
      ).join(" &&\n")}
    fi
  "
end

def get_task_commands(task)
  on(:get_task_commands_stage) do
    invoke task
  end
  commands.delete(:get_task_commands_stage)
end

def indent_but_first(count, commands)
  commands.map.with_index { |s, i| i > 0 ? indent(count, s) : s }
end

Don't know how to build task 'remote_environment'

Don't know how to build task 'remote_environment' (See the list of available tasks with `mina --tasks`)
/Users/aruprakshit/zeitio/docking/config/deploy.rb:54:in `block (2 levels) in <top (required)>'
/Users/aruprakshit/zeitio/docking/config/deploy.rb:52:in `block in <top (required)>'
/Users/aruprakshit/.rbenv/versions/2.6.6/bin/mina:23:in `load'
/Users/aruprakshit/.rbenv/versions/2.6.6/bin/mina:23:in `<top (required)>'
/Users/aruprakshit/.rbenv/versions/2.6.6/bin/bundle:23:in `load'
/Users/aruprakshit/.rbenv/versions/2.6.6/bin/bundle:23:in `<main>'
Tasks: TOP => sidekiq:quiet
(See full trace by running task with --trace)

Code:

require 'mina/multistage'
require 'mina/bundler'
require 'mina/rails'
require 'mina/git'
require 'mina/puma'
require 'mina/rbenv'
require 'mina_sidekiq/tasks'


esc "Deploys the current version to the server."
task deploy: :environment do
  deploy do
    invoke :'git:clone'
    invoke :'sidekiq:quiet'
    invoke :'deploy:link_shared_paths'
    invoke :'bundle:install'
    # invoke :'rails:db_create' # need to remove after deploy
    invoke :'rails:db_migrate'
    invoke :'rails:assets_precompile'
    invoke :'deploy:cleanup'

    on :launch do
      command "mkdir -p #{fetch(:current_path)}/backend/ruby/tmp/"
      command "touch #{fetch(:current_path)}/backend/ruby/tmp/restart.txt"
      invoke :'sidekiq:restart'
    end
  end
end

Could not locate Gemfile or .bundle/ directory ( ERROR: Deploy failed. )

Here is my deploy.rb:

require 'mina/rails'
require 'mina/git'
require 'mina_sidekiq/tasks'

# require 'mina/rbenv'  # for rbenv support. (https://rbenv.org)
# require 'mina/rvm'    # for rvm support. (https://rvm.io)

# Basic settings:
#   domain       - The hostname to SSH to.
#   deploy_to    - Path to deploy into.
#   repository   - Git repo to clone from. (needed by mina/git)
#   branch       - Branch name to deploy. (needed by mina/git)

# set :application_name, 'muse'
set :domain, 'xx.xxx.xx.xxx'
set :deploy_to, '/home/deploy/app'
set :repository, '[email protected]:KudosX/muse.git'
set :branch, 'master'

# Optional settings:
set :user, 'deploy'          # Username in the server to SSH to.
#   set :port, '30000'       # SSH port number.
set :forward_agent, true     # SSH forward_agent.

# shared dirs and files will be symlinked into the app-folder by the 'deploy:link_shared_paths' step.
set :shared_dirs, fetch(:shared_dirs, []).push('log', 'tmp', 'public', 'tmp/pids', 'tmp/sockets')
set :shared_files, fetch(:shared_files, []).push(
  'config/database.yml',
  'config/secrets.yml',
  'config/app_credentials.yml',
  'config/omni_contacts.yml',
  'config/cable.yml',
  'config/ses.yml'
)

# This task is the environment that is loaded for all remote run commands, such as
# `mina deploy` or `mina rake`.
task :environment do
  # If you're using rbenv, use this to load the rbenv environment.
  # Be sure to commit your .ruby-version or .rbenv-version to your repository.
  # invoke :'rbenv:load'

  # For those using RVM, use this to load an RVM version@gemset.
  # invoke :'rvm:use', 'ruby-1.9.3-p125@default'
end

# Put any custom commands you need to run at setup
# All paths in `shared_dirs` and `shared_paths` will be created on their own.
task :setup do
  # command %{rbenv install 2.3.0}
  command %[mkdir -p "#{deploy_to}/current"]
  command %(mkdir -p "#{fetch(:deploy_to)}/shared/pids/")
  command %(mkdir -p "#{fetch(:deploy_to)}/shared/log/")
  command %[touch "#{fetch(:shared_path)}/config/database.yml"]
  command %[touch "#{fetch(:shared_path)}/config/secrets.yml"]
  command %[touch "#{fetch(:shared_path)}/config/app_credentials.yml"]
  command %[touch "#{fetch(:shared_path)}/config/omni_contacts.yml"]
  command %[touch "#{fetch(:shared_path)}/config/cable.yml"]
  command %[touch "#{fetch(:shared_path)}/config/ses.yml"]
  command  %[echo "-----> Be sure to edit '#{fetch(:shared_path)}/config/database.yml', 'cable.yml', 'secrets.yml', 'app_credentials.yml' and 'omni_contacts.yml'."]
end

desc "Deploys the current version to the server."
task :deploy do
  # uncomment this line to make sure you pushed your local branch to the remote origin
  # invoke :'git:ensure_pushed'
  deploy do
    # Put things that will set up an empty directory into a fully set-up
    # instance of your project.
    # stop accepting new workers
    invoke :'sidekiq:quiet'
    invoke :'git:clone'
    invoke :'deploy:link_shared_paths'
    invoke :'bundle:install'
    invoke :'rails:db_create' # later to remove
    invoke :'rails:db_migrate'
    invoke :'rails:assets_precompile'
    invoke :'deploy:cleanup'

    on :launch do
      in_path(fetch(:current_path)) do
        command %{mkdir -p tmp/}
        command %{touch tmp/restart.txt}
      end

      invoke :'sidekiq:restart'
    end
  end

  # you can use `run :local` to run tasks on local machine before of after the deploy scripts
  # run(:local){ say 'done' }
end

task :'elasticsearch:start' do
  comment 'start elasticsearch service'
  command %{sudo systemctl start elasticsearch.service}
end

task :'elasticsearch:stop' do
  comment 'stop elasticsearch service'
  command %{sudo systemctl stop elasticsearch.service}
end

# For help in making your deploy script, see the Mina documentation:
#
#  - https://github.com/mina-deploy/mina/tree/master/docs

While it is trying to restart I am getting below error:

# ... skipped....
-----> Migrating database
       $ RAILS_ENV="production" bundle exec rake db:migrate
       ** Invoke db:migrate (first_time)
       ** Invoke environment (first_time)
       ** Execute environment
       ** Invoke db:load_config (first_time)
       ** Execute db:load_config
       ** Execute db:migrate
       ** Invoke db:_dump (first_time)
       ** Execute db:_dump
       Files /home/deploy/app/current/vendor/assets/javascripts/jquery.webticker.min.js and ./vendor/assets/javascripts/jquery.webticker.min.js differ
       Files /home/deploy/app/current/vendor/assets/javascripts/lodash.js and ./vendor/assets/javascripts/lodash.js differ
-----> Precompiling asset files
       $ RAILS_ENV="production" bundle exec rake assets:precompile
       ** Invoke assets:precompile (first_time)
       ** Invoke assets:environment (first_time)
       ** Execute assets:environment
       ** Invoke environment (first_time)
       ** Execute environment
       ** Execute assets:precompile
-----> Cleaning up old releases (keeping 5)
       $ cd /home/deploy/app/releases
       $ count=$(ls -A1 | sort -rn | wc -l)
       $ remove=$((count > 5 ? count - 5 : 0))
       $ ls -A1 | sort -rn | tail -n $remove | xargs rm -rf {}
       /home/deploy/app/tmp/build-150031837621386
-----> Deploy finished
-----> Building
-----> Moving build to /home/deploy/app/releases/1
       $ mv "$build_path" "$release_path"
       $ cd "$release_path"
-----> Build finished
-----> Launching
-----> Updating the /home/deploy/app/current symlink
       $ ln -nfs "$release_path" "/home/deploy/app/current"
       $ cd "/home/deploy/app/current"
       $ cd /home/deploy/app/current
       $ mkdir -p tmp/
       $ touch tmp/restart.txt
       /home/deploy/app/current
-----> Stop sidekiq
       $ cd /home/deploy/app/current
       $ if [ -f /home/deploy/app/shared/pids/sidekiq.pid ] && kill -0 `cat /home/deploy/app/shared/pids/sidekiq.pid`> /dev/null 2>&1; then
                     RAILS_ENV="production" bundle exec sidekiqctl stop /home/deploy/app/shared/pids/sidekiq.pid 11
                   else
                     echo 'Skip stopping sidekiq (no pid file found)'
                   fi
       Skip stopping sidekiq (no pid file found)
       /home/deploy/app/current
-----> Start sidekiq
       $ cd /home/deploy/app/current
       $ bundle exec sidekiq -d -e production  -C /home/deploy/app/current/config/sidekiq.yml -i 0 -P /home/deploy/app/shared/pids/sidekiq.pid -L /home/deploy/app/current/log/sidekiq.log
       Could not locate Gemfile or .bundle/ directory
 !     ERROR: Deploy failed.
-----> Cleaning up build
       Deleting release
       $ rm -rf "$release_path"
       Connection to 'xx.xxx.xx.xxx' closed.

       Unlinking current
       $ rm -f "deploy.lock"
       OK
 !     Run Error

Can anyone tell me what is wrong?

Distributor ID: Ubuntu
Description: Ubuntu 16.04.2 LTS
Release: 16.04
Codename: xenial

installed ruby as described here https://askubuntu.com/questions/839775/how-do-i-upgrade-to-ruby-2-2-on-my-ubuntu-system/839782#839782.

I tried this suggestion but no win.

undefined method `set_default' for main:Object (NoMethodError)

When starting Rails server or mina deploy, this error occurred.

/Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/mina-0.3.0/lib/mina/bundler.rb:12:in `<top (required)>': undefined method `set_default' for main:Object (NoMethodError)
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/mina-sidekiq-0.1.1/lib/mina-sidekiq/sidekiq.rb:21:in `require'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/mina-sidekiq-0.1.1/lib/mina-sidekiq/sidekiq.rb:21:in `<top (required)>'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/mina-sidekiq-0.1.1/lib/mina-sidekiq.rb:2:in `require'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/mina-sidekiq-0.1.1/lib/mina-sidekiq.rb:2:in `<module:MinaSidekiq>'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/mina-sidekiq-0.1.1/lib/mina-sidekiq.rb:1:in `<top (required)>'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `require'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `block (2 levels) in require'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `each'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `block in require'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `each'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `require'
        from /Users/takayukitakagi/.rbenv/versions/1.9.3-p392/lib/ruby/gems/1.9.1/gems/bundler-1.3.5/lib/bundler.rb:132:in `require'
        from /Users/takayukitakagi/foo/config/application.rb:7:in `<top (required)>'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/railties-3.2.14/lib/rails/commands.rb:53:in `require'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/railties-3.2.14/lib/rails/commands.rb:53:in `block in <top (required)>'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/railties-3.2.14/lib/rails/commands.rb:50:in `tap'
        from /Users/takayukitakagi/foo/vendor/bundle/ruby/1.9.1/gems/railties-3.2.14/lib/rails/commands.rb:50:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

Gemfile includes these gems.

# other gems ...
gem 'mina', '~> 0.3.0'
gem 'mina-sidekiq', '~> 0.1.1'
# other gems ...

When I remove gem mina-sidekiq from Gemfile and run bundle update, Rails server succeed to start. Using mina 0.2.1 and mina-sidekiq 0.1.0 no problems.

invoke :'sidekiq:restart' doesn't work in on :launch do block

As the subject says if I put invoke :'sidekiq:restart' in the on :launch do block of the config/deploy.rb file it gives me the infamous bash: line 171: bundle: command not found error. After a lot of trial and error I found that if I move it up in the deploy do block, it works. It also works from the command line: mina sidekiq:restart. What could be the problem?

Cannot restart sidekiq

Seems that re/start doesn't work for me. The only way to start sidekiq is when i removed 'nohup' command, but then sidekiq stop running in the background after i log out from the shell.

Sidekiq not started

Hello
i'm having a strange issue with mina-sidekiq. I've been using it in a lot of projects without any issues but in my newest app, that issue prevents sidekiq from being started.

The thing is - invoke :'sidekiq:restart' triggers a following command:

bundle exec sidekiq -d -e production -C /home/deploy/my_app/current/config/sidekiq.yml -i

which is obviously wrong (the -i is empty + there is no pid file specified) and also there is no log file specified (which also blocks sidekiq from starting throwing an exception).

My deploy.rb is created exactly as in the readme, i have no any settings overwritten (all are defaults), my mina-sidekiq is at 0.3.1 and mina at 0.3.7

Sidekiq is not properly setup with bundler

I am having an issue to get plugin to run. The command that fails during deployment is:

bundle exec sidekiq -d -e production -C /home/travelninja/app/current/config/sidekiq.yml -i 0 -P /home/travelninja/app/shared/pids/sidekiq.pid -L /home/travelninja/app/current/log/sidekiq.log

The problem as far as I can see is that it is using bundle exec. It should not be using that, it should use the bundler data that is deployed by mina during every deployment.

I think I have to manually set sidekiq. But where to?

Below is my full deploy.rb:

require 'mina/rails'
require 'mina/git'
require 'mina/rbenv'  # for rbenv support. (https://rbenv.org)
# require 'mina/rvm'    # for rvm support. (https://rvm.io)
require 'mina_sidekiq/tasks'

# Basic settings:
#   domain       - The hostname to SSH to.
#   deploy_to    - Path to deploy into.
#   repository   - Git repo to clone from. (needed by mina/git)
#   branch       - Branch name to deploy. (needed by mina/git)

set :domain, 'testenv.tripl.de'
set :deploy_to, '/home/travelninja/app'
set :repository, '[email protected]:gotripl/app.git'
set :branch, 'master'
# set :sidekiq, 'vendor/bundle/sidekiq'

# Optional settings:
set :user, 'travelninja'          # Username in the server to SSH to.
#   set :port, '30000'           # SSH port number.
#   set :forward_agent, true     # SSH forward_agent.

# They will be linked in the 'deploy:link_shared_paths' step.
# set :shared_dirs, fetch(:shared_dirs, []).push('config')
set :shared_files, fetch(:shared_files, []).push('.rbenv-vars')

# This task is the environment that is loaded all remote run commands, such as
# `mina deploy` or `mina rake`.
task :environment do
  # If you're using rbenv, use this to load the rbenv environment.
  # Be sure to commit your .ruby-version or .rbenv-version to your repository.
  invoke :'rbenv:load'

  # For those using RVM, use this to load an RVM version@gemset.
  # invoke :'rvm:use', 'ruby-1.9.3-p125@default'
end

# Put any custom commands you need to run at setup
# All paths in `shared_dirs` and `shared_paths` will be created on their own.
task :setup do
  # command %{rbenv install 2.3.0}
  command %(mkdir -p "#{fetch(:deploy_to)}/shared/pids/")
  command %(mkdir -p "#{fetch(:deploy_to)}/shared/log/")
end

desc "Deploys the current version to the server."
task :deploy do
  # uncomment this line to make sure you pushed your local branch to the remote origin
  # invoke :'git:ensure_pushed'
  deploy do
    # Put things that will set up an empty directory into a fully set-up
    # instance of your project.
    invoke :'sidekiq:quiet'
    invoke :'git:clone'
    invoke :'deploy:link_shared_paths'
    invoke :'bundle:install'
    invoke :'rails:db_migrate'
    invoke :'rails:assets_precompile'
    invoke :'deploy:cleanup'

    on :launch do
      invoke :'sidekiq:restart'
      in_path(fetch(:current_path)) do
        command %{mkdir -p tmp/}
        command %{touch tmp/restart.txt}
      end
    end
  end

  # you can use `run :local` to run tasks on local machine before of after the deploy scripts
  # run :local { say 'done' }
end

# For help in making your deploy script, see the Mina documentation:
#
#  - https://github.com/mina-deploy/mina/docs

Don't know how to build task 'sidekiq:quiet'

reference

require 'mina-sidekiq'
...

task :deploy => :enviroment do
  deploy do
    # stop accepting new workers
    invoke :'sidekiq:quiet'
    invoke :'git:clone'
    ...

    to :launch do
      ...
      invoke :'sidekiq:restart'
    end
  end
end

errors:

mina aborted!
Don't know how to build task 'sidekiq:quiet'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/lib/mina/helpers.rb:19:in `invoke'
/home/outman/workspace/inav/config/deploy.rb:62:in `block (2 levels) in <top (required)>'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/lib/mina/deploy_helpers.rb:29:in `block in deploy_script'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/lib/mina/helpers.rb:210:in `isolate'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/lib/mina/deploy_helpers.rb:28:in `deploy_script'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/lib/mina/deploy_helpers.rb:12:in `deploy'
/home/outman/workspace/inav/config/deploy.rb:59:in `block in <top (required)>'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/bin/mina:53:in `block (2 levels) in <top (required)>'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/bin/mina:26:in `block in <top (required)>'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/bin/mina:25:in `instance_eval'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/gems/mina-0.3.0/bin/mina:25:in `<top (required)>'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/bin/mina:19:in `load'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/bin/mina:19:in `<main>'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/bin/ruby_noexec_wrapper:14:in `eval'
/home/outman/.rvm/gems/ruby-1.9.3-p392@inav/bin/ruby_noexec_wrapper:14:in `<main>'
Tasks: TOP => deploy
(See full trace by running task with --trace)

How to enable sidekiq.yml

Hi, guys,

I don't know how to ask mina-sidekiq to use -c config/sidekiq.yml, is there any clue for this? thanks a lot

require environment

It would be nice if you required the :environment rake task (task :restart => :environment). For example I set up rvm in the environment task (as suggested by comments in the template from mina init), which needs to be done for this task to work (when ran individually).

Also, in comparison to the 'official' sidekiq capistrano recipe, you could take care of 2 more small things:

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.