feat: support icon and description in preset (#18977)

## Description 

This PR adds support for `description` and `icon` fields to
`template_version_presets`. These fields will allow displaying richer
information for presets in the UI, improving the user experience when
creating a workspace.
Both fields are optional, non-nullable, and default to empty strings.

## Changes

* Database migration with the addition of `description VARCHAR(128)` and
`icon VARCHAR(256)` columns to the `template_version_presets` table.
* Updated the `CreateWorkspacePageView` in the UI

Note: UI changes will be addressed in a separate PR
This commit is contained in:
Susana Ferreira
2025-07-28 15:02:26 +01:00
committed by GitHub
parent 58123e17ca
commit 0672bf5084
24 changed files with 707 additions and 579 deletions
+4
View File
@@ -3621,6 +3621,10 @@ type TemplateVersionPreset struct {
PrebuildStatus PrebuildStatus `db:"prebuild_status" json:"prebuild_status"`
SchedulingTimezone string `db:"scheduling_timezone" json:"scheduling_timezone"`
IsDefault bool `db:"is_default" json:"is_default"`
// Short text describing the preset (max 128 characters).
Description string `db:"description" json:"description"`
// URL or path to an icon representing the preset (max 256 characters).
Icon string `db:"icon" json:"icon"`
}
type TemplateVersionPresetParameter struct {