PHPackages                             lesstif/gitlab-jira-integration - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. lesstif/gitlab-jira-integration

AbandonedArchivedProject

lesstif/gitlab-jira-integration
===============================

This is the advanced integrator GitLab CE(Community Edition) and Atlassian's JIRA.

0.7.0(10y ago)681221[1 PRs](https://github.com/lesstif/gitlab-jira-integration/pulls)Apache 2.0PHP

Since Jun 17Pushed 8y ago10 watchersCompare

[ Source](https://github.com/lesstif/gitlab-jira-integration)[ Packagist](https://packagist.org/packages/lesstif/gitlab-jira-integration)[ RSS](/packages/lesstif-gitlab-jira-integration/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (6)Dependencies (6)Versions (9)Used By (0)

GitLab JIRA Integration
=======================

[](#gitlab-jira-integration)

What is it?
-----------

[](#what-is-it)

- [JIRA DVCS Connector Plugin](https://marketplace.atlassian.com/plugins/com.atlassian.jira.plugins.jira-bitbucket-connector-plugin) does not support gitlab.
- [GitLab Community Edition](http://doc.gitlab.com/ee/integration/jira.html) does not support Advanced JIRA Integration(EE only feature).

#### Note

[](#note)

> GitLab 8.3 now supported Advanced JIRA Integration in CE. see

GitLab-JIRA-Integration is a small PHP standalone app executed by gitlab web hooks and interact with JIRA using JIRA-REST API. If you have questions contact to me or open an issue on GitHub.

How it works.
-------------

[](#how-it-works)

[![How it works.](https://cloud.githubusercontent.com/assets/404534/8185075/f5241acc-147c-11e5-9961-32e241948ee9.png)](https://cloud.githubusercontent.com/assets/404534/8185075/f5241acc-147c-11e5-9961-32e241948ee9.png)

Requirements
------------

[](#requirements)

- PHP &gt;= 5.5.9
- Lumen framework &gt;= 5.1
- [php-jira-rest-client](https://github.com/lesstif/php-jira-rest-client)
- Atlassian JIRA 6 or above
- Gitlab CE 6 or above

Installation
------------

[](#installation)

1. Download and Install PHP Composer.

    ```
    curl -sS https://getcomposer.org/installer | php
    ```
2. clonning gitlab-jira-intergration project

    ```
    $ git clone https://github.com/lesstif/gitlab-jira-integration.git
    ```
3. Run the composer install command.

    ```
    $ composer install
    ```
4. Now you need define your a Jira and Gitlab connection info into `.env` configuration.

    ```
    JIRA_HOST="https://your-jira.host.com"
    JIRA_USER="jira-username"
    JIRA_PASS="jira-password"
    GITLAB_HOST="https://your-gitlab.host.com"
    GITLAB_TOKEN="gitlab-private-token-for-api"

    ```

**Tip:** In the following steps, you will generate your private token for API.

- login gitlab and click on **Profile Settings**
- Click on **Account**
- Here, You can find your private token. [![Private Token](https://cloud.githubusercontent.com/assets/404534/8210509/555cf47e-154d-11e5-83da-84f6f96b4fae.png)](https://cloud.githubusercontent.com/assets/404534/8210509/555cf47e-154d-11e5-83da-84f6f96b4fae.png)

Next, copy config.integration.example.json to `config.integration.json`.

```
$ cp config.integration.example.json config.integration.json
```

Here is the default configuration, for interact with Jira.

```
{
    "accept.host": [
        "localhost",
        "your-gitlab-host-here"
    ],
    "transition": {
        "message": "[~%s] Issue %s with %s",
        "keywords": [
            [
                "Resolved",
                "[resolve|fix]"
            ],
            [
                "Closed",
                "[close]"
            ]
        ]
    },
    "referencing": {
        "message": "[~%s] mentioned this issue in %s"
    },
    "merging": {
        "message": "[~%s] COMMIT_MESSAGE with %s"
    }
}
```

#### transition

[](#transition)

- **message** : "\[~%s\] issue %s with %s" : Converted to "**User** Issue **Resolved** with **Commit URL**"
- **keywords**: if commit message had second element(eg: resolve or fix),then issue status transition to first element.(eg : Resolved)

Usage
-----

[](#usage)

Run PHP standalone web server on the gitlab-jira integration server. (eg: my-host.com).

```
php artisan serve --host 0.0.0.0 --port 9000

```

Configuration
-------------

[](#configuration)

### gitlab web hook configuration

[](#gitlab-web-hook-configuration)

- Choose &gt; **Project Settings** -&gt; **Web Hooks**.
- Setting URL to your gitlab-jira integration's running Host. (eg: ****) [![gitlab configuration.](https://cloud.githubusercontent.com/assets/404534/8638183/7f7951c2-28ed-11e5-987f-5258f1bc2bec.png)](https://cloud.githubusercontent.com/assets/404534/8638183/7f7951c2-28ed-11e5-987f-5258f1bc2bec.png)

**Tip:** If you decide to change the hook receiving URI from the default, Open the app/Http/routes.php file in a text editor and find this line:

```
$app->post('gitlab/hook',[
	'as' => 'hook', 'uses' => 'GitlabController@hookHandler'
]);
```

change to 'gitlab/hook' to desired the URI (eg: 'gitlab/my-hook-receiver')

### Batch gitlab webhook registration.

[](#batch-gitlab-webhook-registration)

1. modify 'url' field and save to hook.json

    ```
    {
    "project_id": 5,
    "url": "https://localhost:9000/gitlab/hook/",
    "push_events": true,
    "issues_events": false,
    "merge_requests_events": true,
    "tag_push_events": true
    }
    ```
2. modify url(ttp://my-host.com:9000/) to your url and running curl command

    ```
    curl -X POST -d @hook.json http://my-host.com:9000/gitlab/projects/add-hook-all-projects
    ```
3. login gitlab and goto Choose &gt; **Project Settings** -&gt; **Web Hooks**. Then confirm your web hook settings.

Checking Installation
---------------------

[](#checking-installation)

1. To get started, let's running a curl command on your command line.

    ```
    curl http://myhost.com:9000/gitlab/user/list
    ```

You can see response json data including gitlab user list and created user list file to 'storage/app/users.json'. `json { "1234": { "name": "KwangSeob Jeong", "username": "lesstif", "state": "active" } } `

Usage
-----

[](#usage-1)

### Referencing JIRA isssues

[](#referencing-jira-isssues)

- git commit with JIRA Issue Key(eg. TEST-123 or test-123)
- Gitlab-Jira-Integrator will automatically add a comment in specific JIRA Issue.

### Resolving or Closing JIRA isssues

[](#resolving-or-closing-jira-isssues)

- git commit with JIRA Issue Key and trigger keywords(eg. 'Closed TEST-123' or 'fix test-123')
- Gitlab-Jira-Integrator will automatically add a comment and closing(or fixing) directly in specific JIRA Issue by using trigger keywords(setting in config.integration.json) in commit message.

### Issue Time Tracking

[](#issue-time-tracking)

not yet implemented.

License
=======

[](#license)

Apache V2 License

See Also
========

[](#see-also)

- [GitLab Web hooks](http://doc.gitlab.com/ce/web_hooks/web_hooks.html)
- [JIRA 6.2 REST API documentation](https://docs.atlassian.com/jira/REST/6.2/)
- [GitLab-EE Jira integration](http://doc.gitlab.com/ee/integration/jira.html)
- [Processing JIRA issues with commit messages](https://confluence.atlassian.com/display/Cloud/Processing+JIRA+issues+with+commit+messages)

###  Health Score

31

—

LowBetter than 68% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~11 days

Total

7

Last Release

3908d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/45f736b85898f90b858e889fa4baaedfbf9868ca91dec91bbea54e4630db1c0f?d=identicon)[lesstif](/maintainers/lesstif)

---

Top Contributors

[![lesstif](https://avatars.githubusercontent.com/u/404534?v=4)](https://github.com/lesstif "lesstif (52 commits)")

---

Tags

gitlabjiragitlab-cejira-gitlabjira-gitlab-inte

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/lesstif-gitlab-jira-integration/health.svg)

```
[![Health](https://phpackages.com/badges/lesstif-gitlab-jira-integration/health.svg)](https://phpackages.com/packages/lesstif-gitlab-jira-integration)
```

###  Alternatives

[laravel/framework

The Laravel Framework.

34.6k509.9M16.9k](/packages/laravel-framework)[hwi/oauth-bundle

Support for authenticating users using both OAuth1.0a and OAuth2 in Symfony.

2.4k21.5M67](/packages/hwi-oauth-bundle)[laravel/vapor-cli

The Laravel Vapor CLI

31310.7M8](/packages/laravel-vapor-cli)[tempest/framework

The PHP framework that gets out of your way.

2.1k23.1k9](/packages/tempest-framework)[flat3/lodata

OData v4.01 Producer for Laravel

96320.9k](/packages/flat3-lodata)[concrete5/core

Concrete core subtree split

19159.3k48](/packages/concrete5-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
