Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Unofficial Redmine Cooking+unofficial-redmine.org 直近カスタマイズ事例他紹介

Unofficial Redmine Cooking+unofficial-redmine.org 直近カスタマイズ事例他紹介

Unofficial Redmine Cooking+unofficial-redmine.org
直近カスタマイズ事例他紹介

redmine.tokyo #21 LT資料

https://unofficial-redmine.org

y503unavailable

November 27, 2021
Tweet

Other Decks in Technology

Transcript

  1. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2021/11/27 @y503unavailable
    2021/11/27 1

    View Slide

  2. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    自己紹介
    名前:y503unavailable (• 製造業で製品開発部門のadminやってます。
    • 部門サーバ、LAN、PC、全般の構築/運用/子守
    (全社単位の情報システムとは別、部門所属)
    • 直近はPythonやIoT機器の方に移行中、Ruby,Rails書けませんw。
    • Redmine歴
    • 2009年から利用
    • 部内SaaSの積りで各種運用中
    • Redmine.Tokyoスタッフ
    (unofficialcookingと情報蓄積面で活動)
    • unofficial-redmine.org ドメイン管理者
    • unofficial-redmine. YouTubeチャンネル、Kindle本発行
    2021/11/27

    View Slide

  3. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Agenda
    2021/11/27 3
    1. Redmineは単に無料で使えるソフト?
    2. Unofficial Redmine Cooking 関連紹介
    1. コンセプト
    2. redmine.tokyo unofficialcooking
    3. unofficial-redmine.org
    4. Kindle本 標準のRedmineで不十分な人の道標
    5. YouTube unofficial-redmine チャンネル
    6. GitHub 今日使える、明後日の(方向の)Redmine
    3. ピックアップ&直近のカスタマイズ事例
    今回発表内容は下記から参照してください。
    https://unofficial-redmine.org

    View Slide

  4. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    .
    1. Redmineは単に無料で使えるソフト?
    2021/11/27 4
    無料で使える、だけじゃない
    OSS(OpenSourceSoftware)だから
    ・改造して利用する自由
    (ソース改造、プラグイン利用、、)
    ・パッチ提案する自由
    (取り込まれれば将来のVerUp追随不要)
    ・共同で育てて利用していくソフトウェア
    Redmine本家とユーザ会はそのための場所
    ・リーマンの第3法則
    システムの進化はフィードバックプロセスにより決まる
    http://forza.cocolog-nifty.com/blog/2012/08/post-9619.html

    View Slide

  5. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2-1.Unofficial Redmine Cooking コンセプト
    2021/11/27 5
    ・標準のRedmineでは少し対応困難な部分を効率的に解決したい
    ・ソースカスタマイズ,プラグイン活用,トラブル対応,他ツール連携,DB直
    必要な情報を知っていれば短時間で対応できる筈。(知らないと⾧時間。。挫折)
    ・Redmine関連の情報を、必要な人に届き易くしたい。
    (特にredmine.tokyo、関連コミュニテイにて発表して頂いた内容)

    View Slide

  6. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    標準機能から変更したい
    2021/11/27 6
    同じ悩みを持つのは、
    自分だけじゃない。
    ・本家の残チケット検索-4500件、Groonga無し
    ・用途もニーズもユーザレベルも千差万別
    ・改造にはスキルと内部構造の知識が必要
    ユーザ会で情報共有!
    もっと効率的に利用

    View Slide

  7. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2-2.UnofficialCooking-情報共有場所
    Unofficial Redmine Cooking
    https://redmine.tokyo/projects/unofficialcooking
    ・Redmine.TokyoのサブPJ
    ・チケットベースで情報共有
    ・Since 2016/11
    ・ターゲットユーザ:Redmine管理者
    名前:多少のアングラ感と親しみ
    を持って貰えれば。
    UndocumentedとかCracking
    のレベルではありません。
    ・チケット200件超えた
    ・平日アクセス100件大幅超(休日は1/10)
    ・Google(unofficialcooking) 検索1面独占

    View Slide

  8. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Unofficial Redmine Cooking守備範囲
    オープンソースだから可能なこと
    8
    下記対応により出来ること
    ・Redmineソース改造
    ・Redmine本家未取込パッチ
    ・プラグイン活用
    ・DB直接操作
    ・他ツールとの連携
    関連情報の収集/公開
    要は
    標準外
    2021/11/27

    View Slide

  9. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Unofficialcookig画面サンプル
    2021/11/27 9
    通常のチケットと
    して情報記録

    View Slide

  10. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Unofficialcookig画面サンプル
    2021/11/27 Unofficial Redmine Cooking 紹介 10
    人がいれば、様々
    な視点、解決策が
    出るもの。

    View Slide

  11. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2-3.unofficial-redmine.org
    • unofficialcookingの延⾧として、unofficial-redmine.org のドメ
    インを開設した。
    • 情報集約、各種改造版の展開場所として利用
    詳細はトップページから
    • https://unofficial-redmine.org
    • http://demo1.unofficial-redmine.org/redmine
    • 専用Slackも開設しました。物好きな方は連絡ください。
    2021/11/27 11

    View Slide

  12. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2-4.Kindle本 標準のRedmineで
    不十分な人の道標
    2021/11/27 12

    View Slide

  13. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Kindle本 Unofficial Redmine Cooking Vol.0
    • Unifficial Cookingの内容を再構成し出版
    目的
    ・チケット内容だけでは読みにくい
    ・別のユーザ層にも伝えたい
    • 副題 標準のRedmineで不十分な人の道標
    • 表紙 広島-宮島 厳島神社の常夜灯
    • 価格 ¥250+税(Kindle専売-¥70%)
    • Kindle本 https://amzn.to/3CXMDqo
    紹介LT https://www.slideshare.net/y503unavailable/
    unofficial-redmine-cooking-kindle

    View Slide

  14. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Kindle本 目次/本文サンプル

    View Slide

  15. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2-5.unofficial-redmine Youtubeチャンネル
    • UnofficialCookingの話題を解説した動画を公開しています。

    Unofficial Redmine Cooking 202005更新内容解説
    https://www.youtube.com/watch?v=gelzsC5N70E
    2021/11/27 15

    View Slide

  16. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2021/11/27 16
    改造レポジトリ
    公開済

    View Slide

  17. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    2-6.今日使える、明後日の(方向?)
    Redmine
    • Redmine4.2ベースの機能追加版Redmine
    • カテゴリのサブPJ継承(本家5358、パッチ提供)
    • OR条件フィルタ(本家4939)
    • その他、各種機能追加実施
    • CentOS7,Dockerのインストールスクリプト有
    2021/11/27 17
    対象 URL
    Redmine自体 https://github.com/y503unavailable/redmine
    CentOS7-Ansible https://github.com/y503unavailable/redmine-centos-ansible
    Docker https://github.com/y503unavailable/myfav-redmine
    人が作って公開したコードを改造して組み合わせているだけです。
    世の中、その積み重ね。。。

    View Slide

  18. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    3.Unofficialcookingピックアップ/直近活動
    1. トラブル対応などで特に有用な情報のリンク
    2. 2021年のunofficialcooking活動抜粋
    • 詳細はunofficial-redmine.org のトップページからどうぞ。
    2021/11/27 18

    View Slide

  19. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    3-1.Unofficialcookingピックアップ(1)
    • PluginのRedmine本体バージョン間設計変更点
    • Redmine本体のVUPに伴うPluginのトラブル多発 (原因の大半はRuby,Rails非互換)
    • 同一原因、対処方法が判れば自分でも対応できるので対応情報蓄積。
    • https://redmine.tokyo/issues/755 (他)
    • DB設計関連情報
    • DB移行時、トラブル発生時の参考に
    • https://redmine.tokyo/issues/1160
    2021/11/27 19
    バージョン チケット番号
    Redmine5/Rails6 1207
    Redmine4/Rails5/Ruby2.7 755
    Redmine3/Rails4 751
    題名 チケット番号
    RedmineのDB設計情報関連情報 1160
    DB間差異箇所の対応
    (mysql/mariadb, postgresql)
    1085

    View Slide

  20. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Unofficialcookingピックアップ(2)
    • Redmineの知らない機能
    https://redmine.tokyo/issues/1163
    • Redmineアップデート時の落し穴/仕様変更
    https://redmine.tokyo/issues/926
    2021/11/27 20
    ・Redmineのバージョンアップ後に画面の表示が崩れる場合がある(3.0)
    ・チケットのコピーができなくなった(3.0)
    ・PluginのMigrationが失敗するようになった(3.X)
    ・標準のMigrationが定義済として失敗する。(*)
    ・LDAP認証を使用している場合、4.0へのバージョンアップ後にログインできなくなることがある。(4.0)
    ・通知メールで他の宛先が表示されなくなった。(4.0)
    ・REST APIの応答にデータが含まれない場合のHTTPステータスコードが「200 OK」から「204 No Content」に変更(4.1)
    ・Redmineチケット編集時、クリップボードコピー後の領域選択が行えない。(4.1)
    1.チケットのステータス連動(管理画面上)を設定し進捗率の表示が変わっても、DB上のチケット進捗率が変更されない。
    2.検索時に全角1文字記号(例えば白い中くらいの小さな四角とか「)だけを入れると検索出来ない
    3.チケットのフィルタ機能にて、「すべて」が選べる項目で「すべて」を選択すると、
    「その項目に何らかの値が入っている」チケットのみが抽出される。(設定無のチケットは除外される)
    4.Redmineのアカウント登録設定とLDAP認証設定は無関係に動作する。
    ユーザーによるアカウント登録を無効にしても、LDAP認証が有効の場合、ユーザが自分でLDAP上の自分のIDを登録できる。
    既知の落とし穴は避けたい
    みんなで落ちれば
    管理者10年でもハマる
    想定外の設計による落とし穴

    View Slide

  21. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Unofficialcookingピックアップ(3)
    • Redmine以外でのデータ表示/操作例
    https://redmine.tokyo/issues/699
    • 多種多様な言語/アプリのRedmineとの連携事例が公開されています。
    • 便利なものは、誰しも自分の畑で使いたいもの。
    • 用途が想像付かない物もある筈。
    →自分が思いもしなかった使い方/実現手法が見つかるかも
    2021/11/27 21
    Ruby,JavaScript,python,Perl,PHP,Java,Powershell,Go,C#
    VBA,EXCEL,MSProject,Outlook/VBA
    Slack,Mattermost,Teams,PowerAutomate,Thunderbird
    GitBucket,Github,GitLab,VSCode,TFS,Jenkins
    Angular,Node.js,Node-Red,Electron
    curl,shell,Zabbix,Vuls,GoogleApps,R言語
    ELK,Kibana,Re:dash,Metabase,Tableau

    View Slide

  22. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    Unofficialcookingピックアップ(4)
    • Redmine本家 vote count list
    http://demo1.unofficial-redmine.org/redmine/projects/redmineorg-copy/issues
    2021/11/27 22
    Redmine本家チケットを+1の
    回数順にソートしたリスト。
    各チケットの要望度合いを表現
    している。
    Redmine本家フォーラムにも、
    集計結果を投稿済
    メジャーVUP時に更新
    (現在はRedmine4.1 時点)

    View Slide

  23. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    3-2.UnofficialCooking直近の活動(1)
    1. Redmineの活動画面に、チケットの変更を全て表示する
    カスタムフィールドの変更分を表示しない設計理由が判らない。
    https://redmine.tokyo/issues/1192
    2. チケットの担当者に、チケット作成者を選択可能とする
    起票者に戻したい場合も多い筈。人数多いと選択大変。間違い易い。
    https://redmine.tokyo/issues/1295
    3. フッタ表示内容を変更する(ソース変更無)
    機密等級表示/運営情報など一括で表示したい
    →viewcustomizeでCSS変更
    https://redmine.tokyo/issues/1304
    2021/11/27 23
    Redmine本家チケットにも記入済

    View Slide

  24. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    UnofficialCooking直近の活動(2)
    4. Redmine通知メールの一括送信化(Redmine4仕様変更戻し)
    社内利用ではメール返信で直接連絡した方が良い場合もある。本家起票したが文化の違いで門前払い。
    → OSSなのだから自力で修正すればよい。必要な人が使えれば良いこと。
    https://redmine.tokyo/issues/1083
    https://github.com/y503unavailable/redmine/issues/46
    5. Redmineの活動画面で表示期間(日数)を指定して検索
    数年前の自分の本家コメントなど覚えてない。自分のコメント探すの無理。
    →デフォルト30日を直接変更し検索可能にした。
    https://redmine.tokyo/issues/1294
    6. SPAMユーザ登録対処/ユーザ登録効率化
    毎日毎日、SPAMユーザ登録削除で、SPAMMERのID入力させられて嫌になっちゃうよ♪
    →pythonで一括削除した。(たまに本来ユーザいるので注意)
    https://redmine.tokyo/issues/1276
    2021/11/27 24

    View Slide

  25. Unofficial Redmine Cooking+直近カスタマイズ事例紹介
    @ RedmineTokyo 第21回勉強会
    御清聴ありがとうございました
    2021/11/27 25

    各自のRedmine運用に、本資料が多少なりとも役
    に立てば幸いです。
    •Redmineはオープンソースソフトです。
    •協力して育成&利用していきましょう。
    ユーザ会はそのための場所です。
    • ご意見、内容指摘の連絡先
    Redmine.Tokyo UnofficialCooking
    unofficial-redmine.org

    View Slide