1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-01-20 00:08:02 +01:00

fix: disallow empty list of envs and invalid env names in advanced playground (#4060)

This PR changes the OpenAPI schema for the advanced playground to not
accept empty lists of environments and to not accept environment names
that don't match the env name pattern we use.

The pattern is the same as the one we use for controlling environment
names on creation.

However, there is a (small) chance that these may get out of sync later,
so we could do something to only define this pattern once (and import it
in the enterprise package), but that may be more work than is necessary,
and I'd suggest we do that later.

I've also added a minLength to the string items although it isn't
strictly necessary. It's primarily to give the users better feedback if
the name is empty.
This commit is contained in:
Thomas Heartman 2023-06-22 11:01:10 +02:00 committed by GitHub
parent 559caee642
commit 3fb00b281c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 9 additions and 1 deletions

View File

@ -11,7 +11,12 @@ export const advancedPlaygroundRequestSchema = {
properties: {
environments: {
type: 'array',
items: { type: 'string' },
items: {
type: 'string',
minLength: 1,
pattern: '^[a-zA-Z0-9~_.-]+$',
},
minItems: 1,
example: ['development', 'production'],
description: 'The environments to evaluate toggles in.',
},

View File

@ -843,8 +843,11 @@ The provider you choose for your addon dictates what properties the \`parameters
"production",
],
"items": {
"minLength": 1,
"pattern": "^[a-zA-Z0-9~_.-]+$",
"type": "string",
},
"minItems": 1,
"type": "array",
},
"projects": {