Helper tool to create and assign fix versions in Jira

Jira Helper

Helper tool to interact with Jira from CI/CD scripts. Its main purpose is to create and assign version based on GitHub releases to Jira tickets.

You can provide comma separated issue numbers or a body of text which contains issue numbers and the jira-helper will automatically assign the version to those issues in Jira.

GitHub actions example

The following can be used to trigger a release (fixVersion) in Jira whenever a GitHub release is created. It will use the body of the release and search for any issue numbers in it and automatically assign the newly created release to them.

name: Release

on:
  release:
    types:
      - released

jobs:
  release-to-jira:
    runs-on: ubuntu-latest
    env:
      IMAGE_NAME: ghcr.io/marcelblijleven/jira-helper:latest
    steps:
      - name: create release in Jira
        run: docker run -i --rm ${{ env.IMAGE_NAME }} createRelease -u [email protected] -s https://your-jira.address.nl -p MB -t=${{ secrets.API_TOKEN }} -v "${{ github.event.release.name }}"
      - name: assign release to Jira tickets
        run: docker run -i --rm ${{ env.IMAGE_NAME }} assignVersion -u [email protected] -s https://your-jira.address.nl -p MB -t=${{ secrets.API_TOKEN }} -v "${{ github.event.release.name }}" -b "${{ github.event.release.body }}"

CLI Usage

Usage:
  jira-helper [command]

Available Commands:
  assignRelease   Assigns a version to all provided issues in the release body
  completion      Generate the autocompletion script for the specified shell
  createAndAssign Creates a fix version in Jira and assigns it to the issues
  createRelease   Create a fix version in Jira
  help            Help about any command

Flags:
  -h, --help             help for jira-helper
  -s, --host string      Host of the Jira API. If the host URL contains a scheme (e.g. https), you must include it
  -p, --project string   Project key of the Jira project, e.g. MB
  -t, --token string     Token used to authenticate against the Jira API
  -u, --user string      User (email) for authenticating against the Jira API
  -v, --version string   Name of the version

Assign release

Assigns a version to all provided issues. The issue numbers are retrieved from the provided release body.

Usage:
jira-helper assignRelease [flags]

Aliases:
assignRelease, assignVersion

Flags:
-h, --help                 help for assignRelease
-i, --issues strings       The issues you want to assign to release to, can be a single issue or comma separated
-b, --releaseBody string   The body of text which contains Jira issues, e.g. a GitHub release body

Global Flags:
-s, --host string      Host of the Jira API. If the host URL contains a scheme (e.g. https), you must include it
-p, --project string   Project key of the Jira project, e.g. MB
-t, --token string     Token used to authenticate against the Jira API
-u, --user string      User (email) for authenticating against the Jira API
-v, --version string   Name of the version

Create release

Create a fix version in Jira for the project with the provided name.

The release state of the fix version will be set to "released" and the day will be set to today.

Usage:
jira-helper createRelease [flags]

Aliases:
createRelease, createVersion

Flags:
-h, --help   help for createRelease

Global Flags:
-s, --host string      Host of the Jira API. If the host URL contains a scheme (e.g. https), you must include it
-p, --project string   Project key of the Jira project, e.g. MB
-t, --token string     Token used to authenticate against the Jira API
-u, --user string      User (email) for authenticating against the Jira API
-v, --version string   Name of the version

Create and assign

Creates a fix version in Jira and assigns it to the provided issues.

The release state of the fix version will be set to "released" and the day will be set to today.

Usage:
jira-helper createAndAssign [flags]

Flags:
-h, --help                 help for createAndAssign
-i, --issues strings       The issues you want to assign to release to, can be a single issue or comma separated
-b, --releaseBody string   The body of text which contains Jira issues, e.g. a GitHub release body

Global Flags:
-s, --host string      Host of the Jira API. If the host URL contains a scheme (e.g. https), you must include it
-p, --project string   Project key of the Jira project, e.g. MB
-t, --token string     Token used to authenticate against the Jira API
-u, --user string      User (email) for authenticating against the Jira API
-v, --version string   Name of the version

Similar Resources

Yet another Yogurt - An AUR Helper written in Go

Yet another Yogurt - An AUR Helper written in Go

Yay Yet Another Yogurt - An AUR Helper Written in Go Help translate yay: Transifex Features Advanced dependency solving PKGBUILD downloading from ABS

Jan 3, 2023

A shell tool to create counting semaphores, acquire them and release them.

A shell tool to create counting semaphores, acquire them and release them. This is useful if you want to e.g. run no more than N out of M commands in parallel.

Oct 12, 2021

A CLI tool that you can use create regular backups of your Notion.so Pages.

notion-offliner A CLI tool that you can use create regular backups of your Notion.so Pages. Perfect for disaster scenarios and offline usage. MacOS an

Jan 3, 2023

Branch is a small CLI tool to automatically create git branches based on tickets

________ ________ ________ ________ ________ ___ ___ |\ __ \ |\ __ \ |\ __ \ |\ ___ \ |\ ___

Nov 15, 2022

Related is a simple cli utility tool to create files or a group of files.

Related - Create files based on individual definitions or groups Related helps with common file-creation-based tasks. You can predefine single types a

Apr 16, 2022

Tiny binary serializer and deserializer to create on demand parsers and compilers

Parco Hobbyist binary compiler and parser built with as less reflection as possible, highly extensible and with zero dependencies. There are plenty pa

Nov 9, 2022

Project-1 - Create a service that accepts input as text and provides Json Output as Top ten most used words and times of occurrence in the text

Project Assignment Steps to run the project: download or clone repo in your loca

Jan 27, 2022

Small, fast library to create ANSI colored strings and codes. [go, golang]

ansi Package ansi is a small, fast library to create ANSI colored strings and codes. Install Get it go get -u github.com/mgutz/ansi Example import "gi

Dec 23, 2022

✨ Create a new production-ready project with backend, frontend and deploy automation by running one CLI command!

✨ Create a new production-ready project with backend, frontend and deploy automation by running one CLI command!

✨ Create a new production-ready project with backend, frontend and deploy automation by running one CLI command!

Dec 31, 2022
Comments
  • [FEATURE]

    [FEATURE]

    Can this be used to create fix version when pull request merged? And find jira issue number from pull request description?

    If so can you please provide an example of GitHub actions?

    Thanks Justin

  • Can we have release created as not released and not populate release date?

    Can we have release created as not released and not populate release date?

    Is your feature request related to a problem? Please describe. A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

    Describe the solution you'd like A clear and concise description of what you want to happen.

    Describe alternatives you've considered A clear and concise description of any alternative solutions or features you've considered.

    Additional context Add any other context or screenshots about the feature request here.

  • [BUG]

    [BUG]

    Describe the bug action failing when commit message has '(' or ')' in it

    To Reproduce commit a change with message: proj-001 and proj-002 (this bit will cause error)

    Expected behavior action to find proj-001 and proj-002 and assign a release

    Screenshots If applicable, add screenshots to help explain your problem.

    Desktop (please complete the following information):

    • OS: [e.g. macOS]
    • Tool: [e.g. dockerized or binary]

    Additional context Add any other context about the problem here.

jt is a CLI tool for viewing and manipulating JIRA issues.

jt - jira-tool jt is a CLI tool for viewing and manipulating JIRA issues. One common example usage to transition an issue to a new status: jt "In Prog

Aug 9, 2022
🔥 [WIP] Interactive Jira Command Line
🔥 [WIP] Interactive Jira Command Line

JiraCLI Interactive Jira CLI ?? This project is still a work in progress ?? This tool mostly focuses on issue search and navigation at the moment. How

Jan 4, 2023
Submit timesheets to Jira from the command line
Submit timesheets to Jira from the command line

JiraTime jiratime makes it easy to submit worklog records to Jira quickly from the command line. It accepts timesheets on standard input so works well

Dec 5, 2022
A tiny cli command/daemon for syncing toggl time entries with Jira

toggl-sync A tiny cli command/daemon for syncing toggl time entries with Jira Installation Install the app via brew package manager. brew tap timemate

Nov 30, 2021
Declarative CLI Version manager. Support Lazy Install and Sharable configuration mechanism named Registry. Switch versions seamlessly

aqua Declarative CLI Version manager. Support Lazy Install and Sharable configuration mechanism named Registry. Switch versions seamlessly. Index Slid

Dec 29, 2022
A youtube library for retrieving metadata, and obtaining direct links to video-only/audio-only/mixed versions of videos on YouTube in Go.

A youtube library for retrieving metadata, and obtaining direct links to video-only/audio-only/mixed versions of videos on YouTube in Go. Install go g

Dec 10, 2022
ets2-dlc-repacker is a Windows / Linux / MacOS CLI util to automatically repack older DLC archives for compatibility with newer versions.
ets2-dlc-repacker is a Windows / Linux / MacOS CLI util to automatically repack older DLC archives for compatibility with newer versions.

ets2-dlc-repacker is a Windows / Linux / MacOS CLI util to automatically repack older DLC archives for compatibility with newer versions.

Dec 26, 2021
Node is where client will send data to, create block send to miner, create block send to parent and receive tick from validator and do validate

Node Receive Tick from validator Validate POH of tick send result to validator Receive confirm block from validator Send Checked block to validator Ho

Dec 31, 2021
Simple command line tool helper to integrate with hashicorp vault & github api

Overview CI/CD Toolkit is small command line tool helper to integrate with vault secret kv management & github api We can use simple command to genera

Apr 2, 2022
UltiTuner: a small helper tool to configure functions for Ultimaker S-Line printers

UltiTuner UltiTuner is a small helper tool to configure functions for Ultimaker

Apr 25, 2022