Skip to content

Support parameter grouping #313

@FRosner

Description

@FRosner

Problem

When templates have a lot of parameters, the UI becomes harder to parse.

Solution

Allow grouping of parameters by assigning an optional group to each parameter. Then all parameters of the same group will be shown together in a separate section of the form, having the group name in the title. Ordering within the groups works just as before, while the groups themselves have an order index to indicate ordering of the groups.

This requires us to add also a new configuration stanza to each template to add parameter groups. The parameter will then contain the group ID, and the group ID will have an optional name in the groups stanza.

Groups for ID will be ignored.

Example

parameters = {
  "username" = {
    name = "Username"
    type = string
    group = "credentials"
  }
  "password" = {
    name = "Password"
    secret = true
    group = "credentials"
  }
  "http-port" = {
    name = "HTTP Port"
    default = 80
    group = "network"
  }
}

groups = {
  "credentials" = {
    name = "Credentials"
    order-index = 1
  }
  "network" = {
    name = "Network"
    order-index = 2
  }
}

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions