Integration Guide

tracked folder logo Tracked Folders Jira Server Only

Introduced in v2.9.0 of the Git add-on, this feature scans a locally accessible path for cloned Git repositories and automatically imports those Git repository references into Jira.

warning
The Add tracked folder feature requires that Jira and the git servers be on the same filesystem.  Make sure that the user that Jira is running with has access permissions to the path with the git repositories.

Connecting to a Tracked Folder

For this feature, a local path to the git repository residing on the same server as Jira is required.  For example, /home/ec2-user/repositories/*.

Use this path via Git Repositories configuration page > Connect to Git Repository dropdown > Add tracked folder.

Add tracked folder dropdown

In the above example repository root, /home/ec2-user/repositories/*, all repositories under this mask (/home/ec2-user/repositores/<repo1>, /home/ec2-user/repositores/<repo2>) will be handled as one entry in the Git Repositories configuration page.  For other features, these are treated as seperate repositories.

fyi
The Add tracked folder wizard scans the local path one folder level deep.

For managing tracked folder repositories, see Documentation: Adding Tracked Folders.

Jira Administrators

It is possible to track all repositories hosted on a GitLab server from inside a Jira server.  Setup NFS server on the GitLab computer and mount GitLab repositories folder as a remote NFS folder on Jira server.  Configure NFS permissions to allow Jira to access GitLab folders by using either of the two possible solutions:

Solution 1.

The 'all_squash' option must not be used in the NFS server 'etc/exports' file for GitLab folders.  The NFS client should have the 'git' group with the same GID as the 'git' group on the NFS server.  The Jira user on the NFS client should be added to the group 'git'.

Example of '/etc/exports' line:
/var/opt/gitlab/git-data/repositories/testrepo xx.xx.xx.xx/24(ro,root_squash,async)

Solution 2.

Use the 'all_squash,async,anonuid=$uid,anongid=$gid' option on NFS server, where $uid and $gid are user ID and group ID for 'git' user and 'git' group respectively (or another user/group which you are using to access GitLab repositories on GitLab server).

Example of '/etc/exports' line:
/var/opt/gitlab/git-data/repositories/testrepo xx.xx.xx.xx/24(ro,all_squash,async,anonuid=497,anongid=497)

In both cases either 'ro' or 'rw' options may be used on NFS server.