こんにちはCTOの馬場です。
ハートビーツではPythonとGolangを推奨プログラミング言語としています。 インフラがメインの会社っぽいでしょう?
前回はGolang製リソースロックchatbot「locket」の紹介をしたので、今回はPythonモノを紹介します。
弊社ではRedmine、GitLabなどのOSSを多数自前運用していますが、SaaSもたくさん使っています。 そのなかでも利用頻度が高いのがBacklogです。
BacklogはAPIでいろいろ操作できます。 API(v2)の公式ライブラリはJavaのBacklog4Jがあり、サイトでは他にPHP, Ruby, ASP.NETのものが紹介されています。
=> Libraries | Backlog Developer API | Nulab
Pythonのものがなかったのでpybacklogを作りました。 Python 2/3 両対応です。
インストール方法
pypiに登録したのでpipでインストールできます。
pip install pybacklog
簡単ですね!
利用方法
こんな感じで使えます。
# coding: utf-8
from pybacklog import BacklogClient
client = BacklogClient("your_space_name", "your_api_key")
# project
projects = client.projects()
# issues
project_id = client.get_project_id("YOUR_PROJECT")
issues = client.issues({"projectId[]":[project_id], "sort": "dueDate"})
# issue
issue = client.issue("YOUR_PROJECT-999")
簡単ですね!
できること・できないこと
プロジェクト取得、課題取得、課題作成、コメント作成など、よく使う操作については関数を用意しました。
関数が用意されていない操作は do
を使ってがんばれます。
詳細はUnsupported operations ?と、各便利関数のソースコードを見てみてください。
もし「この操作を簡単にしたい!」というニーズがあればPull Requestをいただけると嬉しいです。