Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JIRA with Python

Tags:

python

jira

I am fairly new to the world of Python. Have just read some documents and want to get started.

I want to design a tool written in Python to pick up issues from JIRA that have been marked as resolved by our QA team and then display a nice html report of the bug fixes going in per release basis.

I am trying to understand mechanisms to connect to JIRA from Python but things are not getting cleared.

I have installed : jira-python-lib but when I try and make a connection, I get errors.

 # /usr/bin/python

 from jira.client import JIRA

 jira_options={'server': 'https://xxxxxxxx.atlassian.net'}

 jira=JIRA(options=jira_options,basic_auth=('xxxxxxx','xxxxxx'))

If I execute the code above, it gives me this error message:

Traceback (most recent call last):
  File "test1.py", line 9, in <module>
    jira=JIRA(options=jira_options,basic_auth=('*****','****'))
  File "C:\Python27\lib\site-packages\jira\client.py", line 88, in __init__
    self._create_http_basic_session(*basic_auth)
  File "C:\Python27\lib\site-packages\jira\client.py", line 1368, in _create_htt
    p_basic_session
    hooks={'args': self._add_content_type})
     TypeError: session() takes no arguments (2 given)

Can someone please tell me what I am doing wrong here?

Also, I can't find any information at JIRA-DOC regarding automation.

Can some one please guide to helpful documentation in this regard?


Found out that I need to enable authentication enableBasicAuth in order to make this work. Need to try this.

like image 766
f-z-N Avatar asked Jan 08 '13 06:01

f-z-N


People also ask

Can you use Python in Jira?

Jira API uses Python to transfer your data from Jira tables into a Pandas DataFrame.

How do I run a Python script in Jira?

I would also take a look at the Communities post Python scripts to work for JIRA. One user provided the following as their solution: I solved the problem by using the Add-on Script runner in Jira. There I created a scripted field in Groovy and called the command prompt and run the python script from there.

Does Jira have an API?

The Jira REST API enables you to interact with Jira programmatically. Use this API to build apps, script interactions with Jira, or develop any other type of integration. This page documents the REST resources available in Jira Cloud, including the HTTP response codes and example requests and responses.


2 Answers

This is a temporary bug with the jira-python library, more info at https://bitbucket.org/bspeakmon/jira-python/issue/9/jira-python-package-does-not-work-with-the

like image 52
mdoar Avatar answered Oct 05 '22 18:10

mdoar


Basic authentication to the Jira API using user/password has been deprecated. You need to create an API token from your Atlassian account profile here https://id.atlassian.com/manage-profile/security/api-tokens

Then you can connect to Jira from python3 using the jira-python module, docs are here https://jira.readthedocs.io/installation.html

from jira import JIRA
jira = JIRA(
 'https://<my-jira-domain>.atlassian.net',
 basic_auth=('[email protected]','my-api-token')
)

I wrote this all on my blog. https://automationjames.com/

like image 36
James McClay Avatar answered Oct 05 '22 17:10

James McClay