UCSD - Condition (IF) Boolean Test Example (Null/Empty)

Version 3
    Task Name

    The regular if statemant can not test for a booean.  Here is an example on how to test if a user entered something and if the varaible is empty.

    Description

     

    Prerequisites

    Tested on UCSD 5.4.0.3

    CategoryWorkflow
    ComponentsvSphere 5.x
    User Inputs


    Instructions for Regular Workflow Use:

    1. Download the attached .ZIP file below to your computer. *Remember the location of the saved file on your computer.
    2. Unzip the file on your computer. Should end up with a .WFD file.
    3. Log in to UCS Director as a user that has "system-admin" privileges.
    4. Navigate to "Policies-->Orchestration" and click on "Import".
    5. Click "Browse" and navigate to the location on your computer where the .WFD file resides. Choose the .WFD file and click "Open".
    6. Click "Upload" and then "OK" once the file upload is completed. Then click "Next".
    7. Click the "Select" button next to "Import Workflows". Click the "Check All" button to check all checkboxes and then the "Select" button.
    8. Click "Submit".
    9. A new folder should appear in "Policies-->Orchestration" that contains the imported workflow. You will now need to update the included tasks with information about the specific environment.

     

    Many thanks for the inspiration go to Andreas Wentland.

     

    The workflow:

         2 custom task

              1 to pint a line of the actual content of the variable to the log file (to see the variable is empty)

              2 to do the if check to see if the variable is true or false

    Screen Shot 2016-05-26 at 6.26.35 AM.png

     

    The input test:

         Variable is not mandatory in order to produce an empty variable

     

    Screen Shot 2016-05-26 at 6.26.42 AM.png

     

    The workflow goes down the failed path:

     

    Screen Shot 2016-05-26 at 6.27.47 AM.png

     

    Screen Shot 2016-05-26 at 6.28.04 AM.png

     

    Test #2 with something being entered:

     

    Screen Shot 2016-05-26 at 6.28.34 AM.png

     

    Workflow goes down the non failed path:

     

    Screen Shot 2016-05-26 at 6.36.58 AM.png

     

    The logger displays the user input:

     

    Screen Shot 2016-05-26 at 6.37.11 AM.png

     

    Custom task the conditional testing:

     

    Screen Shot 2016-05-26 at 6.39.09 AM.png

    if (input.TestForEmptyVar) {

      logger.addInfo("...True...");

      output.out = "1";

    } else {

      logger.addInfo("...False...");

      output.out = "0";

      ctxt.setFailed("Variable is empty" + input.TestForEmptyVar);

      ctxt.exit();

    }

     

    Custom task the logger:

     

    Screen Shot 2016-05-26 at 6.39.51 AM.png

         logger.addInfo(">"+input.LogFileEntry+"<");

     

     

    Workflow export contains these tasks:

     

    Screen Shot 2016-05-26 at 6.40.43 AM.png