yamamanx

growing hard days

*

Redmine REST APIを操作するpython_redmineを試してみた

   


Redmine のGUIの登録が面倒なのでコマンドで登録、更新、時間の記録が出来るようにしたい、ってことで、Redmine REST APIをPythonで扱う方法をいろいろ見てみましたが、python_redmineが必要な操作を満たしていて使い勝手が良さそうなので試してみました。

python_redmine

RedmineでREST APIを有効にする

管理者でRedmineにログインして[API]タグ-[RESTによるWebサービスを有効にする]にチェックします。
※バージョンによっては[認証]タグにあります。

API操作に使用するユーザの[個人設定]の右ペインでAPIアクセスキーをコピーして使います。

インストール

pipでインストール出来ます。

基本

「key=」にAPIアクセスキーを指定します。

チケット登録

手入力同様に必須でもデフォルト値のあるフィールドは省略可能です。

project_idはプロジェクトの識別子を指定します。

tracker_id(トラッカー) はtrackerテーブルのレコードで確認します。

assigned_to_id(担当者)はusersテーブルのレコードで確認します。

estimated_hours(予定工数)は時間です。

start_date , due_dateは厳密に日付型で指定します。

チケット更新

該当のチケットIDはredmine.issue.getで取得します。
このチケットIDは画面で確認出来るIDです。

よくあるケースとして、ステータス、期日を変更してみました。

作業時間の記録

activity_id(作業種別)は事前に確認しておきます。

spent_on(作業日)は厳密に日付型なので、datetime.today()ではなくdate.today()を使います。

issue_idにチケットIDを指定します。

今後

Slackからの操作を予定しているので、各IDとかを検索できるコマンドも用意しないと、コマンドだけでは完結しないので、そのへんも作ろうと思います。

@yamamanx
開発ベンダー5年、ユーザ企業システム部門通算8年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

 - ProjectManagement, Python, Redmine ,

ad

ad

Message

メールアドレスが公開されることはありません。

  関連記事

pyenv update で「pyenv: no such command `update’ 」

環境 macOS Sierra 10.12.4 pyenvのアップデート pye …

個人のGoogleカレンダーの予定をPythonで取得する

Google Calendar Twilio ReminderのGoogleカレ …

Redmine 3.0.0 にLocal Avatar プラグインをインストールしてユーザーがアバターを簡単に変更出来るようにする

Redmineのアバターは標準でGravater採用なのですが、エンドユーザーに …

CentOS 6でPythonからOracleに接続する

OracleのデータをPythonでさわりたくて、その実行環境がCentOS6の …

IPython Notebookで梅田のラーメン屋さんの統計情報を抽出するというハンズオンに行ってきました

IPython Notebookで梅田のラーメン屋さんの情報をWebスクレイピン …

Linux Mint 17 MATE 64bit にTensorFlowをインストールする

勉強会でTensorFlowを使用しますので、Linux Mint 17 MAT …

RedmineにEasy Gantt プラグインをインストールしようとしたらRubyのバージョンが古いという事にひっかかったのでRubyもアップグレードした

RedmineにEasy Ganttプラグインをインストールしました。 標準のガ …

Redmine プラグイン開発チュートリアルをやってみる

Redmine 3.0環境でプラグインを作成するチュートリアルをやってみました。 …

Linux Mint 17 MATE 64bit にIPython Notebookをインストールする

今日行く勉強会でIPython Notebookの環境が必要なため、手持ちのLi …

feedlyでタグ付けした記事を自動でメール配信する

feedlyを使っていて、良記事や知っておいて欲しい記事とかを部門とかチームとか …