RedmineのREST APIを活用してプロジェクトメンバーやロール、公開設定などのレポートを作成しています


My Redmine

今週のブログ担当の石川です。これが2023年最初のブログになりますね。本年もどうぞよろしくお願いいたします。

さて、Redmineにはさまざまな便利機能がありますが、管理者としてプロジェクトやユーザーの情報をチェックするためにCSVを出力する機能もあります。

など。
(参考)RedmineでCSVエクスポートできるデータ

CSV出力で得られる結果や画面に表示されている情報をうまく組み合わせることでも十分な情報を得ることができますが、ファーエンドテクノロジーでは自分たちが必要な情報を扱いやすい形式にまとめられるようにRedmine REST APIから情報を取得して出力するスクリプトを利用しています。

自作スクリプトで出力するMarkdownファイルの内容(プレビュー)

自作スクリプトでは、「プロジェクトに対してユーザーが過剰な権限を持っていないか」「プロジェクトが公開状態になっていないか」などをはじめとしたチェックしたい情報をまとめてMarkdown形式のファイルを作成します。

自作スクリプトで出力するMarkdownファイルの内容(プレビュー)
スクリーンショットに含まれている情報はダミーの情報です

出力するためのスクリプト

使っているAPI

さらに活用

出力される情報はテキストファイルなので、diffコマンドを使って二つのファイルを比較することで差分を出力することができます。 例えばプロジェクトメンバーを追加した前後でレポートを作成していた場合、その2つのファイルをdiffコマンドで diff -u output_redmine_permissions_2023-01-10.md output_redmine_permissions_2023-01-11.md のように比較すると次のような差分になります。

--- output_redmine_permissions_2023-01-10.md  2023-01-10 15:42:14
+++ output_redmine_permissions_2023-01-11.md    2023-01-11 09:07:33
@@ -32,6 +32,7 @@
 |[John Smith](http://localhost:3000/users/2)|Manager|
 |[Dave Lopper](http://localhost:3000/users/3)|Developer|
 |[Dave2 Lopper2(locked)](http://localhost:3000/users/5)|Developer|
+|[Redmine Admin](http://localhost:3000/users/1)|Manager|

 ## 5. [Private child of eCookbook](http://localhost:3000/projects/5)

定期的にこのレポートの出力と比較を行うことで、管理しているRedmineに対して「プロジェクトに対してユーザーが過剰な権限を持っていないか」「プロジェクトが公開状態になっていないか」などのチェックを行うことができます。

まとめ

Redmine REST APIをうまく使うことで、このように自分たちが必要な情報を扱いやすい形式にまとめて出力することもできます。ぜひ活用してみてください。

【スタッフ募集中】
弊社ではAWSを活用したソリューションの企画・設計・構築・運用や、Ruby on Rails・JavaScriptフレームワークなどを使用したアプリケーション開発を行うスタッフを募集しています。採用情報の詳細
弊社での勤務に関心をお持ちの方は、知り合いの弊社社員・関係者を通じてご連絡ください。

My Redmine

こちらの記事もオススメです!
利用・活用 Redmine API
RedmineのREST APIの使い方、活用方法の紹介です。
ポケットチェンジを使って外貨コインも簡単に両替
外貨を簡単に両替できる「ポケットチェンジ」。SuicaやAmazonギフト券などに簡単にチャージできます。
AWS Glue のクローラーを使用して Application Load Balancer(ALB)のログからデータカタログを作成し、Amazon Athena で検索してみた
Application Load Balancer のログが見にくいので、Glue と Athena を利用してクエリーでログを検索できるようにしました。
導入事例コンテンツ取材&執筆サービス「事例侍」を利用してMy Redmineの事例を紹介
株式会社スプーの「事例侍」を利用。経験豊富なエディターさん、ライターさんによる編集でより良い導入事例に。
オープンソースカンファレンス 2022 でセミナー発表しました
OSC 2022オンラインFallで「はじめてのプロジェクト管理ツール〜Redmine超入門〜」を発表。
ファーエンドテクノロジーからのお知らせ(2024/02/28更新)
2024年3月16日 オライリー本の全冊公開日のお知らせ(もくもく勉強会も同時開催)
ファーエンドテクノロジーが所蔵するオライリー本(全冊)公開日のご案内です。公開日には「もくもく勉強会」も同時開催します。
My Redmine スタンダードプランおよびAdminサポートデスクプランの料金改定のお知らせ【2024年4月ご利用分より】
2024年4月ご利用分より、My Redmine スタンダードプラン(民間企業・個人向け及び官公庁向け)とAdminサポートデスクプランの料金を改定いたします。
My Subversion 一部のプラン・料金改定のお知らせ【2024年4月ご利用分より】
2024年4月ご利用分より、My Redmine スタンダードプラン(民間企業・個人向け及び官公庁向け)とAdminサポートデスクプランの料金を改定いたします。
My Subversion ストレージ容量増量のお知らせ(一部プランを除く)
My Subversionではミディアムプラン以上の各プランのストレージ容量を増量します。
Redmineの最新情報をメールでお知らせする「Redmine News」配信中
新バージョンやセキュリティ修正のリリース情報、そのほか最新情報を迅速にお届け