https://github.com/nishidayuya/redmine_solid_queue
Redmine Solid Queue plugin: Easiest Solid Queue installation way for Redmine
https://github.com/nishidayuya/redmine_solid_queue
redmine redmine-plugin
Last synced: 9 months ago
JSON representation
Redmine Solid Queue plugin: Easiest Solid Queue installation way for Redmine
- Host: GitHub
- URL: https://github.com/nishidayuya/redmine_solid_queue
- Owner: nishidayuya
- License: mit
- Created: 2025-07-21T08:15:43.000Z (11 months ago)
- Default Branch: master
- Last Pushed: 2025-08-03T08:36:25.000Z (10 months ago)
- Last Synced: 2025-08-15T23:50:17.058Z (10 months ago)
- Topics: redmine, redmine-plugin
- Language: Ruby
- Homepage:
- Size: 113 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Redmine Solid Queue plugin: Easiest Solid Queue installation way for Redmine
[](https://raw.githubusercontent.com/nishidayuya/redmine_solid_queue/master/LICENSE.txt)
[](https://github.com/nishidayuya/redmine_solid_queue/tags)
## Installation
### Setup tables
Clone the plugin into your Redmine plugins directory.
```console
$ cd /path/to/redmine/plugins/
$ git clone https://github.com/nishidayuya/redmine_solid_queue.git
```
Run `redmine:plugins:migrate`
```console
$ cd /path/to/redmine/
$ bin/rails redmine:plugins:migrate
```
Restart your Redmine.
Browse to Information tab from Redmine Administration page(/admin/info) and check below:

### Run job supervisor
#### Puma application server case:
`redmine_solid_queue` automatically runs job supervisor.
If you don't need automatically running, set an environment `REDMINE_SOLID_QUEUE_DISABLE_PUMA_PLUGIN=1` to Redmine, and setup [Other application server case:](#other-application-server-case)
#### Other application server case:
Temporary start job supervisor in order to process the queue and send the emails:
```console
$ export SECRET_KEY_BASE=1234567890abcdef1234567890abcdef # if needed
$ RAILS_ENV=production plugins/redmine_solid_queue/bin/jobs start
```
Output example of startup process:
```
I, [2025-08-03T17:07:29.504850 #687084] INFO -- : SolidQueue-1.2.0 Started Supervisor (90.1ms) pid: 687084, hostname: "yoshiyuki", process_id: 86, name: "supervisor-f74eb0dbbb9a068755d8"
I, [2025-08-03T17:07:29.557808 #687107] INFO -- : SolidQueue-1.2.0 Started Dispatcher (46.0ms) pid: 687107, hostname: "yoshiyuki", process_id: 87, name: "dispatcher-a75e9ca8e30e070bfc0a", polling_interval: 1, batch_size: 500, concurrency_maintenance_interval: 600
I, [2025-08-03T17:07:29.559142 #687111] INFO -- : SolidQueue-1.2.0 Started Worker (42.5ms) pid: 687111, hostname: "yoshiyuki", process_id: 88, name: "worker-229534c81ee3c5f8c8d3", polling_interval: 0.1, queues: "*", thread_pool_size: 3
```
Output example of job processing:
```
I, [2025-08-03T17:10:43.773655 #687589] INFO -- : [ActiveJob] [Mailer::DeliveryJob] [243c623f-381f-427f-829e-616017f6c0af] Performing Mailer::DeliveryJob (Job ID: 243c623f-381f-427f-829e-616017f6c0af) from SolidQueue(mailers) enqueued at 2025-08-03T08:10:43.338456955Z with arguments: "Mailer", "issue_edit", "deliver_now", {:args=>[#>, #>]}
I, [2025-08-03T17:10:44.440619 #687589] INFO -- : [ActiveJob] [Mailer::DeliveryJob] [243c623f-381f-427f-829e-616017f6c0af] Performed Mailer::DeliveryJob (Job ID: 243c623f-381f-427f-829e-616017f6c0af) from SolidQueue(mailers) in 787.25ms
```
If everything went well, stop the command.
Configure job supervisor to run as a system service: see https://www.redmine.org/projects/redmine/wiki/SolidQueueConfiguration#5-Configure-Solid-Queue-supervisor-to-run-as-a-system-service and use `plugins/redmine_solid_queue/bin/jobs` instead of `bin/jobs`
## Uninstallation
Run `redmine:plugins:migrate` to remove `redmine_solid_queue` plugin's table.
```console
$ cd /path/to/redmine/
$ bin/rails redmine:plugins:migrate NAME=redmine_solid_queue VERSION=0
```
Remove plugin directory
```console
$ cd /path/to/redmine/plugins/
$ rm -rf redmine_solid_queue_plugin
```