Python library for interacting with JIRA via REST APIs.
Project description
This library eases the use of the Jira REST API from Python and it has been used in production for years.
As this is an open-source project that is community maintained, do not be surprised if some bugs or features are not implemented quickly enough. You are always welcomed to use BountySource to motivate others to help.
Quickstart
Feeling impatient? I like your style.
from jira import JIRA
jira = JIRA('https://jira.atlassian.com')
issue = jira.issue('JRA-9')
print(issue.fields.project.key) # 'JRA'
print(issue.fields.issuetype.name) # 'New Feature'
print(issue.fields.reporter.displayName) # 'Mike Cannon-Brookes [Atlassian]'
Installation
Download and install using pip install jira or easy_install jira
You can also try pip install --user --upgrade jira which will install or upgrade jira to your user directory. Or maybe you ARE using a virtualenv right?
By default only the basic library dependencies are installed, so if you want to use the cli tool or other optional dependencies do perform a full installation using pip install jira[opt,cli,test]
Usage
See the documentation for full details.
Development
Development takes place on GitHub using the default repository branch. Each version is tagged.
Setup
Fork repo
Keep it sync’ed while you are developing
Install pyenv
- develop and test
- Launch docker jira server
docker run -dit -p 2990:2990 --name jira addono/jira-software-standalone
- Lint
tox -e lint
- Run tests
tox
- Run tests for one env only
tox -e py37
- Specify what tests to run with pytest
tox -e py39 -- tests/resources/test_attachment.py
- Debug tests with breakpoints by disabling the coverage plugin, with the --no-cov argument.
Example for VSCode on Windows :
{
"name":"Pytest","type":"python","request":"launch","python":".tox\\py39\\Scripts\\python.exe","module":"pytest","env": {"CI_JIRA_URL":"http://localhost:2990/jira","CI_JIRA_ADMIN":"admin","CI_JIRA_ADMIN_PASSWORD":"admin","CI_JIRA_USER":"jira_user","CI_JIRA_USER_FULL_NAME":"Newly Created CI User","CI_JIRA_USER_PASSWORD":"jira","CI_JIRA_ISSUE":"Task","PYTEST_TIMEOUT":"0", // Don't timeout },"args": [ // "-v","--no-cov", // running coverage affects breakpoints"tests/resources/test_attachment.py"] }
- Build and publish with TWINE
tox -e publish
Jira REST API Reference Links
When updating interactions with the Jira REST API please refer to the documentation below. We aim to support both Jira Cloud and Jira Server / Data Center.
Jira Cloud / Jira Server (main REST API reference)
Jira Software Cloud / Jira Software Server (former names include: Jira Agile, Greenhopper)
Credits
In addition to all the contributors we would like to thank to these companies:
Atlassian for developing such a powerful issue tracker and for providing a free on-demand Jira instance that we can use for continuous integration testing.
GitHub for hosting our continuous integration and our git repo
Navicat for providing us free licenses of their powerful database client GUI tools.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.