Add application settings to allowlist integrations
What does this MR do and why?
Adds application settings to support the allow list integrations feature #500610 (closed).
MR acceptance checklist
Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.
How to set up and validate locally
GET application/settings
curl --location 'http://gdk.test:3000/api/v4/application/settings' \
--header 'Authorization: Bearer <PAT>'
Response should include:
"allow_all_integrations": true,
"allowed_integrations": [],
PUT application/settings
Add two integration names to allowed_integrations
:
curl --location --globoff --request PUT 'http://gdk.test:3000/api/v4/application/settings?allowed_integrations[]=jira&allowed_integrations[]=foo' \
--header 'Authorization: Bearer <PAT>'
Response should include:
"allowed_integrations": [
"jira",
"slack"
],
Attempting to add an invalid integration name should fail:
curl --location --globoff --request PUT 'http://gdk.test:3000/api/v4/application/settings?allowed_integrations[]=foo&allowed_integrations[]=slack' \
--header 'Authorization: Bearer <PAT>'
Response should be:
{
"message": {
"allowed_integrations": [
"contains unknown integration names"
]
}
}
Related to #500610 (closed)
Edited by Luke Duncalfe