Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spring Cleanup #190

Merged
merged 10 commits into from
Jan 24, 2018
Merged

Spring Cleanup #190

merged 10 commits into from
Jan 24, 2018

Conversation

Tensho
Copy link
Contributor

@Tensho Tensho commented Jan 24, 2018

I'd like to make some obsolete stuff cleanup in the gem. As far as capistrano-sneakers tries to copy common parts from this gem, it will be nice to cleanup here and then copy the code there. It will allow maintainers/contributors to switch between gems much easier.

Major notes

  • Remove capistrano 2 files, because it's support was dropped long time ago. Current gemspec holds dependency version 3.9.0.
  • Sidekiq works with different signals to quit in 4 (USR1) and 5 (TSTP) version, but current manual signal mode sends only USR1.
  • Standard sidekiq binary to control the processes "sidekiqctl" already works with signals, so there is no need to keep a separate branch for enabled "sidekiq_use_signals". Moreover sidekiqctl has very important feature – kill timeout, that allows sidekiq process to be gracefully stopped and, the most important, pidfile removed. For example, for the service restart (stop-start), if deploy script uses only signals, "stop" task just sends the signal and passes execution to the "start" task without waiting of any pidfile deletion. That means deploy script doesn't start the sidekiq due to the process and pidfile existence condition fail ("pid_process_exists?").
  • Capistrano/SSHKit deprecated #background method.
  • Bump 1.0.0 to make people aware about it's stability and maturity. I guess this gem deserved to be called production-ready ^_^
  • [BREAKING CHANGE] If people used custom monit template, they should adjust it to use pid_files variable instead of processes_pids.

Minor notes

  • Renamed methods to stress their purpose.
  • Small adjustments to README (wiki page requires the changes also)

I may squash commits after review if you wish to keep it in a single commit.

Tensho added 10 commits January 24, 2018 11:46
Standard sidekiq binary to control the processes "sidekiqctl" already works with signals, so there is no need to keep a separate branch for enabled "sidekiq_use_signals". Moreover sidekiqctl has very important feature – kill timeout, that allows sidekiq process to be gracefully stopped  and, the most important, pidfile removed. For example, for the service restart (stop-start), if deploy script uses only signals, "stop" task just sends the signal and passes execution to the "start" task without waiting of any pidfile deletion. That means deploy script doesn't start the sidekiq due to the process and pidfile existence condition fail ("pid_process_exists?").
@seuros seuros merged commit 00b0cd2 into seuros:master Jan 24, 2018
@seuros
Copy link
Owner

seuros commented Jan 24, 2018

This is awesome. Releasing the version now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants