Class: GitlabQuality::TestTooling::Report::GroupIssues::IssueManager
- Inherits:
-
Object
- Object
- GitlabQuality::TestTooling::Report::GroupIssues::IssueManager
- Defined in:
- lib/gitlab_quality/test_tooling/report/group_issues/issue_manager.rb
Constant Summary collapse
- DEFAULT_MAX_AGE_HOURS =
24- ISSUES_PER_PAGE =
50- GROUPED_ISSUE_LABELS =
Set.new(%w[test failure::test-environment automation:bot-authored type::maintenance]).freeze
Instance Method Summary collapse
- #create_or_update_issue(grouped_failure) ⇒ Object
-
#initialize(options = {}) ⇒ IssueManager
constructor
A new instance of IssueManager.
Constructor Details
#initialize(options = {}) ⇒ IssueManager
Returns a new instance of IssueManager.
12 13 14 15 16 17 18 |
# File 'lib/gitlab_quality/test_tooling/report/group_issues/issue_manager.rb', line 12 def initialize( = {}) @options = @client = [:gitlab] @issue_finder = IssueFinder.new(@client, @options) @issue_updater = IssueUpdater.new(@client, @options) @issue_creator = IssueCreator.new(@client, @options) end |
Instance Method Details
#create_or_update_issue(grouped_failure) ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/gitlab_quality/test_tooling/report/group_issues/issue_manager.rb', line 20 def create_or_update_issue(grouped_failure) existing_issue = @issue_finder.find_existing_issue(grouped_failure) if existing_issue @issue_updater.update_existing_issue(existing_issue, grouped_failure) else @issue_creator.create_new_issue(grouped_failure) end end |