Add RTC project service to GitLab
What does this MR do?
This MR is to add a new project service called RTC (EWM as of 7.0) work item tracker service to GitLab. This service extends issue tracker service. The service looks for certain patterns in the commit message and annotates them with links to RTC work items. This complements the RTC Integration with GitLab.
The service configuration takes three parameters as input
- Project URL - URL to the RTC project area
- Issues URL - URL to view a work item in RTC
- New Issue URL - URL to create a new work item in RTC
I have added documentation for the service.
Screenshots
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) [DONE] [EE N/A] @gl-docsteam -
Code review guidelines -
Merge request performance guidelines [DONE] -
Style guides [DONE] [Ran Rubocop locally] -
Database guides [N/A] -
Separation of EE specific content [N/A]
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process.
I have added some manual tests to this MR. See Manual Tests section. -
Tested in all supported browsers [N/A] -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
[N/A] -
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods [N/A] -
Security reports checked/validated by a reviewer from the AppSec team [N/A]
Manual Tests
- Verifying configuring RTC project service in GitLab project
- Click Settings->Integrations.
- Click RTC.
- Add the URLs for each of the fields as mentioned in the documentation.
- Click the button to enable the service.
- Click Save.
- Verify navigation to RTC project area
- After performing the above test, verify the following
- You should see a RTC tab on the left pane.
- Clicking the link should take you to the project area home page.
- Verify navigation to RTC work items from commit message
- In the project, edit a file.
- In the commit message, mention work items such as rtcwi 34 and work item 45.
- Click Commit Changes.
- In the left pane, click Commits. Click the first commit
- Verify: In the commit message, rtcwi 34 and workitem 45 are links.
- Verify: Click the links should take you to the work item pages.
- Verify navigation to RTC work items from merge request description
- In the project, edit a file.
- In the commit message, mention work items such as rtcwi 34 and work item 45.
- In the Target branch section, clear master and type some branch name.
- Click Commit Changes.
- In the merge request page, click Submit Merge Request.
- Verify: In the merge request description, rtcwi 34 and workitem 45 are links.
- Verify: Click the links should take you to the work item pages.
- Verify navigation to RTC work items from merge request comments
- In the above merge request, add a comment like rtcwi 34 and workitem 45 and save.
- Verify: In the merge request description, rtcwi 34 and workitem 45 are links.
- Verify: Click the links should take you to the work item pages.
- Verify pattern like CODE-123, BUG-123 are not annotated
- In the project, edit a file.
- In the commit message, mention work items such as rtcwi 34 and work item 45 CODE-123 BUG-123
- Click Commit Changes.
- In the left pane, click Commits. Click the first commit
- Verify: In the commit message, rtcwi 34 and workitem 45 are links, while CODE-123 and BUG-123 are not links.
- Verify: Click the links should take you to the work item pages.
Edited by Lakshmi Narasimhan