• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

release-engineering / Sync2Jira / 18378802996

09 Oct 2025 01:59PM UTC coverage: 73.221% (-5.0%) from 78.204%
18378802996

Pull #378

github

web-flow
Merge 2ce53e22f into e93012104
Pull Request #378: Add gitlab support

362 of 553 branches covered (65.46%)

Branch coverage included in aggregate %.

72 of 182 new or added lines in 7 files covered. (39.56%)

1 existing line in 1 file now uncovered.

945 of 1232 relevant lines covered (76.7%)

0.77 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

47.83
/sync2jira/api/gitlab_client.py
1
from gitlab import Gitlab
1✔
2

3

4
class GitlabClient:
1✔
5

6
    def __init__(self, url, token, project):
1✔
NEW
7
        self.url = url
×
NEW
8
        self.token = token
×
NEW
9
        self.project = project
×
NEW
10
        self._client = Gitlab(url=url, private_token=token)
×
NEW
11
        self._project = self._client.get(self.project)
×
12

13
    def fetch_issue(self, iid):
1✔
NEW
14
        return self._project.issues.get(iid)
×
15

16
    def fetch_notes_for_issue(self, iid):
1✔
NEW
17
        issue = self.fetch_issue(iid)
×
NEW
18
        return GitlabClient.map_notes_to_intermediary(issue.notes.list(all=True))
×
19

20
    def fetch_mr(self, iid):
1✔
NEW
21
        return self._project.mergerequests.get(iid)
×
22

23
    def fetch_notes_for_mr(self, iid):
1✔
NEW
24
        mr = self.fetch_mr(iid)
×
NEW
25
        return GitlabClient.map_notes_to_intermediary(mr.notes.list(all=True))
×
26

27
    @staticmethod
1✔
28
    def map_notes_to_intermediary(notes):
1✔
NEW
29
        return [
×
30
            {
31
                "author": note.author.username,
32
                "name": note.author.name,
33
                "body": note.body,
34
                "id": note.id,
35
                "date_created": note.created_at,
36
                "changed": note.updated_at,
37
            }
38
            for note in notes
39
        ]
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc