diff --git a/.gitignore b/.gitignore index ba7c2ff..1e55aa7 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ pattern-catalog.Dockerfile +pattern-ui-catalog.Dockerfile diff --git a/README.md b/README.md index d5b0e32..b398b4c 100644 --- a/README.md +++ b/README.md @@ -142,6 +142,10 @@ extra_features: external_requirements: null org: my-org spoke: null +variants: + - name: default + default: true + description: Default deployment variant ``` **`catalog//values-secret.yaml.template`** - metadata for secret material diff --git a/pattern.schema.json b/pattern.schema.json index 819379e..7b82fc0 100644 --- a/pattern.schema.json +++ b/pattern.schema.json @@ -143,6 +143,14 @@ "type": "string", "description": "URL or path to a logo image for the pattern", "format": "uri" + }, + "variants": { + "type": "array", + "description": "Deployment variants for the pattern", + "items": { + "$ref": "#/$defs/variant" + }, + "minItems": 1 } }, "$defs": { @@ -191,6 +199,26 @@ "$ref": "#/$defs/nodePoolSpec" } } + }, + "variant": { + "type": "object", + "description": "A deployment variant of the pattern", + "required": ["name"], + "additionalProperties": false, + "properties": { + "name": { + "type": "string", + "description": "Unique identifier for the variant" + }, + "default": { + "type": "boolean", + "description": "Whether this is the default variant" + }, + "description": { + "type": "string", + "description": "Human-readable description of the variant" + } + } } } }