Resolve "Add new HTTP endpoint"
What does this MR do?
A smallish MVC to handle the adding/updating of multiple HTTP integration endpoints through the new form for Category:Incident Management. The backend to support this here is here: Add GraphQL support for creating alert integrations
This feature sits behind a feature flag: http_integrations_list
for the frontend and multiple_http_integrations
for the backend.
Expected responses for form:
- User doesn't have permissions: 200 OK, but errors includes 'The resource that you are attempting to access does not exist or you don't have permission to perform this action'
- A new integration isn't allowed: 200 OK, but errors includes 'Multiple Prometheus integrations are not supported' || ''Multiple HTTP integrations are not supported for this project' (for <GitLab Premium)
- Failure to create the integration: 200 OK, but errors includes message related to what might have gone wrong
Design
This merge supports this Epic: &4442 (closed) and will come in the following stages:
Merge | You are here |
---|---|
Add initial wrapper for new form and feature flag | !45993 (merged) |
Add GraphQL read endpoint to new form | !46212 (merged) |
Build out HTTP and Prometheus steps for new form / Add GraphQL Add HTTP endpoint to new form | |
Add GraphQL Update / Reset Token(Add GraphQL support for updating alert integrations) endpoint to new form | TBA |
Add GraphQL delete integration endpoints | TBA |
Remove feature flag(UX review happens here to keep the cost of work low) and delete old form code / REST API code | TBA |
Add ee support to add multiple endpoints |
N/A => This is included in step 3(handled by backend) |
Screenshots (strongly suggested)
Submit Error | Select Prometheus | Invalid JSON | Valid JSON | Valid Save | Multiple Prometheus |
---|---|---|---|---|---|
Does this MR meet the acceptance criteria?
Conformity
- [-] Changelog entry
- [-] 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
Related to #255603 (closed)
Edited by David O'Regan