diff --git a/bare/Gemfile b/bare/Gemfile new file mode 100644 index 00000000..9e50ec3c --- /dev/null +++ b/bare/Gemfile @@ -0,0 +1,6 @@ +# frozen_string_literal: true + +source "https://rubygems.org" + +gem "sidekiq", path: ".." +gem "rackup" diff --git a/bare/boot.rb b/bare/boot.rb new file mode 100644 index 00000000..376ef359 --- /dev/null +++ b/bare/boot.rb @@ -0,0 +1 @@ +require "sidekiq/api" diff --git a/bare/simple.ru b/bare/simple.ru new file mode 100644 index 00000000..83af458f --- /dev/null +++ b/bare/simple.ru @@ -0,0 +1,19 @@ +# Easiest way to run Sidekiq::Web. +# Run with "bundle exec rackup simple.ru" + +require "sidekiq/web" + +# A Web process always runs as client, no need to configure server +Sidekiq.configure_client do |config| + config.redis = {url: "redis://localhost:6379/0", size: 1} +end + +Sidekiq::Client.push("class" => "HardWorker", "args" => []) + +# In a multi-process deployment, all Web UI instances should share +# this secret key so they can all decode the encrypted browser cookies +# and provide a working session. +# Rails does this in /config/initializers/secret_token.rb +secret_key = SecureRandom.hex(32) +use Rack::Session::Cookie, secret: secret_key, same_site: true, max_age: 86400 +run Sidekiq::Web