gokugml / jira

Python Jira library. Development chat available on https://web.libera.chat/?channel=#pycontribs

Home Page:https://jira.readthedocs.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Jira Python Library

https://img.shields.io/badge/irc-%23pycontribs-blue


https://readthedocs.org/projects/jira/badge/?version=main Requirements Status

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.

  1. Jira Cloud / Jira Server (main REST API reference)
  2. Jira Software Cloud / Jira Software Server (former names include: Jira Agile, Greenhopper)
  3. Jira Service Desk Cloud / Jira Service Desk Server

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.
  • JetBrains for providing us with free licenses of PyCharm
  • GitHub for hosting our continuous integration and our git repo
  • Navicat for providing us free licenses of their powerful database client GUI tools.
https://raw.githubusercontent.com/pycontribs/resources/main/logos/x32/logo-atlassian.png https://raw.githubusercontent.com/pycontribs/resources/main/logos/x32/logo-pycharm.png https://raw.githubusercontent.com/pycontribs/resources/maain/logos/x32/logo-navicat.png

About

Python Jira library. Development chat available on https://web.libera.chat/?channel=#pycontribs

https://jira.readthedocs.io

License:BSD 2-Clause "Simplified" License


Languages

Language:Python 98.8%Language:Makefile 1.0%Language:Shell 0.2%