Add StatusPage::MarkForPublicationService
What does this MR do?
Context: We want to add a quick action which publishes an issue to a project's associated status page. Right now, the default is to publish all non-confidential issues in the project. With the quick action, issues will only be published if the quick action is used (and the issue is not confidential). This MR is in preparation of adding the quick action.
This MR:
- Adds a service which can be used to mark an issue as published (eventually via quick action)
- Creates a system note on the issue
- Creates a
StatusPage::PublishedIncident
for the issue - Checks that the user has owner permissions
Why: This is going to make it easier to add the quick action & swap over to publishing only StatusPage::PublishedIncident
s
- Dependent feature MR: !30906 (merged)
- Related issue: #209849 (closed)
Logic changes are not included in this MR - no changelog will be required.
Screenshots
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry since not user-facing yet
- [-] Documentation (if required)
-
Code review guidelines -
Merge request performance guidelines -
Style guides - [-] Database guides
- [-] Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. - [-] Tested in all supported browsers
- [-] 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
- [-] The MR includes necessary changes to maintain consistency between UI, API, email, or other methods
- [-] Security reports checked/validated by a reviewer from the AppSec team
Edited by Peter Leitzen