Stack Builder

Stack Builder is a convenient tool for creating Maestro Stack templates - sets of commands to be automatically performed in the defined order. It allows specifying scenarios of different complexities and purpose, and is designed to be comfortable for people with different basic knowledge about Maestro Stack Templates.

There are two characteristics that allow to implement these features, they are:

- Default values: in most cases, the parameters that are to be specified during a stack template creation have default values and you don't have to input them. However, if you need your Maestro Stack to be fine-tuned, you can set up the necessary properties yourself.

- Context-dependence: the steps you will have to go through and the parameters you will have to specify depend on your previous choices (for example, on the type of action that is to be added to the stack flow)

Although it seems there are many different Stack Builder steps and options for different contexts, all of them can be divided into several types. Here, you can find the descriptions of the Stack Builder steps and the parameters to be set up in these steps.

  • Selecting Primary Command

    Stack Builder creates a user scenario for infrastructure manipulation and saves it as a Maestro Stack template. The basis for a stack creation is one of the Primary commands, used to manipulate instances in Cloud.

    After a primary command, you can specify additional commands manipulating other resources. These commands will be executed one by one after the primary one succeeds (if other is not specified in the Other option).

    Click Catalog to see the list of all stacks available for your project.

    Click From Json to paste a ready Maestro Stack Template .json code.

  • Catalog

    The Catalog allows you to see the list of the Maestro Stack templates already existing on the project and to manipulate these stacks. You can see the template details (source code), remove a template, or use a template as a basis for creating another one.

    Please note that the template list allows to see only templates available for the selected project.

    Press the Delete button to remove the selected stack (you can delete only stacks created by you).

    Press Duplicate to create a new template having the same source code. You can change it if needed, and save to the same or another project.

  • Run Instance

    On this step, you can specify the main settings for the Run command. If you don't change anything, the default values will be used.

    Core Parameters: the main parameters used for the Run Instance action.

    Count: specifies the default number of the instances to run and sets up count limitations.

    Stop After: sets the time period (in hours) after which the running instance will be automatically stopped.

    Press the Add Command button to add an additional command to the stack template.

  • Run Instance Additional Commands

    You can select one or several additional commands that will be executed after the Run instance command succeeds. The commands will be added to flow in the order in which they are listed in the Additional Commands table.

    Additional commands are used to manipulate volumes, tags and instance properties.

    The Maestro CLI analogues for these actions are or2-create-and-attach-volume, or2-set-tag, and or2-set-ptoperty.

  • Command Parameters

    On this step for primary commands, you can specify the core parameters for the selected command, and set up the chain of additional commands.

    The additional commands will be added to flow in the order in which they are listed in the Additional Commands table.

    For each command in the flow, there will be its own parameters specification page.

  • Build Custom Flow

    You can use this page to build a custom flow with several primary commands and specify the execution mode.

    In the Continuous mode, a new command will be executed after the previous one succeeds.

    In the Simultaneous mode, all the Primary commands will be evoked at the same time.

    In both modes, each Additional command refers to the last Primary command specified before this additional one.

  • Context

    The Context section is used to set up timeouts and checktimes for primary commands.

    The timeout is a period of time (in minutes) within which the command should succeed. If it doesn't the stack execution fails.

    The checktime is the periodicity (in minutes) of checks.

    The Main Context Configuration settings are used to set checktime and timeouts for additional commands and to primary commands, if they don't have explicit settings.

  • Outputs

    The Outputs step allows to specify the resulting parameters of the stack-affected resources that will be shared with the user.
    This info is added to the Output section of the Maestro Stack execution report that is sent to the user's email after the stack execution finishes (successfully or not).

    You can specify the output parameters for all the commands used in your stack flow, both primary and additional. Each command has a default set of output parameters, but you can manage or delete them if necessary.

  • Test Template

    This page allows you to preview the created Stack Template as it will be available in the Run wizard. Please note that on this page, some parameters are displayed with dictionaries references that in action will be replaced by real values, depending on your project and region.

  • Review Stack Template

    On the Review Stack Template page, you can see the source code of a Maestro Stack Template that is created by the Stack Builder. You can see the whole structure and the parameters, copy the code to save it externally or and modify some details, if needed.

  • Save

    On the Save step, you specify the name, the description and the target project for your new template. These will be later used in the Run wizard.

  • Finish

    The Finish page shows that the Maestro Stack was created and provides the creation results and the template source code.