Easily export JIRA issues to CSV
Project description
Jira-Select: Easily export issues from Jira to CSV
Quickstart
First, you need to configure jira-csv
to connect to your jira instance:
jira-csv configure
Then, you'll need to create a yaml file describing your query and save it somewhere; example:
select:
- key
- summary
- timetracking.originalEstimate as "Hours Estimate"
- customfield_10048 as "My Important Field"
from: issues
where:
- labels = "frontend"
- assignee = "me@adamcoddington.net"
- resolution is null
Now you can run your query:
jira-csv run /path/to/query.yaml
& it'll hand you back a CSV document with the fields you've selected.
See the built-in help (--help
) for more options.
Advanced Usage
Functions
You can define and use functions for both formatting selected data and filtering rows returned from Jira.
Formatting rows
select:
- status
- summary
- customfield_10069 as "Story Points"
- array_len(customfield_10010) as "Sprint Count"
- sprint_name(array_item(customfield_10010, -1)) as "Sprint Name"
from: issues
In the above example, two of the displayed columns are processed with a function:
Sprint Count
: Will render the number of array elements in the field containing the list of sprints in which this issue was present.Sprint Name
: Will show the name of the last sprint associated with the displayed issue.
Omitting rows
select:
- status as "Status"
- summary as "Summary"
- customfield_10069 as "Story Points"
from: issues
having:
# The quoting below is required only because the first character of line
# being a double-quote causes YAML parsers to parse the line differently
- '"Sprint #19" in coalesce(sprint_name(array_item(customfield_10010, -1)), "")'
In the above example, the issues returned from Jira will be compared against
each constraint you've entered in the having
section; in this case, all
returned issues not having the string "Sprint #19" in the name of the last
sprint associated with the displayed issue will not be written to your output.
Note that having
entries are processed locally instead of on the
Jira server so filtering using having
entries is much slower than
using standard Jql due to the amount of (potentially) unnecessary data
transfer involved. It is recommended that you use having
only when
your logic cannot be expressed in standard Jql (i.e. in the "where" section).
Limiting the number of results
You can limit the number of results returned by adding a limit
to your query:
select:
- key
- status
- summary
from: issues
where:
- assignee = "me@adamcoddington.net"
limit: 10
Expanding Jira fields
You can ask Jira to expand issue fields by adding an expand
element to your query:
select:
- key
- status
- summary
from: issues
expand:
- transitions
The meaning of these expansions is defined by Jira; you can find more information in Jira's documentation.
Future Goals
- Support for
Group By
and aggregation functions. - SQlite support: Instead of exporting a CSV, exporting an SQLite database.
- XLSX support: Instead of exporting a CSV, exporing an XLSX document.
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.
Source Distribution
Built Distribution
File details
Details for the file jira-select-1.1.0.dev9.tar.gz
.
File metadata
- Download URL: jira-select-1.1.0.dev9.tar.gz
- Upload date:
- Size: 15.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b030aa55a4f14bf4e83381cd08afccb5b004d561df85f4daa4d04b7dc1bd9354 |
|
MD5 | 2a62e87721d38a780e3eefbf49d843db |
|
BLAKE2b-256 | 15401b98e8ce4212b8ac4e8c6adfe0b791cee341d4cea1aff1498a2fbd08f8bb |
File details
Details for the file jira_select-1.1.0.dev9-py3-none-any.whl
.
File metadata
- Download URL: jira_select-1.1.0.dev9-py3-none-any.whl
- Upload date:
- Size: 18.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2156491a01a1ed7f10ef189363a593d69e781f07b7754c80a084afe7415d900b |
|
MD5 | 7aca275813116b842d497c8553fa16e2 |
|
BLAKE2b-256 | 61efd659041bc69249fb5a69c4de7391bff8344cf7fc36dfdf2a92ae46aeea19 |