Skip to content
Snippets Groups Projects
Commit af5da756 authored by Takuya Noguchi's avatar Takuya Noguchi Committed by Rémy Coutable
Browse files
parent 423c4c43
No related branches found
No related tags found
No related merge requests found
Showing
with 67 additions and 62 deletions
Loading
Loading
@@ -211,7 +211,7 @@ gem 'discordrb-webhooks-blackst0ne', '~> 3.3', require: false
# HipChat integration
gem 'hipchat', '~> 1.5.0'
 
# JIRA integration
# Jira integration
gem 'jira-ruby', '~> 1.4'
 
# Flowdock integration
Loading
Loading
Loading
Loading
@@ -14,8 +14,8 @@ class JiraService < IssueTrackerService
format: { with: Gitlab::Regex.jira_transition_id_regex, message: s_("JiraService|transition ids can have only numbers which can be split with , or ;") },
allow_blank: true
 
# JIRA cloud version is deprecating authentication via username and password.
# We should use username/password for JIRA server and email/api_token for JIRA cloud,
# Jira Cloud version is deprecating authentication via username and password.
# We should use username/password for Jira Server and email/api_token for Jira Cloud,
# for more information check: https://gitlab.com/gitlab-org/gitlab-ce/issues/49936.
prop_accessor :username, :password, :url, :api_url, :jira_issue_transition_id, :title, :description
 
Loading
Loading
@@ -24,7 +24,7 @@ class JiraService < IssueTrackerService
alias_method :project_url, :url
 
# When these are false GitLab does not create cross reference
# comments on JIRA except when an issue gets transitioned.
# comments on Jira except when an issue gets transitioned.
def self.supported_events
%w(commit merge_request)
end
Loading
Loading
@@ -69,16 +69,16 @@ class JiraService < IssueTrackerService
end
 
def help
"You need to configure JIRA before enabling this service. For more details
"You need to configure Jira before enabling this service. For more details
read the
[JIRA service documentation](#{help_page_url('user/project/integrations/jira')})."
[Jira service documentation](#{help_page_url('user/project/integrations/jira')})."
end
 
def title
if self.properties && self.properties['title'].present?
self.properties['title']
else
'JIRA'
'Jira'
end
end
 
Loading
Loading
@@ -97,7 +97,7 @@ class JiraService < IssueTrackerService
def fields
[
{ type: 'text', name: 'url', title: s_('JiraService|Web URL'), placeholder: 'https://jira.example.com', required: true },
{ type: 'text', name: 'api_url', title: s_('JiraService|JIRA API URL'), placeholder: s_('JiraService|If different from Web URL') },
{ type: 'text', name: 'api_url', title: s_('JiraService|Jira API URL'), placeholder: s_('JiraService|If different from Web URL') },
{ type: 'text', name: 'username', title: s_('JiraService|Username or Email'), placeholder: s_('JiraService|Use a username for server version and an email for cloud version'), required: true },
{ type: 'password', name: 'password', title: s_('JiraService|Password or API token'), placeholder: s_('JiraService|Use a password for server version and an API token for cloud version'), required: true },
{ type: 'text', name: 'jira_issue_transition_id', title: s_('JiraService|Transition ID(s)'), placeholder: s_('JiraService|Use , or ; to separate multiple transition IDs') }
Loading
Loading
@@ -130,7 +130,7 @@ class JiraService < IssueTrackerService
 
commit_url = build_entity_url(:commit, commit_id)
 
# Depending on the JIRA project's workflow, a comment during transition
# Depending on the Jira project's workflow, a comment during transition
# may or may not be allowed. Refresh the issue after transition and check
# if it is closed, so we don't have one comment for every commit.
issue = jira_request { client.Issue.find(issue.key) } if transition_issue(issue)
Loading
Loading
@@ -177,7 +177,7 @@ class JiraService < IssueTrackerService
{ success: success, result: result }
end
 
# JIRA does not need test data.
# Jira does not need test data.
# We are requesting the project that belongs to the project key.
def test_data(user = nil, project = nil)
nil
Loading
Loading
@@ -313,7 +313,7 @@ class JiraService < IssueTrackerService
name == "project_snippet" ? "snippet" : name
end
 
# Handle errors when doing JIRA API calls
# Handle errors when doing Jira API calls
def jira_request
yield
 
Loading
Loading
@@ -339,9 +339,9 @@ class JiraService < IssueTrackerService
def self.event_description(event)
case event
when "merge_request", "merge_request_events"
s_("JiraService|JIRA comments will be created when an issue gets referenced in a merge request.")
s_("JiraService|Jira comments will be created when an issue gets referenced in a merge request.")
when "commit", "commit_events"
s_("JiraService|JIRA comments will be created when an issue gets referenced in a commit.")
s_("JiraService|Jira comments will be created when an issue gets referenced in a commit.")
end
end
end
---
title: Replace 'JIRA' with 'Jira'
merge_request: 29849
author: Takuya Noguchi
type: other
Loading
Loading
@@ -1078,7 +1078,7 @@ test:
issues_url: "http://redmine/:project_id/:issues_tracker_id/:id"
new_issue_url: "http://redmine/projects/:issues_tracker_id/issues/new"
jira:
title: "JIRA"
title: "Jira"
url: https://sample_company.atlassian.net
project_key: PROJECT
 
Loading
Loading
# frozen_string_literal: true
 
# Changes JIRA DVCS user agent requests in order to be successfully handled
# Changes Jira DVCS user agent requests in order to be successfully handled
# by our API.
#
# Gitlab::Jira::Middleware is only defined on EE
Loading
Loading
Loading
Loading
@@ -209,7 +209,7 @@ The following documentation relates to the DevOps **Create** stage:
| [GitLab API](api/README.md) | Integrate GitLab via a simple and powerful API. |
| [GitLab Integration](integration/README.md) | Integrate with multiple third-party services with GitLab to allow external issue trackers and external authentication. |
| [GitLab Webhooks](user/project/integrations/webhooks.md) | Let GitLab notify you when new code has been pushed to your project. |
| [JIRA Development Panel](integration/jira_development_panel.md) **[PREMIUM]** | See GitLab information in the JIRA Development Panel. |
| [Jira Development Panel](integration/jira_development_panel.md) **[PREMIUM]** | See GitLab information in the Jira Development Panel. |
| [Project Services](user/project/integrations/project_services.md) | Integrate a project with external services, such as CI and chat. |
| [Trello Power-Up](integration/trello_power_up.md) | Integrate with GitLab's Trello Power-Up. |
 
Loading
Loading
Loading
Loading
@@ -125,7 +125,7 @@ This file lives in `/var/log/gitlab/gitlab-rails/integrations_json.log` for
Omnibus GitLab packages or in `/home/git/gitlab/log/integrations_json.log` for
installations from source.
 
It contains information about [integrations](../user/project/integrations/project_services.md) activities such as JIRA, Asana and Irker services. It uses JSON format like the example below:
It contains information about [integrations](../user/project/integrations/project_services.md) activities such as Jira, Asana and Irker services. It uses JSON format like the example below:
 
``` json
{"severity":"ERROR","time":"2018-09-06T14:56:20.439Z","service_class":"JiraService","project_id":8,"project_path":"h5bp/html5-boilerplate","message":"Error sending message","client_url":"http://jira.gitlap.com:8080","error":"execution expired"}
Loading
Loading
Loading
Loading
@@ -1473,7 +1473,7 @@ Example response when the GitLab issue tracker is used:
]
```
 
Example response when an external issue tracker (e.g. JIRA) is used:
Example response when an external issue tracker (e.g. Jira) is used:
 
```json
[
Loading
Loading
Loading
Loading
@@ -551,21 +551,21 @@ Get Irker (IRC gateway) service settings for a project.
GET /projects/:id/services/irker
```
 
## JIRA
## Jira
 
JIRA issue tracker.
Jira issue tracker.
 
### Get JIRA service settings
### Get Jira service settings
 
Get JIRA service settings for a project.
Get Jira service settings for a project.
 
```
GET /projects/:id/services/jira
```
 
### Create/Edit JIRA service
### Create/Edit Jira service
 
Set JIRA service for a project.
Set Jira service for a project.
 
> Starting with GitLab 8.14, `api_url`, `issues_url`, `new_issue_url` and
> `project_url` are replaced by `url`. If you are using an
Loading
Loading
@@ -579,18 +579,18 @@ Parameters:
 
| Parameter | Type | Required | Description |
| --------- | ---- | -------- | ----------- |
| `url` | string | yes | The URL to the JIRA project which is being linked to this GitLab project. For example, `https://jira.example.com`. |
| `api_url` | string | no | The base URL to the JIRA instance API. Web URL value will be used if not set. For example, `https://jira-api.example.com`. |
| `username` | string | yes | The username of the user created to be used with GitLab/JIRA. |
| `password` | string | yes | The password of the user created to be used with GitLab/JIRA. |
| `url` | string | yes | The URL to the Jira project which is being linked to this GitLab project. For example, `https://jira.example.com`. |
| `api_url` | string | no | The base URL to the Jira instance API. Web URL value will be used if not set. For example, `https://jira-api.example.com`. |
| `username` | string | yes | The username of the user created to be used with GitLab/Jira. |
| `password` | string | yes | The password of the user created to be used with GitLab/Jira. |
| `active` | boolean | no | Activates or deactivates the service. Defaults to false (deactivated). |
| `jira_issue_transition_id` | string | no | The ID of a transition that moves issues to a closed state. You can find this number under the JIRA workflow administration (**Administration > Issues > Workflows**) by selecting **View** under **Operations** of the desired workflow of your project. The ID of each state can be found inside the parenthesis of each transition name under the **Transitions (id)** column ([see screenshot][trans]). By default, this ID is set to `2`. |
| `jira_issue_transition_id` | string | no | The ID of a transition that moves issues to a closed state. You can find this number under the Jira workflow administration (**Administration > Issues > Workflows**) by selecting **View** under **Operations** of the desired workflow of your project. The ID of each state can be found inside the parenthesis of each transition name under the **Transitions (id)** column ([see screenshot][trans]). By default, this ID is set to `2`. |
| `commit_events` | boolean | false | Enable notifications for commit events |
| `merge_requests_events` | boolean | false | Enable notifications for merge request events |
 
### Delete JIRA service
### Delete Jira service
 
Remove all previously JIRA settings from a project.
Remove all previously Jira settings from a project.
 
```
DELETE /projects/:id/services/jira
Loading
Loading
Loading
Loading
@@ -13,10 +13,10 @@ See the documentation below for details on how to configure these services.
- [Auth0 OmniAuth](auth0.md) Enable the Auth0 OmniAuth provider
- [Bitbucket](bitbucket.md) Import projects from Bitbucket.org and login to your GitLab instance with your Bitbucket.org account
- [CAS](cas.md) Configure GitLab to sign in using CAS
- [External issue tracker](external-issue-tracker.md) Redmine, JIRA, etc.
- [External issue tracker](external-issue-tracker.md) Redmine, Jira, etc.
- [Gmail actions buttons](gmail_action_buttons_for_gitlab.md) Adds GitLab actions to messages
- [Jenkins](jenkins.md) Integrate with the Jenkins CI
- [JIRA](../user/project/integrations/jira.md) Integrate with the JIRA issue tracker
- [Jira](../user/project/integrations/jira.md) Integrate with the Jira issue tracker
- [Kerberos](kerberos.md) Integrate with Kerberos
- [LDAP](ldap.md) Set up sign in via LDAP
- [OAuth2 provider](oauth_provider.md) OAuth2 application creation
Loading
Loading
Loading
Loading
@@ -26,11 +26,11 @@ Every push rule could have its own use case, but let's consider some examples.
 
Let's assume you have the following requirements for your workflow:
 
- every commit should reference a JIRA issue, for example: `Refactored css. Fixes JIRA-123.`
- every commit should reference a Jira issue, for example: `Refactored css. Fixes JIRA-123.`
- users should not be able to remove git tags with `git push`
 
All you need to do is write a simple regular expression that requires the mention
of a JIRA issue in the commit message, like `JIRA\-\d+`.
of a Jira issue in the commit message, like `JIRA\-\d+`.
 
Now when a user tries to push a commit with a message `Bugfix`, their push will
be declined. Only pushing commits with messages like `Bugfix according to JIRA-123`
Loading
Loading
Loading
Loading
@@ -181,7 +181,7 @@ The GitLab University curriculum is composed of GitLab videos, screencasts, pres
 
### 3.9. Integrations
 
1. [How to Integrate JIRA and Jenkins with GitLab - Video](https://gitlabmeetings.webex.com/gitlabmeetings/ldr.php?RCID=44b548147a67ab4d8a62274047146415)
1. [How to Integrate Jira and Jenkins with GitLab - Video](https://gitlabmeetings.webex.com/gitlabmeetings/ldr.php?RCID=44b548147a67ab4d8a62274047146415)
1. [How to Integrate Jira with GitLab](../user/project/integrations/jira.md)
1. [How to Integrate Jenkins with GitLab](../integration/jenkins.md)
1. [How to Integrate Bamboo with GitLab](../user/project/integrations/bamboo.md)
Loading
Loading
Loading
Loading
@@ -80,7 +80,7 @@ Our integrations add great value to GitLab. User questions often relate to integ
 
- Learn about our Integrations (specially, not only):
- [LDAP](../../integration/ldap.md)
- [JIRA](../../project_services/jira.md)
- [Jira](../../project_services/jira.md)
- [Jenkins](../../integration/jenkins.md)
- [SAML](../../integration/saml.md)
 
Loading
Loading
Loading
Loading
@@ -66,7 +66,7 @@ With GitLab Enterprise Edition, you can also:
- Leverage continuous delivery method with [Canary Deployments](project/canary_deployments.md).
- Scan your code for vulnerabilities and [display them in merge requests](application_security/sast/index.md).
 
You can also [integrate](project/integrations/project_services.md) GitLab with numerous third-party applications, such as Mattermost, Microsoft Teams, HipChat, Trello, Slack, Bamboo CI, JIRA, and a lot more.
You can also [integrate](project/integrations/project_services.md) GitLab with numerous third-party applications, such as Mattermost, Microsoft Teams, HipChat, Trello, Slack, Bamboo CI, Jira, and a lot more.
 
## Projects
 
Loading
Loading
@@ -153,7 +153,7 @@ you have quick access to. You can also gather feedback on them through
## Integrations
 
[Integrate GitLab](../integration/README.md) with your preferred tool,
such as Trello, JIRA, etc.
such as Trello, Jira, etc.
 
## Webhooks
 
Loading
Loading
Loading
Loading
@@ -39,7 +39,7 @@ a GitLab project with any single Jira project.
If you have one Jira instance, you can pre-fill the settings page with a default
template. See the [Services Templates][services-templates] docs.
 
Configuration happens via user name and password. Connecting to a Jira server
Configuration happens via user name and password. Connecting to a Jira Server
via CAS is not possible.
 
In order to enable the Jira service in GitLab, you need to first configure the
Loading
Loading
@@ -47,13 +47,13 @@ project in Jira and then enter the correct values in GitLab.
 
### Configuring Jira
 
When connecting to **JIRA Server**, which supports basic authentication, a **username and password** are required. Check the link below and proceed to the next step:
When connecting to **Jira Server**, which supports basic authentication, a **username and password** are required. Check the link below and proceed to the next step:
 
- [Setting up a user in JIRA server](jira_server_configuration.md)
- [Setting up a user in Jira Server](jira_server_configuration.md)
 
When connecting to **JIRA Cloud**, which supports authentication via API token, an **email and API token**, are required. Check the link below and proceed to the next step:
When connecting to **Jira Cloud**, which supports authentication via API token, an **email and API token**, are required. Check the link below and proceed to the next step:
 
- [Setting up a user in JIRA cloud](jira_cloud_configuration.md)
- [Setting up a user in Jira Cloud](jira_cloud_configuration.md)
 
### Configuring GitLab
 
Loading
Loading
@@ -77,8 +77,8 @@ in the table below.
| ----- | ----------- |
| `Web URL` | The base URL to the Jira instance web interface which is being linked to this GitLab project. E.g., `https://Jira.example.com`. |
| `Jira API URL` | The base URL to the Jira instance API. Web URL value will be used if not set. E.g., `https://jira-api.example.com`. |
| `Username/Email` | Created when [configuring Jira step](#configuring-jira). Use `username` for **JIRA server** or `email` for **JIRA cloud**. |
| `Password/API token` |Created in [configuring Jira step](#configuring-jira). Use `password` for **JIRA server** or `API token` for **JIRA cloud**. |
| `Username/Email` | Created when [configuring Jira step](#configuring-jira). Use `username` for **Jira Server** or `email` for **Jira Cloud**. |
| `Password/API token` |Created in [configuring Jira step](#configuring-jira). Use `password` for **Jira Server** or `API token` for **Jira Cloud**. |
| `Transition ID` | This is the ID of a transition that moves issues to the desired state. It is possible to insert transition ids separated by `,` or `;` which means the issue will be moved to each state after another using the given order. **Closing Jira issues via commits or Merge Requests won't work if you don't set the ID correctly.** |
 
### Obtaining a transition ID
Loading
Loading
# Creating an API token in JIRA cloud
# Creating an API token in Jira Cloud
 
An API token is needed when integrating with JIRA Cloud, follow the steps
An API token is needed when integrating with Jira Cloud, follow the steps
below to create one:
 
1. Log in to <https://id.atlassian.com> with your email.
1. **Click API tokens**, then **Create API token**.
 
![JIRA API token](img/jira_api_token_menu.png)
![Jira API token](img/jira_api_token_menu.png)
 
![JIRA API token](img/jira_api_token.png)
![Jira API token](img/jira_api_token.png)
 
1. Make sure to write down your new API token as you will need it in the next [steps](jira.md#configuring-gitlab).
 
NOTE: **Note**
It is important that the user associated with this email has 'write' access to projects in JIRA.
It is important that the user associated with this email has 'write' access to projects in Jira.
 
The JIRA configuration is complete. You are going to need this new created token and the email you used to log in when [configuring GitLab in the next section](jira.md#configuring-gitlab).
The Jira configuration is complete. You are going to need this newly created token and the email you used to log in, when [configuring GitLab in the next section](jira.md#configuring-gitlab).
# Creating a username and password for JIRA server
# Creating a username and password for Jira Server
 
We need to create a user in Jira which will have access to all projects that
need to integrate with GitLab.
Loading
Loading
Loading
Loading
@@ -38,7 +38,7 @@ Click on the service links to see further configuration instructions and details
| [Hangouts Chat](hangouts_chat.md) | Receive events notifications in Google Hangouts Chat |
| [HipChat](hipchat.md) | Private group chat and IM |
| [Irker (IRC gateway)](irker.md) | Send IRC messages, on update, to a list of recipients through an Irker gateway |
| [JIRA](jira.md) | JIRA issue tracker |
| [Jira](jira.md) | Jira issue tracker |
| [Jenkins](../../../integration/jenkins.md) **[STARTER]** | An extendable open source continuous integration server |
| JetBrains TeamCity CI | A continuous integration and build server |
| [Mattermost slash commands](mattermost_slash_commands.md) | Mattermost chat and ChatOps slash commands |
Loading
Loading
Loading
Loading
@@ -462,31 +462,31 @@ module API
required: true,
name: :url,
type: String,
desc: 'The base URL to the JIRA instance web interface which is being linked to this GitLab project. E.g., https://jira.example.com'
desc: 'The base URL to the Jira instance web interface which is being linked to this GitLab project. E.g., https://jira.example.com'
},
{
required: false,
name: :api_url,
type: String,
desc: 'The base URL to the JIRA instance API. Web URL value will be used if not set. E.g., https://jira-api.example.com'
desc: 'The base URL to the Jira instance API. Web URL value will be used if not set. E.g., https://jira-api.example.com'
},
{
required: true,
name: :username,
type: String,
desc: 'The username of the user created to be used with GitLab/JIRA'
desc: 'The username of the user created to be used with GitLab/Jira'
},
{
required: true,
name: :password,
type: String,
desc: 'The password of the user created to be used with GitLab/JIRA'
desc: 'The password of the user created to be used with GitLab/Jira'
},
{
required: false,
name: :jira_issue_transition_id,
type: String,
desc: 'The ID of a transition that moves issues to a closed state. You can find this number under the JIRA workflow administration (**Administration > Issues > Workflows**) by selecting **View** under **Operations** of the desired workflow of your project. The ID of each state can be found inside the parenthesis of each transition name under the **Transitions (id)** column ([see screenshot][trans]). By default, this ID is set to `2`'
desc: 'The ID of a transition that moves issues to a closed state. You can find this number under the Jira workflow administration (**Administration > Issues > Workflows**) by selecting **View** under **Operations** of the desired workflow of your project. The ID of each state can be found inside the parenthesis of each transition name under the **Transitions (id)** column ([see screenshot][trans]). By default, this ID is set to `2`'
}
],
'kubernetes' => [
Loading
Loading
Loading
Loading
@@ -7581,13 +7581,13 @@ msgstr ""
msgid "JiraService|If different from Web URL"
msgstr ""
 
msgid "JiraService|JIRA API URL"
msgid "JiraService|Jira API URL"
msgstr ""
 
msgid "JiraService|JIRA comments will be created when an issue gets referenced in a commit."
msgid "JiraService|Jira comments will be created when an issue gets referenced in a commit."
msgstr ""
 
msgid "JiraService|JIRA comments will be created when an issue gets referenced in a merge request."
msgid "JiraService|Jira comments will be created when an issue gets referenced in a merge request."
msgstr ""
 
msgid "JiraService|Jira issue tracker"
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment