Module: SystemNoteService
- Extended by:
- SystemNoteService
- Included in:
- SystemNoteService
- Defined in:
- app/services/system_note_service.rb
Overview
SystemNoteService
Used for creating system notes (e.g., when a user references a merge request from an issue, an issue’s assignee changes, an issue is closed, etc.)
Instance Method Summary collapse
-
#abort_merge_when_pipeline_succeeds(noteable, project, author, reason) ⇒ Object
Called when ‘merge when pipeline succeeds’ is aborted.
-
#add_commits(noteable, project, author, new_commits, existing_commits = [], oldrev = nil) ⇒ Object
Called when commits are added to a merge request.
- #add_email_participants(noteable, project, author, body) ⇒ Object
- #add_merge_request_draft_from_commit(noteable, project, author, commit) ⇒ Object
- #add_timeline_event(timeline_event) ⇒ Object
-
#approve_mr(noteable, user) ⇒ Object
Called when the merge request is approved by user.
- #auto_resolve_prometheus_alert(noteable, project, author) ⇒ Object
-
#cancel_merge_when_pipeline_succeeds(noteable, project, author) ⇒ Object
Called when ‘merge when pipeline succeeds’ is canceled.
- #change_alert_status(alert, author, reason = nil) ⇒ Object
- #change_assignee(noteable, project, author, assignee) ⇒ Object
-
#change_branch(noteable, project, author, branch_type, event_type, old_branch, new_branch) ⇒ Object
Called when a branch in Noteable is changed.
-
#change_branch_presence(noteable, project, author, branch_type, branch, presence) ⇒ Object
Called when a branch in Noteable is added or deleted.
- #change_description(noteable, project, author) ⇒ Object
- #change_incident_severity(incident, author) ⇒ Object
- #change_incident_status(incident, author, reason = nil) ⇒ Object
- #change_issuable_assignees(issuable, project, author, old_assignees) ⇒ Object
- #change_issuable_contacts(issuable, project, author, added_count, removed_count) ⇒ Object
- #change_issuable_reviewers(issuable, project, author, old_reviewers) ⇒ Object
- #change_issue_confidentiality(issue, project, author) ⇒ Object
- #change_issue_type(issue, author, previous_type) ⇒ Object
-
#change_start_date_or_due_date(noteable, project, author, changed_dates) ⇒ Object
Called when the due_date or start_date of a Noteable is changed.
- #change_status(noteable, project, author, status, source = nil) ⇒ Object
- #change_task_status(noteable, project, author, new_task) ⇒ Object
-
#change_time_estimate(noteable, project, author) ⇒ Object
Called when the estimated time of a Noteable is changed.
-
#change_time_spent(noteable, project, author) ⇒ Object
Called when the spent time of a Noteable is changed.
- #change_title(noteable, project, author, old_title) ⇒ Object
- #close_after_error_tracking_resolve(issue, project, author) ⇒ Object
- #create_new_alert(alert, monitoring_tool) ⇒ Object
-
#created_timelog(issuable, project, author, timelog) ⇒ Object
Called when a timelog is added to an issuable.
- #cross_reference(mentioned, mentioned_in, author) ⇒ Object
- #cross_reference_disallowed?(mentioned, mentioned_in) ⇒ Boolean
- #cross_reference_exists?(mentioned, mentioned_in) ⇒ Boolean
- #delete_timeline_event(noteable, author) ⇒ Object
-
#design_discussion_added(discussion_note) ⇒ Object
Called when a new discussion is created on a design.
-
#design_version_added(version) ⇒ Object
Parameters: - version [DesignManagement::Version].
- #diff_discussion_outdated(discussion, project, author, change_position) ⇒ Object
- #discussion_continued_in_issue(discussion, project, author, issue) ⇒ Object
- #discussion_lock(issuable, author) ⇒ Object
- #edit_timeline_event(timeline_event, author, was_changed:) ⇒ Object
- #handle_merge_request_draft(noteable, project, author) ⇒ Object
- #log_resolving_alert(alert, monitoring_tool) ⇒ Object
- #mark_canonical_issue_of_duplicate(noteable, project, author, duplicate_issue) ⇒ Object
- #mark_duplicate_issue(noteable, project, author, canonical_issue) ⇒ Object
-
#merge_when_pipeline_succeeds(noteable, project, author, sha) ⇒ Object
Called when ‘merge when pipeline succeeds’ is executed.
- #new_alert_issue(alert, issue, author) ⇒ Object
-
#new_issue_branch(issue, project, author, branch, branch_project: nil) ⇒ Object
Called when a branch is created from the ‘new branch’ button on a issue Example note text:.
- #new_merge_request(issue, project, author, merge_request) ⇒ Object
- #noteable_cloned(noteable, project, noteable_ref, author, direction:, created_at: nil) ⇒ Object
- #noteable_moved(noteable, project, noteable_ref, author, direction:) ⇒ Object
- #relate_issuable(noteable, noteable_ref, user) ⇒ Object
- #relate_work_item(noteable, work_item, user) ⇒ Object
-
#remove_timelog(noteable, project, author, timelog) ⇒ Object
Called when a timelog is removed from a Noteable.
- #resolve_all_discussions(merge_request, project, author) ⇒ Object
-
#tag_commit(noteable, project, author, tag_name) ⇒ Object
Called when a commit was tagged.
- #unapprove_mr(noteable, user) ⇒ Object
- #unrelate_issuable(noteable, noteable_ref, user) ⇒ Object
- #unrelate_work_item(noteable, work_item, user) ⇒ Object
- #zoom_link_added(issue, project, author) ⇒ Object
- #zoom_link_removed(issue, project, author) ⇒ Object
Instance Method Details
#abort_merge_when_pipeline_succeeds(noteable, project, author, reason) ⇒ Object
Called when ‘merge when pipeline succeeds’ is aborted
170 171 172 |
# File 'app/services/system_note_service.rb', line 170 def abort_merge_when_pipeline_succeeds(noteable, project, , reason) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ).abort_merge_when_pipeline_succeeds(reason) end |
#add_commits(noteable, project, author, new_commits, existing_commits = [], oldrev = nil) ⇒ Object
Called when commits are added to a merge request
noteable - Noteable object project - Project owning noteable author - User performing the change new_commits - Array of Commits added since last push existing_commits - Array of Commits added in a previous push oldrev - Optional String SHA of a previous Commit
Returns the created Note object
20 21 22 |
# File 'app/services/system_note_service.rb', line 20 def add_commits(noteable, project, , new_commits, existing_commits = [], oldrev = nil) ::SystemNotes::CommitService.new(noteable: noteable, project: project, author: ).add_commits(new_commits, existing_commits, oldrev) end |
#add_email_participants(noteable, project, author, body) ⇒ Object
285 286 287 |
# File 'app/services/system_note_service.rb', line 285 def add_email_participants(noteable, project, , body) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).add_email_participants(body) end |
#add_merge_request_draft_from_commit(noteable, project, author, commit) ⇒ Object
178 179 180 |
# File 'app/services/system_note_service.rb', line 178 def add_merge_request_draft_from_commit(noteable, project, , commit) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ).add_merge_request_draft_from_commit(commit) end |
#add_timeline_event(timeline_event) ⇒ Object
395 396 397 |
# File 'app/services/system_note_service.rb', line 395 def add_timeline_event(timeline_event) incidents_service(timeline_event.incident).add_timeline_event(timeline_event) end |
#approve_mr(noteable, user) ⇒ Object
Called when the merge request is approved by user
noteable - Noteable object user - User performing approve
Example Note text:
"approved this merge request"
Returns the created Note object
359 360 361 |
# File 'app/services/system_note_service.rb', line 359 def approve_mr(noteable, user) merge_requests_service(noteable, noteable.project, user).approve_mr end |
#auto_resolve_prometheus_alert(noteable, project, author) ⇒ Object
317 318 319 |
# File 'app/services/system_note_service.rb', line 317 def auto_resolve_prometheus_alert(noteable, project, ) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).auto_resolve_prometheus_alert end |
#cancel_merge_when_pipeline_succeeds(noteable, project, author) ⇒ Object
Called when ‘merge when pipeline succeeds’ is canceled
165 166 167 |
# File 'app/services/system_note_service.rb', line 165 def cancel_merge_when_pipeline_succeeds(noteable, project, ) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ).cancel_merge_when_pipeline_succeeds end |
#change_alert_status(alert, author, reason = nil) ⇒ Object
367 368 369 |
# File 'app/services/system_note_service.rb', line 367 def change_alert_status(alert, , reason = nil) ::SystemNotes::AlertManagementService.new(noteable: alert, project: alert.project, author: ).change_alert_status(reason) end |
#change_assignee(noteable, project, author, assignee) ⇒ Object
36 37 38 |
# File 'app/services/system_note_service.rb', line 36 def change_assignee(noteable, project, , assignee) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).change_assignee(assignee) end |
#change_branch(noteable, project, author, branch_type, event_type, old_branch, new_branch) ⇒ Object
Called when a branch in Noteable is changed
noteable - Noteable object project - Project owning noteable author - User performing the change branch_type - ‘source’ or ‘target’ event_type - the source of event: ‘update’ or ‘delete’ old_branch - old branch name new_branch - new branch name
Example Note text is based on event_type:
update: "changed target branch from `Old` to `New`"
delete: "deleted the `Old` branch. This merge request now targets the `New` branch"
Returns the created Note object
222 223 224 225 |
# File 'app/services/system_note_service.rb', line 222 def change_branch(noteable, project, , branch_type, event_type, old_branch, new_branch) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ) .change_branch(branch_type, event_type, old_branch, new_branch) end |
#change_branch_presence(noteable, project, author, branch_type, branch, presence) ⇒ Object
Called when a branch in Noteable is added or deleted
noteable - Noteable object project - Project owning noteable author - User performing the change branch_type - :source or :target branch - branch name presence - :add or :delete
Example Note text:
"restored target branch `feature`"
Returns the created Note object
241 242 243 |
# File 'app/services/system_note_service.rb', line 241 def change_branch_presence(noteable, project, , branch_type, branch, presence) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ).change_branch_presence(branch_type, branch, presence) end |
#change_description(noteable, project, author) ⇒ Object
198 199 200 |
# File 'app/services/system_note_service.rb', line 198 def change_description(noteable, project, ) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).change_description end |
#change_incident_severity(incident, author) ⇒ Object
379 380 381 |
# File 'app/services/system_note_service.rb', line 379 def change_incident_severity(incident, ) ::SystemNotes::IncidentService.new(noteable: incident, project: incident.project, author: ).change_incident_severity end |
#change_incident_status(incident, author, reason = nil) ⇒ Object
383 384 385 |
# File 'app/services/system_note_service.rb', line 383 def change_incident_status(incident, , reason = nil) ::SystemNotes::IncidentService.new(noteable: incident, project: incident.project, author: ).change_incident_status(reason) end |
#change_issuable_assignees(issuable, project, author, old_assignees) ⇒ Object
40 41 42 |
# File 'app/services/system_note_service.rb', line 40 def change_issuable_assignees(issuable, project, , old_assignees) ::SystemNotes::IssuablesService.new(noteable: issuable, project: project, author: ).change_issuable_assignees(old_assignees) end |
#change_issuable_contacts(issuable, project, author, added_count, removed_count) ⇒ Object
48 49 50 |
# File 'app/services/system_note_service.rb', line 48 def change_issuable_contacts(issuable, project, , added_count, removed_count) ::SystemNotes::IssuablesService.new(noteable: issuable, project: project, author: ).change_issuable_contacts(added_count, removed_count) end |
#change_issuable_reviewers(issuable, project, author, old_reviewers) ⇒ Object
44 45 46 |
# File 'app/services/system_note_service.rb', line 44 def change_issuable_reviewers(issuable, project, , old_reviewers) ::SystemNotes::IssuablesService.new(noteable: issuable, project: project, author: ).change_issuable_reviewers(old_reviewers) end |
#change_issue_confidentiality(issue, project, author) ⇒ Object
202 203 204 |
# File 'app/services/system_note_service.rb', line 202 def change_issue_confidentiality(issue, project, ) ::SystemNotes::IssuablesService.new(noteable: issue, project: project, author: ).change_issue_confidentiality end |
#change_issue_type(issue, author, previous_type) ⇒ Object
391 392 393 |
# File 'app/services/system_note_service.rb', line 391 def change_issue_type(issue, , previous_type) ::SystemNotes::IssuablesService.new(noteable: issue, project: issue.project, author: ).change_issue_type(previous_type) end |
#change_start_date_or_due_date(noteable, project, author, changed_dates) ⇒ Object
Called when the due_date or start_date of a Noteable is changed
noteable - Noteable object project - Project owning noteable author - User performing the change due_date - Due date being assigned, or nil
Example Note text:
"removed due date"
"changed due date to September 20, 2018 and changed start date to September 25, 2018"
Returns the created Note object
74 75 76 77 78 79 80 |
# File 'app/services/system_note_service.rb', line 74 def change_start_date_or_due_date(noteable, project, , changed_dates) ::SystemNotes::TimeTrackingService.new( noteable: noteable, project: project, author: ).change_start_date_or_due_date(changed_dates) end |
#change_status(noteable, project, author, status, source = nil) ⇒ Object
155 156 157 |
# File 'app/services/system_note_service.rb', line 155 def change_status(noteable, project, , status, source = nil) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).change_status(status, source) end |
#change_task_status(noteable, project, author, new_task) ⇒ Object
265 266 267 |
# File 'app/services/system_note_service.rb', line 265 def change_task_status(noteable, project, , new_task) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).change_task_status(new_task) end |
#change_time_estimate(noteable, project, author) ⇒ Object
Called when the estimated time of a Noteable is changed
noteable - Noteable object project - Project owning noteable author - User performing the change time_estimate - Estimated time
Example Note text:
"removed time estimate"
"changed time estimate to 3d 5h"
Returns the created Note object
96 97 98 |
# File 'app/services/system_note_service.rb', line 96 def change_time_estimate(noteable, project, ) ::SystemNotes::TimeTrackingService.new(noteable: noteable, project: project, author: ).change_time_estimate end |
#change_time_spent(noteable, project, author) ⇒ Object
Called when the spent time of a Noteable is changed
noteable - Noteable object project - Project owning noteable author - User performing the change time_spent - Spent time
Example Note text:
"removed time spent"
"added 2h 30m of time spent"
Returns the created Note object
114 115 116 |
# File 'app/services/system_note_service.rb', line 114 def change_time_spent(noteable, project, ) ::SystemNotes::TimeTrackingService.new(noteable: noteable, project: project, author: ).change_time_spent end |
#change_title(noteable, project, author, old_title) ⇒ Object
194 195 196 |
# File 'app/services/system_note_service.rb', line 194 def change_title(noteable, project, , old_title) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).change_title(old_title) end |
#close_after_error_tracking_resolve(issue, project, author) ⇒ Object
151 152 153 |
# File 'app/services/system_note_service.rb', line 151 def close_after_error_tracking_resolve(issue, project, ) ::SystemNotes::IssuablesService.new(noteable: issue, project: project, author: ).close_after_error_tracking_resolve end |
#create_new_alert(alert, monitoring_tool) ⇒ Object
375 376 377 |
# File 'app/services/system_note_service.rb', line 375 def create_new_alert(alert, monitoring_tool) ::SystemNotes::AlertManagementService.new(noteable: alert, project: alert.project).create_new_alert(monitoring_tool) end |
#created_timelog(issuable, project, author, timelog) ⇒ Object
Called when a timelog is added to an issuable
issuable - Issuable object (Issue, WorkItem or MergeRequest) project - Project owning the issuable author - User performing the change timelog - Created timelog
Example Note text:
"subtracted 1h 15m of time spent"
"added 2h 30m of time spent"
Returns the created Note object
132 133 134 |
# File 'app/services/system_note_service.rb', line 132 def created_timelog(issuable, project, , timelog) ::SystemNotes::TimeTrackingService.new(noteable: issuable, project: project, author: ).created_timelog(timelog) end |
#cross_reference(mentioned, mentioned_in, author) ⇒ Object
257 258 259 |
# File 'app/services/system_note_service.rb', line 257 def cross_reference(mentioned, mentioned_in, ) ::SystemNotes::IssuablesService.new(noteable: mentioned, author: ).cross_reference(mentioned_in) end |
#cross_reference_disallowed?(mentioned, mentioned_in) ⇒ Boolean
293 294 295 |
# File 'app/services/system_note_service.rb', line 293 def cross_reference_disallowed?(mentioned, mentioned_in) ::SystemNotes::IssuablesService.new(noteable: mentioned).cross_reference_disallowed?(mentioned_in) end |
#cross_reference_exists?(mentioned, mentioned_in) ⇒ Boolean
261 262 263 |
# File 'app/services/system_note_service.rb', line 261 def cross_reference_exists?(mentioned, mentioned_in) ::SystemNotes::IssuablesService.new(noteable: mentioned).cross_reference_exists?(mentioned_in) end |
#delete_timeline_event(noteable, author) ⇒ Object
403 404 405 |
# File 'app/services/system_note_service.rb', line 403 def delete_timeline_event(noteable, ) incidents_service(noteable).delete_timeline_event() end |
#design_discussion_added(discussion_note) ⇒ Object
Called when a new discussion is created on a design
discussion_note - DiscussionNote
Example Note text:
"started a discussion on screen.png"
Returns the created Note object
343 344 345 346 347 |
# File 'app/services/system_note_service.rb', line 343 def design_discussion_added(discussion_note) design = discussion_note.noteable ::SystemNotes::DesignManagementService.new(noteable: design.issue, project: design.project, author: discussion_note.).design_discussion_added(discussion_note) end |
#design_version_added(version) ⇒ Object
Parameters:
- version [DesignManagement::Version]
Example Note text:
"added [1 designs](link-to-version)"
"changed [2 designs](link-to-version)"
Returns [Array<Note>]: the created Note objects
330 331 332 |
# File 'app/services/system_note_service.rb', line 330 def design_version_added(version) ::SystemNotes::DesignManagementService.new(noteable: version.issue, project: version.issue.project, author: version.).design_version_added(version) end |
#diff_discussion_outdated(discussion, project, author, change_position) ⇒ Object
190 191 192 |
# File 'app/services/system_note_service.rb', line 190 def diff_discussion_outdated(discussion, project, , change_position) ::SystemNotes::MergeRequestsService.new(project: project, author: ).diff_discussion_outdated(discussion, change_position) end |
#discussion_continued_in_issue(discussion, project, author, issue) ⇒ Object
186 187 188 |
# File 'app/services/system_note_service.rb', line 186 def discussion_continued_in_issue(discussion, project, , issue) ::SystemNotes::MergeRequestsService.new(project: project, author: ).discussion_continued_in_issue(discussion, issue) end |
#discussion_lock(issuable, author) ⇒ Object
289 290 291 |
# File 'app/services/system_note_service.rb', line 289 def discussion_lock(issuable, ) ::SystemNotes::IssuablesService.new(noteable: issuable, project: issuable.project, author: ).discussion_lock end |
#edit_timeline_event(timeline_event, author, was_changed:) ⇒ Object
399 400 401 |
# File 'app/services/system_note_service.rb', line 399 def edit_timeline_event(timeline_event, , was_changed:) incidents_service(timeline_event.incident).edit_timeline_event(timeline_event, , was_changed: was_changed) end |
#handle_merge_request_draft(noteable, project, author) ⇒ Object
174 175 176 |
# File 'app/services/system_note_service.rb', line 174 def handle_merge_request_draft(noteable, project, ) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ).handle_merge_request_draft end |
#log_resolving_alert(alert, monitoring_tool) ⇒ Object
387 388 389 |
# File 'app/services/system_note_service.rb', line 387 def log_resolving_alert(alert, monitoring_tool) ::SystemNotes::AlertManagementService.new(noteable: alert, project: alert.project).log_resolving_alert(monitoring_tool) end |
#mark_canonical_issue_of_duplicate(noteable, project, author, duplicate_issue) ⇒ Object
281 282 283 |
# File 'app/services/system_note_service.rb', line 281 def mark_canonical_issue_of_duplicate(noteable, project, , duplicate_issue) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).mark_canonical_issue_of_duplicate(duplicate_issue) end |
#mark_duplicate_issue(noteable, project, author, canonical_issue) ⇒ Object
277 278 279 |
# File 'app/services/system_note_service.rb', line 277 def mark_duplicate_issue(noteable, project, , canonical_issue) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).mark_duplicate_issue(canonical_issue) end |
#merge_when_pipeline_succeeds(noteable, project, author, sha) ⇒ Object
Called when ‘merge when pipeline succeeds’ is executed
160 161 162 |
# File 'app/services/system_note_service.rb', line 160 def merge_when_pipeline_succeeds(noteable, project, , sha) ::SystemNotes::MergeRequestsService.new(noteable: noteable, project: project, author: ).merge_when_pipeline_succeeds(sha) end |
#new_alert_issue(alert, issue, author) ⇒ Object
371 372 373 |
# File 'app/services/system_note_service.rb', line 371 def new_alert_issue(alert, issue, ) ::SystemNotes::AlertManagementService.new(noteable: alert, project: alert.project, author: ).new_alert_issue(issue) end |
#new_issue_branch(issue, project, author, branch, branch_project: nil) ⇒ Object
Called when a branch is created from the ‘new branch’ button on a issue Example note text:
"created branch `201-issue-branch-button`"
249 250 251 |
# File 'app/services/system_note_service.rb', line 249 def new_issue_branch(issue, project, , branch, branch_project: nil) ::SystemNotes::MergeRequestsService.new(noteable: issue, project: project, author: ).new_issue_branch(branch, branch_project: branch_project) end |
#new_merge_request(issue, project, author, merge_request) ⇒ Object
253 254 255 |
# File 'app/services/system_note_service.rb', line 253 def new_merge_request(issue, project, , merge_request) ::SystemNotes::MergeRequestsService.new(noteable: issue, project: project, author: ).new_merge_request(merge_request) end |
#noteable_cloned(noteable, project, noteable_ref, author, direction:, created_at: nil) ⇒ Object
273 274 275 |
# File 'app/services/system_note_service.rb', line 273 def noteable_cloned(noteable, project, noteable_ref, , direction:, created_at: nil) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).noteable_cloned(noteable_ref, direction, created_at: created_at) end |
#noteable_moved(noteable, project, noteable_ref, author, direction:) ⇒ Object
269 270 271 |
# File 'app/services/system_note_service.rb', line 269 def noteable_moved(noteable, project, noteable_ref, , direction:) ::SystemNotes::IssuablesService.new(noteable: noteable, project: project, author: ).noteable_moved(noteable_ref, direction) end |
#relate_issuable(noteable, noteable_ref, user) ⇒ Object
52 53 54 |
# File 'app/services/system_note_service.rb', line 52 def relate_issuable(noteable, noteable_ref, user) ::SystemNotes::IssuablesService.new(noteable: noteable, project: noteable.project, author: user).relate_issuable(noteable_ref) end |
#relate_work_item(noteable, work_item, user) ⇒ Object
297 298 299 300 301 |
# File 'app/services/system_note_service.rb', line 297 def relate_work_item(noteable, work_item, user) ::SystemNotes::IssuablesService .new(noteable: noteable, project: noteable.project, author: user) .hierarchy_changed(work_item, 'relate') end |
#remove_timelog(noteable, project, author, timelog) ⇒ Object
Called when a timelog is removed from a Noteable
noteable - Noteable object project - Project owning the noteable author - User performing the change timelog - The removed timelog
Example Note text:
"deleted 2h 30m of time spent from 22-03-2022"
Returns the created Note object
147 148 149 |
# File 'app/services/system_note_service.rb', line 147 def remove_timelog(noteable, project, , timelog) ::SystemNotes::TimeTrackingService.new(noteable: noteable, project: project, author: ).remove_timelog(timelog) end |
#resolve_all_discussions(merge_request, project, author) ⇒ Object
182 183 184 |
# File 'app/services/system_note_service.rb', line 182 def resolve_all_discussions(merge_request, project, ) ::SystemNotes::MergeRequestsService.new(noteable: merge_request, project: project, author: ).resolve_all_discussions end |
#tag_commit(noteable, project, author, tag_name) ⇒ Object
Called when a commit was tagged
noteable - Noteable object project - Project owning noteable author - User performing the tag tag_name - The created tag name
Returns the created Note object
32 33 34 |
# File 'app/services/system_note_service.rb', line 32 def tag_commit(noteable, project, , tag_name) ::SystemNotes::CommitService.new(noteable: noteable, project: project, author: ).tag_commit(tag_name) end |
#unapprove_mr(noteable, user) ⇒ Object
363 364 365 |
# File 'app/services/system_note_service.rb', line 363 def unapprove_mr(noteable, user) merge_requests_service(noteable, noteable.project, user).unapprove_mr end |
#unrelate_issuable(noteable, noteable_ref, user) ⇒ Object
56 57 58 |
# File 'app/services/system_note_service.rb', line 56 def unrelate_issuable(noteable, noteable_ref, user) ::SystemNotes::IssuablesService.new(noteable: noteable, project: noteable.project, author: user).unrelate_issuable(noteable_ref) end |
#unrelate_work_item(noteable, work_item, user) ⇒ Object
303 304 305 306 307 |
# File 'app/services/system_note_service.rb', line 303 def unrelate_work_item(noteable, work_item, user) ::SystemNotes::IssuablesService .new(noteable: noteable, project: noteable.project, author: user) .hierarchy_changed(work_item, 'unrelate') end |
#zoom_link_added(issue, project, author) ⇒ Object
309 310 311 |
# File 'app/services/system_note_service.rb', line 309 def zoom_link_added(issue, project, ) ::SystemNotes::ZoomService.new(noteable: issue, project: project, author: ).zoom_link_added end |
#zoom_link_removed(issue, project, author) ⇒ Object
313 314 315 |
# File 'app/services/system_note_service.rb', line 313 def zoom_link_removed(issue, project, ) ::SystemNotes::ZoomService.new(noteable: issue, project: project, author: ).zoom_link_removed end |