Start/Stop Automation Walkthrough

This document explains the elements for creating a start/stop automation at a high level.

Example: OZSoft tenant.

When creating new start/stop automation procedures, always test on OZSoft tenant first.

Ensure that the prerequisites for Start/Stop automation have been met. This includes the creation of an OS user, granting necessary permissions, configuring web methods, etc. Also, confirm that the user is capable of initiating Start/Stop procedures for both the SAP system and the database at the OS level.

Elements of Start/Stop

Impersonating as OZSoft admin, navigate to Management → Automation → Definition and expand the menus

Figure 1: OZSoft’s Definitions Grid

Process Definitions

The process definition is the core and the first step of the start/stop process. It is where the instruction that the automation will follow will be coded. One or more Activities within a Process Definition make up a template for a workflow.

Figure 2: Process Definition Workflow

 

Form Templates

The form template is where you instruct which variables, fields, or data will serve as input parameters for the start/stop wizard.

Execution Configs

Execution configs are a list of variables that you pre-configure to use in the future, for example, if you’re going to schedule a process to run in the future. Ad-hoc execution configs are transient and are automatically named when created and submitted through a Wizard, then removed later by the system after a default expiration time.

Wizard

The wizard in IT-Conductor is a combination of the form template and the process definition. It’s where the user will launch the start/stop workflow. These wizards can be exposed to the user in many ways such as on a Dashboard panel as a tile or a list item, or they can be part of a Service Catalog.

Dashboards

You may design a dashboard for start/stop automation like the one for OZSoft where the users can see all the elements related to performing a start/stop process, as well as monitoring the execution workflow, checking activity logs, and observing the system status such as Availability when they are stopped/started. Each system object can also be drilled into or zoomed in to visualize the full application stack’s status.

 

Configuring the Start/stop Process

Create process definitions and assemble the workflow

  1. Impersonate as OZSoft admin

  2. Navigate to Management → Automation → Definitions → OZSoft menu → All Process Definitions

  1. Create a new process definition by clicking on “+” or make a copy of an existing process definition and modify it.

When you’re creating the start-stop workflow, you must take note of the following:

  • The external variables that are going to serve as input

  • The steps that are going to be in the workflow

  • The workflow’s sequence, which has been tested manually at each unit/activity, to ensure the logic works

Each step in the workflow represents an activity. Inside a process definition, you can modify the following fields.

 

  • Name: Name of step

  • Owner: All process definitions in a workflow must have a robot user as owner, otherwise the process won’t run. This robot user (aka, technical user) must have assigned on its accounts an application user with required roles/privileges to perform the automation action. For example, on Linux the robot user’s assigned application account must be defined on the managed Linux system with appropriate group/s and can run sudo commands planned to be used in the automation action/s.

 

  • Work queue: This is where the activity is going to run. For start/stop, make sure to use a dynamic work queue. In this example, it’s running on Linux, so it’s specified in the name DBLINUX. This variable will be used later in the form template

  • Command: This is the core and main instruction of the process definition. You can use both Linux and SQL commands for start/stop processes. However, it is important that you manually test the command to make sure it works before testing it on the process definition in IT-Conductor. In this case, the name of the database is ORACLE_SID. This variable will be used later in the form template.

Adding verifications to the workflows

You can also create a verification process definition, which is effectively an ‘IF’ condition logic to allow branching based on a check of input values or dynamic ITC status or any application attribute such as state.

 

In this example, this verification asks for the status of the SAP system. To define this activity, you need to add the following:

  • Name: Name of process definition

  • Owner: Robot user owner of the process definition, as specified before

  • Left object: Insert the name of the object that’s being verified. In this case, the name of the variable is APPSAP. This variable will be used later in the form template.

  • Criteria: The criteria that is being asked from the object in the “Left object” field

In the example, the criteria is asking if the object’s status id is NOT equal to 40 (which means it’s not ‘In Progress’ and thus is not currently running. If the criteria is true, then it’ll move on to the step to the right. If it’s false, it’ll do the final step and end the workflow.

In other types of criteria, you can check the system’s class. In this example, it’s asking if the object’s class is an ABAP system.

Adding jobs to the workflow

You can create process definitions for running jobs/programs. This job is launched via the SAPJCO interface with ABAP.

The main requirements for this step are:

 

  • Name: Name of step

  • Work queue: The object has to be specified on the “Work queue” field

  • Program name: In this example, it’s BTCTRNS2 to release jobs after the system starts up, since they were suspended when stopped in prior automation during shutdown.

  • Owner and User name: The user name’s account has to be specified under the owner (the automation user)

  • Job name: It’ll be assigned by default after creating the job step

 

Creating form templates

Have ready the fields, variables, and data that you identified as inputs while assembling the workflow, as these will be the parameters you’ll use in the form template.

Create a new form template by clicking on “+” or make a copy of an existing process definition and modify it.

Chances are that there already exists a form template with the necessary inputs, in that case, you may reuse it instead of creating a new one. Otherwise, you can duplicate the one with the closest parameters.

You can see which variable, app, class, or object the form is calling on the “Property” column.

Add elements by clicking on the “+” to the right, or to edit the template, select a row and click on “Modify row.”

Creating the Wizard

The creation of the wizard is divided into three steps:

  • Input parameters: Here, the user will enter the parameters needed to run the workflow. These parameters were specified in the selected form template.

This step includes entering the name and description of the wizard, the owner (usually the admin user of that tenant), the target class (choose execution config), and the form template previously created

  • Create process: In this step, on the “Wizard_Element.Definition” option, you’ll select the previously created process definition

 

  • View process: It’ll show you a final view of what the workflow looks like before you save the wizard

Same as with process definitions and form templates, you may copy an existing wizard and modify the “Input parameters” and “Create process” steps, and change the name, description, process definition, and form template.

Adding Start/Stop Wizard tile to a Dashboard

The Start/Stop automation dashboard for OZSoft has a tile for the Start/Stop Wizards that you can modify by entering the Design Mode (to enter design mode you need to use your admin IT-Conductor account, not impersonate the tenant’s admin), or by going to the dashboard tiles button and selecting the Wizard

How to assign a dashboard to a tenant?

Go to the “modify” view of the dashboard

Specify the following parameters on the dashboard.

  • Dashboard → Role: demonstration

  • Menu item → Parent menu: dashboards

  • General → Tenant: Tenant’s name. Owner: ITC Admin of the selected tenant

 

How to select the items that the Wizard tile will display?

The wizard tile contains the following options:

  • Dashboard: Select the dashboard that it’ll belong to

  • Title: Name of the title

  • Parameters: Insert the id of the tenant that this tile/dashboard will be associated to

  • Menu item: Here you insert the pre-created wizard items that the tile will display. The items are inserted inside a saved search which has the object ids of the pre-created wizards. In the saved search, in “Display mode” you may also select how the wizard items will be displayed on the dashboard.