[教學] Redmine Plugin 安裝設定實例示範


對於 Redmine Plugin 的安裝設定,在網路上看過很多文章,但大部分的測試結果都會失敗,很大的可能性是環境上的不一致,所以我來說是個蠻頭痛的問題,而且Plugins(外掛或插件)的相容性也是一個大問題,即便是開發者號稱可以支援某個Redmine版本,但測試的結果不一定可行,所以各位在安裝Redmine的時候,除了注意版本的相容性外,如果安裝失敗或安裝後功能異常也別太灰心,依我的經驗來說,這很正常。

Redmine Plugin 安裝路徑

這部分其實和在介紹「Redmine Theme」的安裝時一樣,它的路徑其實要看你當初是怎麼安裝Redmine的,例如用Docker安裝Redmine時,Plugin要放的位置就可能會因為開發者的設計而不同,而本文所提的安裝路徑,同樣是依之前的Redmine安裝方法為前提來撰寫,大家閱讀的時候可以注意一下。

好了,廢話不多說,哪邊才是正確的安裝路徑呢?其實在Redmine的文件README.Debian.gz說有寫到,只是大家比較少去查看這個檔案,大家可以進入此檔看看:

vi /usr/share/doc/redmine/README.Debian.gz

Redmine Plugin 安裝路徑

在這檔案內有一段說明有提到,Plugin需要安裝在以下路徑,如果你的環境中沒有這個目錄,則請自行建立。

/usr/share/redmine/plugins/

Redmine Theme 安裝設定

在安裝之前,還有一點必需要了解,就是通常每個外掛的安裝方式可能都會有點不一樣,所以知道Redmine Plugin的安裝目錄是相當重要的,只要知道此目錄後,就可以依外掛提供的安裝方法來進行安裝,以下會用「Redmine Issue View Columns Plugin」這個外掛來做為示範。

Redmine Issue View Columns Plugin 安裝示範

這個外掛主要的功能是可以自訂子任務及相關議題的呈現欄位,安裝方式還算簡單,官方的說明如下,包含了支援的版本、還有安裝步驟

Redmine Issue View Columns Plugin

那就開始動手試試吧!請先切換到plugins的所在目錄

cd /usr/share/redmine/plugins/

執行以下指令下載Plugin檔案,如果你的環境沒有安裝Git,一樣可以把Plugin的檔案下載後傳到安裝的目錄即可 (註:經實測,執行到此步驟該外掛就可以正常執行了)

sudo git clone https://github.com/kenan3008/redmine_issue_view_columns.git

回到上一層的Redmine家目錄/usr/share/redmine,然後安裝Plugin

cd /usr/share/redmine (或 cd ..)
sudo rake redmine:plugins:migrate RAILS_ENV=production NAME=redmine_issue_view_columns

# 如果上面指令在執行時有發生rake版本上的問題,可以改執行以下指令試試
sudo bundle exec rake redmine:plugins:migrate RAILS_ENV=production NAME=redmine_issue_view_columns

最後請重啟Redmine

systemctl restart apache2

完裝完成!再來請登入Redmine並到「網站管理」→「外掛程式」中看看剛安裝的外掛是否有安裝成功,基本上如果有讀到的話就可以在這邊的列表中呈現

檢查Redmine Plugin是否安裝成功

進入該外掛的設定可以選擇在子任務或相關議題要呈現哪些欄位

設定 Redmine Issue View Columns Plugin

設定好後,就可以回到議題清單去看看是否有生效了,由下圖可以得知其實是有生效的,原本的欄位並不會有這麼多 (註:這個範例在中文的語系上,欄位的值在對照上會有問題,需要切換到英文語系才會正常)

Redmine Issue View Columns Plugin 實際範例

小結:Plugin安裝真的不是那麼容易,原因是會遇到很多非預期中的問題,所以再強調一遍,每個Plugin的安裝方式可能會有所不同,上面的安裝步驟不會適用於所有的Plugin,請依外掛開發者提供的安裝方式為主,但各位至少要知道Plugin要安裝在哪裡,避免Redmine讀取不到。

延伸閱讀:
Redmine 免費專案管理工具教學系列
HowTo Install Plugins on Redmine Linux (step by step) 適用RedmineUP