GitLab integration | Zoho Sprints Help

GitLab integration

Manage your GitLab repositories in Zoho Sprints. Map the repositories to relevant projects, attach commits, and pull requests in the work item details page. 
Notes
  Access control:  Workspace Owner   

Authorize GitLab account         

  1. Click the gear icon in the top-right corner. The settings window will appear.
  2. Click Others under Marketplace.   
  3. Click configure on the GitLab app.
  4. Accept the terms.
  5. Select Cloud or Self-Managed
  6. On click of Cloud, you will be redirected to GitLab.com.
If you click Self-Managed,
Quote
  1. Copy and paste the  URL and A ccess Token from your self-managed version and click  Configure.      
  

Configure your account from the Self-Managed version of GitLab

  1. Navigate to Settings in the upper-right corner in the self-managed version of GitLab.
  2. Navigate to Access Token in the left panel. 
  3. Enable api and read_user scopes and create a new access token.
  4. Copy and paste the Access Token from GitLab to Zoho Sprints.  

Info
  1. My Repository: Personal repository lists all the repositories with admin access in GitLab. 
  1. Workspace Repository: Workspace repository lists all the repositories that are mapped from your personal repository. Once mapped, these repositories can be associated to the projects. Once associated, workspace members can add or attach commit and pull requests to a work item using quick commands or from the  work item details  page. 

Map your repositories to workspace repository  

  1. Click the gear icon in the top-right corner. The settings window will appear.
  2. Select Others under Marketplace.  
  3. Select GitLab.  
  4. View the list of repositories in My Repository.    
  5. Hover over the repository name.   
  6. Click the arrow icon next to the repository name to map the repository to your workspace.   

Associate projects to workspace repository

  1. You can associate a project to your workspace repository.
  2. Go to GitLab.
  3. View the list of repositories in your Workspace Repository.
  4. Click Associate Projects button. The projects listing will appear.
  5. Select the projects and click Update.  
Notes
You can associate only 50 projects to a workspace repository.

Sync repository issues to projects 

While mapping your projects to the repository, you can mark it as an 'Issue Project'. This will automatically sync all the upcoming issues that are added in your repository.
  1. Go to GitLab.
  2. Map repositories to your workspace.
  3. Click the Associate Projects button. The project listing will appear.
  4. Select project.
  5. Click the toggle switch to enable Sync Only Bugs. (You can associate multiple projects to your repository. But, you can mark only one project to 'Sync Only Bugs'.)
  6. Click Update.
Notes
  1. The estimation points that you define in GitLab will be synced to the nearest point in Zoho Sprints. 
  2. Since we sync only the bugs to the marked project, all the work items are created in the default work item type 'BUG'. 
  3. Status of the work items will be mapped to the open and closed status in Zoho Sprints. 

Sync work items to GitLab repository

You will be able to simultaneously create data in GitLab while creating a work item in Sprints. The item creation screen includes the ability to add that particular work item to your GitLab account. The data is thus synced and the interaction is facilitated from and to Sprints.

Fields Synced from Sprints

Quote
Title, Description, Comments, and Weight (Estimation Points)
Notes
  1. Only the repositories with "Sync Only Bugs" enabled will be listed in the Create Item window.
  2. The estimation points that you define in Sprints will be synced to the nearest point in GitLab.  
  3. Status of the work items will be mapped to the open and closed status in GitLab. 

Quick Commands in Zoho Sprints

Once you are done with mapping of repositories and associating projects to the repositories, you are all set to start attaching commits and pull requests. Here are the supported commands.   
Notes
Work item tagging is supported only through the pull request  "Description"  field.  

Format  
Syntax  
Purpose  
#workitem   
Represents the work item ID.  
#comment  
Add comment for the work item.  
#status  
Update the status of the work item.  
#priority  
Update the priority of the work item.  
#time  
Add log hours for the work item.  
#<Project Prefix>- <i/I><Item number>  
Example:   #SP-i30  
#workitemid #comment <message1> #comment <message2>  
Example:   #SP-I15 #comment Please share the final build by EOD. #comment Fix the existing issues and update the local build.  
Note:  
You can add multiple comments to a single work item.  
#workitemid #status <status_name>  
Example 1:   #SP-i20 #status Done  
Example 2:   #SP-i20 #status To_be_Tested  
Note:  
1. If the status name carries multiple words, separate them with an underscore.  
2. Statuses are not case sensitive.  
#workitemid #priority <priority_name>  
Example 1:   #SP-i40 #priority Critical  
Example 2: #SP-i42 #priority Should_be  
Note:  
1. If the priority name carries multiple words, separate them with an underscore.  
2. Priorities are not case sensitive.  
#workitemid #time <hours>h <minutes>m  
Example:   #SP-I52 #time 5h 30m  
    
Notes
  • The email address of the GitLab user should be registered with the Zoho Sprints team only then they can process the commits: #comment, #time, #status, and #priority.   
Advanced commands      

Single command for multiple work items

Syntax  
#workitemid,#workitemid,#workitemid #comment <message>    
Example  
#SM-I25,#SM-I42,#SM-I98 #comment Issues are resolved and updated in the local build.  
What happens?  
All the three work items are added with the comment.   

Multiple commands for single work item

Syntax  
#workitemid #comment <message> #priority <priority_name> #time < > h < > m #status <status_name>  
Example  
#SM-I34 #comment List out the requirements #priority High #time 5h 3m #status In_progress  
What happens?  
The work item is added with comment and log hours. It is also updated with status and priority.  

Multiple commands for multiple work items

Syntax  
#workitemid,#workitemid,#workitemid #comment <message> #priority <priority_name> #time <>h <>m  #status <status_name>  
Example  
#SM-I34, #SM-I45, #SM-I54 #comment List out the requirements #priority High #time 5h 3m #status In_progress  
What happens?  
All the three work items are added with comments, log hours and updated with status and priority.   

Attach commits from work item details section  
  1. Go to the work item details page.
  2. Select GitLab from the tabs.  
  3. Click Attach Commit.  
  4. Enter the required details.  * All the fields are mandatory.  
  5. Click Attach.

    
Attach pull requests from work item details section  
  1. Go to the work item details page.   
  2. Select GitLab from the tabs.  
  3. Click Attach Pull Request.  
  4. Enter the required details.  * All the fields are mandatory.   
  5. Click Attach.  

When you attach a commit via GitLab or from the work item details page, we trigger a feed message and notification to the work item assignees.   
How to copy the work item ID?  
Info
It becomes daunting when you specify the project prefix and ID manually. You can just copy the work item ID from the work item details page and paste it in your commit messages and pull request comment.
Delete commits and pull request  
You can delete the commit and pull request directly from the work item details page. Hover over the attached commit and pull request and click   .  
Access for commands  
Adding comments       
  • You must be an active user in the project to tag comments to work items in your commits.  
  • Anyone can add comments to the work items in the backlog.    
  • You must be a part of the sprint and have the work item assigned to you before you can add comments to it.   
  • You can also add comments for unassigned work items.   
Adding Log hours  
  • You must be an active user in the project to add log hours to the work items.  
  • You can log hours for the work items only in active sprint.   
  • You must be a part of the sprint.   
  • You can only add log hours for unassigned work items and the work items that are assigned to you.  
Updating priority      
  • You must be an active user in the project to update the priority of the work items. 
  • You should be the admin, joint admin, or project manager to update the priority of the work items.       
  • The priority name that you provide must be an existing priority in the project.  
  • You can update the priority of the work items only for the active and upcoming sprints and the work items in the backlog.  
  • You cannot update the priority of the work items if they are in the closed status.    
Updating status      
  • You must be an active user in the project to update the status of the work items.   
  • You can be a sprint owner, assignee, admin, manager, or sprint creator to update the status of the work items.   
  • The status name that you mention must be an existing status in the project.  
  • You can update the status of the work items only in active sprints.   
CI/CD 
There is a CI/CD option for GitLab. This will be available only for the mapped repositories. All your build updates will be available here. You can view the pipeline, branches, its stages and jobs. 

To access GitLab in CI/CD:
  1. Sign in to Zoho Sprints.
  2. Select the CI/CD option in the left navigation panel. The tabs for CI/CD will appear.
  3. Select GitLab tab.
  4. Select a mapped repository. The pipeline and commits in the repository will appear.
  5. Hover over pipeline to view details and stage.
  6. Click the links to view the respective details.
You would also be able to view the mapped work item when you click a particular commit.

Disassociate projects from repository   

You can also disassociate projects from the repository in two different ways.  
From the associate project form  
  1. Go to GitLab.  
  2. Click  the Associate Project button in your Workspace Repository.      
  3. Deselect the projects in the Associate Projects  form.  
  4. Click Update.   
Directly from the Workspace Repository  
  1. Go to GitLab.  
  2. Click the project count next displayed.  
  3. Hover over the project that you want to dissociate.  
  4. Click Remove Project.   
Remove repositories from team  
  1. Go to GitLab.  
  2. View the list of repositories in your Workspace Repository.  
  3. Hover over the repository name.   
  4. Click the arrow icon to the left end of the repository name to unmap the repository from the workspace.   
Info
What happens when the repository is removed from the workspace?  
   
You can no longer attach commits and pull requests to the work items either via GitLab or directly from the work item details page.
Remove GitLab authorization  

You can remove the Gitlab account anytime from Zoho Sprints. To do this:  
  1. Go to GitLab.   
  2. Click    at the bottom of My repository. A confirmation pop-up will appear.
  3. Click Delete.  
Info
What happens when the authorization is removed?    

Once the repository is mapped to Workspace Repository, a webhook or subscription is created between both the applications. When the authorization is removed, the integration between both the application is stopped and all the mapped repositories and its associated projects will be removed.    

However, the webhook or subscription will not be deleted. If you want to delete the webhook or subscription created when the authorization was invoked, go to your GitLab settings and disable the webhook created for the respective workspace or my repository.