-
Notifications
You must be signed in to change notification settings - Fork 0
Installation
guyinwonder168 edited this page Feb 7, 2026
·
2 revisions
This guide covers installation of the Redmine Webhook Plugin for production Redmine environments.
- Prerequisites
- Method 1: Automated Installer (Recommended)
- Method 2: Manual Installation
- Installation Verification
- Uninstallation
- Troubleshooting Installation
| Requirement | Minimum | Recommended |
|---|---|---|
| Redmine | 5.1.0 | Latest stable |
| Ruby | 3.0 | 3.2+ |
| Database | SQLite 3+ | PostgreSQL 12+ / MySQL 8+ |
| Web Server | Any Redmine-compatible | Nginx + Puma / Apache |
| Disk Space | 100 MB | 500 MB+ for logs |
| Network | HTTPS outbound | Stable internet connection |
# Check Ruby version
ruby -v
# Check Redmine version
cd /var/www/redmine && cat VERSION
# Check bundler
bundle -vYou need either:
- Root access for installation, OR
- Sudo access on Redmine server
- Outbound HTTPS (port 443) to webhook endpoints
- DNS resolution for webhook domain names
- No proxy blocking outbound connections
# Download latest release
wget https://github.com/guyinwonder168/redmine_webhook_plugin/archive/refs/tags/v1.0.0-RC1.tar.gz
# Extract
tar -xzf redmine_webhook_plugin-v1.0.0-RC1.tar.gz
cd redmine_webhook_plugin# Basic installation
sudo ./installer/install.sh -d /var/www/redmine
# Installation with web server restart
sudo ./installer/install.sh -d /var/www/redmine -R -u www-data
# Installation with backup
sudo ./installer/install.sh -d /var/www/redmine -b /backup/redmine_plugin| Option | Short | Description | Default |
|---|---|---|---|
--redmine-dir |
-d |
Redmine installation path | Required |
--source |
-s |
Plugin source or GitHub URL | Current directory |
--backup |
-b |
Backup directory | ./backups/timestamp |
--skip-backup |
-B |
Skip backup | false |
--skip-migrations |
-M |
Skip DB migrations | false |
--restart-server |
-R |
Restart web server | false |
--web-user |
-u |
Web server user | (none) |
--rails-env |
-e |
Rails environment | production |
--version |
-v |
Plugin version to install | 1.0.0-RC1 |
--help |
-h |
Show help | - |
# Full production installation
sudo ./installer/install.sh \
--redmine-dir /var/www/redmine \
--web-user www-data \
--restart-server \
--backup /backups/redmine_plugin_$(date +%Y%m%d)# Clone from GitHub
cd /var/www/redmine/plugins
git clone https://github.com/guyinwonder168/redmine_webhook_plugin.git
# OR extract from archive
tar -xzf redmine_webhook_plugin-v1.0.0-RC1.tar.gz -C /var/www/redmine/plugins/cd /var/www/redmine
bundle installcd /var/www/redmine
RAILS_ENV=production bundle exec rake redmine:plugins:migrate NAME=redmine_webhook_plugin# For Puma/Unicorn
sudo systemctl restart puma
# For Apache + Passenger
sudo systemctl reload apache2
# For Nginx + Puma
sudo systemctl restart nginx
sudo systemctl restart puma- Login to Redmine as administrator
- Navigate to: Administration > Plugins
- Look for: Redmine Webhook Plugin in the list
- Verify version: 1.0.0-RC1
cd /var/www/redmine
RAILS_ENV=production bundle exec rails db
# Run in Rails console
ActiveRecord::Base.connection.tablesExpected tables:
webhook_endpointswebhook_deliveries
# For Puma
sudo journalctl -u puma -n 50
# For Apache
sudo tail -f /var/log/apache2/error.logLook for:
- Plugin loaded without errors
- No migration errors
- Database connections successful
cd redmine_webhook_plugin
sudo ./installer/uninstall.sh -d /var/www/redmine -R| Option | Short | Description | Default |
|---|---|---|---|
--redmine-dir |
-d |
Redmine installation path | Required |
--skip-db-rollback |
-B |
Skip database rollback | false |
--skip-webhook-restore |
-W |
Skip native webhook re-enable | false |
--restart-server |
-R |
Restart web server | false |
--web-user |
-u |
Web server user | (none) |
--rails-env |
-e |
Rails environment | production |
Plugin Files:
-
/var/www/redmine/plugins/redmine_webhook_plugin/directory
Database Tables:
-
webhook_endpointstable (rolled back) -
webhook_deliveriestable (rolled back)
Native Webhooks (Redmine 7+):
- Automatically re-enabled by uninstaller
- Web server restart required
# Complete uninstallation
sudo ./installer/uninstall.sh \
--redmine-dir /var/www/redmine \
--restart-server \
--web-user www-dataSymptom: Plugin not listed in Administration > Plugins
Solutions:
-
Check file permissions:
ls -la /var/www/redmine/plugins/redmine_webhook_plugin # Should be owned by web user sudo chown -R www-data:www-data /var/www/redmine/plugins/redmine_webhook_plugin -
Check migrations:
cd /var/www/redmine RAILS_ENV=production bundle exec rake redmine:plugins:migrate NAME=redmine_webhook_plugin
-
Restart web server:
sudo systemctl restart puma # or sudo systemctl reload apache2
Symptom: Migrations fail with errors
Solutions:
-
Check database connection:
cd /var/www/redmine RAILS_ENV=production bundle exec rake db:migrate:status
-
Check for pending migrations:
cd /var/www/redmine RAILS_ENV=production bundle exec rake redmine:plugins:migrate:status
-
Rollback and retry:
RAILS_ENV=production bundle exec rake redmine:plugins:migrate NAME=redmine_webhook_plugin VERSION=0 RAILS_ENV=production bundle exec rake redmine:plugins:migrate NAME=redmine_webhook_plugin
Symptom: Permission denied on directories or files
Solution:
# Set correct ownership
sudo chown -R www-data:www-data /var/www/redmine/plugins/redmine_webhook_plugin
# Set correct permissions
sudo chmod -R 755 /var/www/redmine/plugins/redmine_webhook_plugin# Script to install to multiple instances
for redmine_dir in /var/www/redmine-prod /var/www/redmine-staging; do
./installer/install.sh -d "$redmine_dir" -R
done# Install from local development copy
sudo ./installer/install.sh -d /var/www/redmine -s /path/to/dev/plugin# Install specific version from GitHub
sudo ./installer/install.sh \
-d /var/www/redmine \
-s https://github.com/guyinwonder168/redmine_webhook_plugin/archive/refs/tags/v1.0.0-RC1.tar.gz \
-v v1.0.0-RC1Before production deployment, ensure:
- Redmine version 5.1.0 or higher installed
- Ruby 3.x available
- Sudo or root access available
- HTTPS outbound connectivity to webhook endpoints
- Backup of Redmine created
- Database backup created (optional but recommended)
- Installation tested in staging environment
Need Help? See Home or Troubleshooting