https://github.com/dodevops/jira-cloud-github-action
A Github action does things in Jira Cloud triggered from Github Actions.
https://github.com/dodevops/jira-cloud-github-action
Last synced: 4 months ago
JSON representation
A Github action does things in Jira Cloud triggered from Github Actions.
- Host: GitHub
- URL: https://github.com/dodevops/jira-cloud-github-action
- Owner: dodevops
- Created: 2025-07-08T11:17:16.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-08-07T07:55:16.000Z (11 months ago)
- Last Synced: 2025-08-07T09:33:44.170Z (11 months ago)
- Size: 12.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Jira Cloud Github Action
## Introduction
A Github action that does things in Jira Cloud when triggered from a Github Actions workflow.
Currently supported:
* Adding a comment on a push or a pull request
## Usage
Use a workflow like this:
```yaml
on:
- push
- pull_request
jobs:
jiracomment:
name: "Comment on Jira"
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: "0"
- uses: dodevops/jira-cloud-github-action@feature/dpr/first-version
with:
url: "https://mycompany.atlassian.net"
username: "serviceuser@company.com"
token: ${{ secrets.JIRA_SERVICEUSER_TOKEN }}
```
This will automatically send comments to Jira tickets identified by commits that contain a specific format.
For example, these three commits in a pull request created by "user4 ":
* `(SUP-1234): Fixed problem` by user1
* `(SUP-1234): Added feature` by user2
* `(SUP-2345): Removed feature` by user3
will result in these two comments (the markdown format is converted to Jira markdown):
Comment on SUP-1234
```
*Pull Request*: [user4](mailto:user4@company.com) sent 2 commit(s) to [Pull request title]({{ https://linktopullrequest }})
* (SUP-1234): Fixed problem ([user1](mailto:user1@company.com))
* (SUP-1234): Added feature ([user2](mailto:user2@company.com))
```
Comment on SUP-2345
```
*Pull Request*: [user4](mailto:user4@company.com) sent 1 commit(s) to [Pull request title]({{ https://linktopullrequest }})
* (SUP-2345): Removed feature ([user3](mailto:user3@company.com))
```
## Options
* *url*: The URL to your Jira Cloud instance (required)
* *username*: The user name for API requests (required)
* *token*: The user's token for API requests (required)
* *loglevel*: The loglevel to use [INFO]
* *commitParseRegExp*: The Regexp string to use to parse Jira issue ids from commit messages. Requires a named group called id that catches the whole issue id and a group project that catches only the project key [\\((?P(?P[A-Za-z]+)-[0-9]+)\\)"]
* *commentTemplate*: The go template for the issue comment. Takes the CommitsInfo struct as an input [default see below]
```yaml
*{{ .CommitsInfo.Type }}*: [{{ .CommitsInfo.AuthorName }}](mailto:{{ .CommitsInfo.AuthorEmail }}) sent {{ .Commits | len }} commit(s) to [{{ .CommitsInfo.Target }}]({{ .CommitsInfo.Target }})
{{ range .Commits }}
* {{ .Message }} ([{{ .AuthorName }}](mailto:{{ .AuthorEmail }}))
{{ end }}
```
* *onlyProjects*: If specified, only issues with these project keys are processed