Input display groups

Input display groups allow you to group and display related inputs on the Launch Blueprint page. Input display groups are defined with a section name, type, description and properties.

section name

Example: lb_tier:

type

  • type: dcm.inputs.DisplayGroup

description

The description is optional and is used to document additional information about the input display group. It is not currently displayed anywhere on the Dell Cloud Manager console.

properties

The properties define additional options for the input display group. One property is currently supported:

  • displayName - this is the “title” name displayed for the input display group.
Example: displayName: Load Balancer Tier

Example

Here is an example of defining 3 input display groups which represent the 3 tiers of a stack.

Note

The input display groups are displayed on the Dell Cloud Manager console Launch Blueprint page in the same order they are defined in the template yaml file.

  • Load Balancer tier
  • Input string for the load balancer server name
  • Input product selector
  • Application tier
  • Input string for the application server name
  • Input product selector
  • Database tier
  • Input string for the database server name
  • Input product selector
  • Input string for the database user id
  • Input password for the database password

Note

The inputs are defined with the displayGroup: property indicating what group they should be a member of. Refer to the inputs section in this document for more information on the inputs.

  ##################################################################################################################################################
  # This inputs section defines 3 Display Groups to hold the inputs for 3 tiers: Load Balancer, Application and Database
  ##################################################################################################################################################
  inputs:                                                            # Defined inputs

    ################################################################################################################################################
    # This defines the AccountRegionSelector which allows the user to select the Cloud, Region and Datacenter
    ################################################################################################################################################
    account_region_zone_selector:                                     # Define the section for the Cloud, Region and Datacenter selection boxes
      type: dcm.inputs.AccountRegionSelector                          # Input type is dcm.inputs.accountRegionSelector 
      properties:
        regions:                                                      # Define the Cloud and Regions
          "Amazon":                                                   # Amazon
            "us-east-1": ["us-east-1a", "us-east-1b", "us-east-1c", "us-east-1e"]
            "us-west-1": ["us-west-1a", "us-west-1c"]
            "us-west-2": ["us-west-2a", "us-west-2b", "us-west-2c"]
            "eu-west-1": ["eu-west-1a", "eu-west-1c"]

    ##########################################################################################################################################
    # Define a Input Display Group for the Load Balancer Tier 
    ##########################################################################################################################################
    lb_tier:
      type: dcm.inputs.DisplayGroup
      description: "Settings for the Load Balancer"
      properties:
        displayName: "Load Balancer Tier"

    ##########################################################################################################################################
    # Define a Input Display Group for the WordPress Application Tier 
    ##########################################################################################################################################
    app_tier:
      type: dcm.inputs.DisplayGroup
      description: "Settings for the Application"
      properties:
        displayName: "Application Tier"

    ##########################################################################################################################################
    # Define a Input Display Group for the MySQL Database Tier 
    ##########################################################################################################################################    
    db_tier:
      type: dcm.inputs.DisplayGroup
      description: "Settings for the Database"
      properties:
        displayName: Database Tier

    ##########################################################################################################################################
    # Define Inputs for the Load Balancer Tier:  server name and product selector 
    ##########################################################################################################################################        
    load_balancer_name:
      type: string
      description: "Name for the Load Balancer"
      properties:
        displayName: Server Name
        displayGroup: lb_tier    

    product_selector_lb:                                              # Define the product selector so the user can select the cloud and region
      type: dcm.inputs.Product
      properties:
        accountRegionSelector: account_region_zone_selector           # This connects the AccountRegionSelector to the Product selector
        displayName: Server Product
        displayGroup: lb_tier    
        platform: UNIX                                                # Virtual machine images are Ubuntu Linux
        architecture: I64                                             # 64 bit images
        productMappings:
          "Amazon":                                                   # Amazon cloud
            "us-east-1":                                              # us-east-1 Region
              image: "ami-c4edc0d3"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "us-west-1":                                              # us-west-1 Region
              image: "ami-e7035687"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "us-west-2":                                              # us-west-2 Region
              image: "ami-578c2f37"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "eu-west-1":                                              # eu-west-1 Region
              image: "ami-e6a1f795"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region

    ##########################################################################################################################################
    # Define Inputs for the WordPress Application Tier:  server name and product selector 
    ##########################################################################################################################################        
    application_server_name:
      type: string
      description: "Name for the WordPress Server"
      constraints:
        - length: 150
        - min_length: 5
        - max_length: 250
        - pattern: ^[a-z0-9_\-]+$
      properties:
        displayName: Server Name
        displayGroup: app_tier    

    product_selector_app:                                             # Define the product selector so the user can select the cloud and region
      type: dcm.inputs.Product
      properties:
        accountRegionSelector: account_region_zone_selector           # This connects the AccountRegionSelector to the Product selector
        displayName: Server Product
        displayGroup: app_tier    
        platform: UNIX                                                # Virtual machine images are Ubuntu Linux
        architecture: I64                                             # 64 bit images
        productMappings:
          "Amazon":                                                   # Amazon cloud
            "us-east-1":                                              # us-east-1 Region
              image: "ami-c4edc0d3"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "us-west-1":                                              # us-west-1 Region
              image: "ami-e7035687"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "us-west-2":                                              # us-west-2 Region
              image: "ami-578c2f37"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "eu-west-1":                                              # eu-west-1 Region
              image: "ami-e6a1f795"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region

    ##########################################################################################################################################
    # Define Inputs for the MySQL Database Tier:  server name and product selector 
    ##########################################################################################################################################        
    database_server_name:
      type: string
      description: "Name for the Database Server"
      properties:
        displayName: Server Name
        displayGroup: db_tier    

    product_selector_db:                                              # Define the product selector so the user can select the cloud and region
      type: dcm.inputs.Product
      properties:
        accountRegionSelector: account_region_zone_selector           # This connects the AccountRegionSelector to the Product selector
        displayName: Server Product
        displayGroup: db_tier    
        platform: UNIX                                                # Virtual machine images are Ubuntu Linux
        architecture: I64                                             # 64 bit images
        productMappings:
          "Amazon":                                                   # Amazon cloud
            "us-east-1":                                              # us-east-1 Region
              image: "ami-c4edc0d3"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "us-west-1":                                              # us-west-1 Region
              image: "ami-e7035687"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "us-west-2":                                              # us-west-2 Region
              image: "ami-578c2f37"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region
            "eu-west-1":                                              # eu-west-1 Region
              image: "ami-e6a1f795"                                   # Machine image identifier for an Ubuntu image in this region
              products: ['t1.micro', 'm1.small', 'm1.medium']         # The virtual machine product sizes for this region

Load Balancer Tier input display group displayed on the Dell Cloud Manager console:

../../../_images/load_balancer_input_display_group.png

Scrolling down shows the Application Tier and Database Tier input display groups displayed on the Dell Cloud Manager console:

../../../_images/application_and_database_input_display_groups.png