Taiga Python API
python-taiga的Python项目详细描述
使用Taiga REST API的模块。 文档:https://python-taiga.readthedocs.io/
安装
pip install python-taiga
贡献给python taiga
- 如果您想为python taiga提供一些小的修复或更新 请在Github上打开PR
- 如果你想开始做一个大的功能,请让我们讨论一下 一起,打开新的一期
- 如果您想对python taiga的文档做出贡献,请使用 generate_docs.sh用于生成正式文档和 发送pr(我们使用sphinxhttp://sphinx-doc.org/)
开始
开始使用taiga api并不容易。创建一个 TaigaAPI你就可以走了。
API证书
TaigaAPI需要您的Taiga凭据。你可以通过这些 直接指向auth方法(参见下面的代码)。
fromtaigaimportTaigaAPIapi=TaigaAPI()api.auth(username='user',password='psw')
或者,可以将令牌传递给构造函数TaigaAPI 构造函数。
fromtaigaimportTaigaAPIapi=TaigaAPI(token='mytoken')
如果在其他地方使用Taiga,也可以指定其他主机
fromtaigaimportTaigaAPIapi=TaigaAPI(host='http://taiga.my.host.org')
获取项目、用户故事、任务和问题
您可以使用 键或使用slug/ref
new_project=api.projects.get_by_slug('nephila')print(new_project.get_issue_by_ref(1036))print(new_project.get_userstory_by_ref(1111))print(new_project.get_task_by_ref(1112))
创建项目
new_project=api.projects.create('TEST PROJECT','TESTING API')
创建新的用户情景
userstory=new_project.add_user_story('New Story',description='Blablablabla')
您还可以创建一个里程碑并将其传递给一个故事
jan_feb_milestone=new_project.add_milestone('MILESTONE 1','2015-01-26','2015-02-26')userstory=new_project.add_user_story('New Story',description='Blablablabla',milestone=jan_feb_milestone.id)
要将任务添加到用户情景,只需运行
userstory.add_task('New Task 2',new_project.task_statuses[0].id)
创建问题
newissue=new_project.add_issue('New Issue',new_project.priorities.get(name='High').id,new_project.issue_statuses.get(name='New').id,new_project.issue_types.get(name='Bug').id,new_project.severities.get(name='Minor').id,description='Bug #5')
创建自定义属性
new_project.add_issue_attribute('Device',description='(iPad, iPod, iPhone, Desktop, etc.)')newissue.set_attribute('1','Desktop')
列表元素
projects=api.projects.list()stories=api.user_stories.list()
也可以指定过滤器
tasks=api.tasks.list(project=1)
附加文件
您可以将文件附加到问题、用户情景和任务中
newissue.attach('README.md',description='Read the README in Issue')
使用实例
实例可以有操作,例如您可以启动一个项目 呼叫
new_project=api.projects.create('TEST PROJECT','TESTING API')new_project.star()
任何实例都可以更新和删除
new_project.name='New name for my project'new_project.update()new_project.delete()
搜索
search函数返回一个searchresult对象,包含任务、用户 故事和问题:
projects=api.projects.list()search_result=api.search(projects[0].id,'NEW')foruser_storyinsearch_result.user_stories:print(user_story)
历史
您可以访问问题、任务、用户故事和wiki页面的历史记录:
history=api.history.user_story.get(user_story.id)
您可以在demo.py中找到一个完整的示例。