Custom Naming - Dynamically select Naming standard to omit the sequence number

Overview

DISCLAIMER:  

There are inherent risks with using the following method such as duplicate names being generated if you do omit the sequence which can cause build failures. We recommend using the naming sequence to mitigate the risk of duplicate names being generated. 

In this how to we will show you how to dynamically select the naming standard so you can opt to use or omit the sequence number.

There are many ways to achieve this such as

  • Driven by an existing value in your naming standard
  • Driven by an existing value on your blueprint
  • Driven by boolean (true/false) to allow users to option the sequence

For simplicity we will focus on using a Property Definition on the blueprint that provides a true / false statement and template engine syntax in the Naming Standard.


Considerations

  • Have licensed the SovLabs modules
  • Have defined a naming standard and sequence
    • See Additional Information for links to Guides on how to setup your naming standard and sequence

Procedure

Create a property definition and apply to your blueprint

  1. Within vRA, click on Administration (1) → Property Dictionary (2) → Property Definition (3) and click on New (4)


  2. Provide a Name and Label  (1), Select Data type as Boolean (2) and Display As Yes/No (3)


  3. Click on OK


  4. Go to your Design Tab (1) and select the blueprint you want to update with the newly created Property Definition, Click on Edit (2)


  5. On your blueprint, click on Properties (1) → Custom Properties (2) and then click on New (3)


  6. In the Name section, type in the name of the property definition you created


  7. In the Show in Request, place a check


  8. Click on OK


  9. Click on Finish


Update your naming standard with an IF statement to make it dynamic

In order to have a sequence number omitted, you simply have to provide an invalid name for your sequence.  For example.  You probably don't have a naming sequence called NULL.  So you could use sequence.NULL as your invalidated naming sequence.  Or simply add NULL to the name you already have.  I will be adding NULL to the naming sequence in this example.

  1. In vRA, click on Deployments (1) then filter your component to show SovLabs Naming Standard (2)


  2. Find the naming standard you want to modify then click on Actions (1) and select Update Naming Standard (2)


  3. In your Template section, you will now build an if statement to allow the use of the property definition you created in the previous section.  It will look similar to

    {%if DemoServerNameSequence == "true" %}{{DemoServerName}}{{sequence.DemoServerName}}{% else %}{{DemoServerName}}{{sequence.DemoServerNameNull}}{% endif %}




  4. The above code is broken down as follows

    1. If the property definition you created is true (yes) then build your server name with the sequence number
    2. Else if the property definition does not equal true (yes) then build your servername with a Dummy sequence name (In this instance I added NULL to the end of the sequence name as that is an invalid sequence and will in turn not add a sequence number)

  5. Click on Submit

Deploying your Blueprint

  1. When you deploy your updated blueprint, you will see that you now have a property which provides a yes/no.  So I will deploy 2 x VM's, one with the sequence as yes and the other with sequence as No


  2. In vRO you will see the Naming Requested workflows run The first screen capture shows the deployment where Sequence was true and the second when sequence was false





  3. And once they are deployed, in vRA under deployments, you will see them


Additional information

SovLabs Naming Beginner Guide : https://support.cloudbolt.io/hc/en-us/articles/360049295952-Custom-Naming-Beginner-Guide
SovLabs Naming Single Custom Property : https://cloudboltsoftware.zendesk.com/knowledge/articles/360049770791/en-us?brand_id=1872396

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.