nnmooflow.ovpl — Manage available HP OO flow definitions used by NNMi iSPI NET.
nnmooflow.ovpl
[-h] [-l] [-i xmlfilename
] [-d uuid
] [--flow_uuid uuid
] [--flow_name flowname
] [--flow_desc flowdescription
] [--baseline] [--flow_arg_username flowarguementusername
] [--flow_arg_password flowarguementpassword
] [--flow_arg_hostname flowarguementhostname
] [--flow_arg_ifname flowarguementinterfacename
] [--flow_arg_iftype flowarguementinterfacetype
] [--flow_arg_ifalias flowarguementinterfacealias
] [--flow_arg_ifindex flowarguementinterfaceindex
] [--flow_arg_portname flowarguementportname
] [--flow_arg_portindex flowarguementportindex
] [--flow_arg_username_req] [--flow_arg_password_req] [--flow_arg_hostname_req] [--flow_arg_ifname_req] [--flow_arg_iftype_req] [--flow_arg_ifalias_req] [--flow_arg_ifindex_req] [--flow_arg_portname_req] [--flow_arg_portindex_req] [--filter filter
] [-u nnmusername
] [-p nnmpassword
]
Manage user defined HP OO flow definitions. This command can be used to list current HP OO flow definitions available to NNMi, import a new HP OO flow definition to NNMi, or delete an existing HP OO flow definition from NNMi.
HP OO flows are authored using HP Operations Orchestration Studio. Flows in HP OO can be invoked from NNMi during incident processing. A number of arguments can be passed to HP OO flows. See below for the full list of arguments which can be passed.
This list option will show all available HP OO flow definitions including those shipped with the iSPI NET diagnostics server and those previously imported. Note that only user defined HP OO flow definitions can be deleted.
An HP OO flow definition is imported into NNMi by creating an xmlfile using the format described below and importing the definition using the -i option. A single xml file can contain a single flow definition. If multiple flow definitions need to be imported to NNMi, create a separate xml file for each.
Alternatively, a flow can be imported into NNMi by describing the flow definition via command line arguements.
The following is a sample import xmlfile
<definition xmlns="http://openview.hp.com/xmlns/nnmi/diagnostics/1"> <uuid>a2dbd722-b0c3-43ad-b435-4eae9adf37b1</uuid> <name>Test Flow</name> <description>A test flow for import</description> <baseline>true</baseline> <arguments> <argument> <type>HOST</type> <name>hostname</name> <required>true</required> </argument> <argument> <type>SHELL_USERNAME</type> <name>user</name> <required>false</required> </argument> <argument> <type>SHELL_PASSWORD</type> <name>password</name> <required>true</required> </argument> </arguments> <filters> <filter> <vendor>com.hp.ov.nms.devices.cisco</vendor> <category>com.hp.ov.nms.devices.router</category> <family>com.hp.ov.nms.devices.cisco3600seriesmultiservicebranchofficerouter</family> </filter> </filters> </definition>
The XML document requires the following structure:
<definition> <uuid></uuid> <name></name> <description></description> <baseline></baseline> <arguments> <argument></argument> </arguments> <filters> <filter></filter> </filters> </definition>
<definition> - XML document element.
<uuid>nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn</uuid>- contains the uuid of the HP OO flow as provided by HP OO Studio. The uuid is available on the properties tab for the flow displayed in HP OO Studio.
<name>string</name> - contains the name of the flow to be displayed in NNMi. Name can be a maximum of 128 characters. More than 128 characters will cause a parse exception when reading the xml file.
<description>string</description> - contains the description of the flow to be displayed in NNMi. Description can be a maximum size of 2048 characters. More than 2048 characters will cause a parse exception when reading the xml file.
<baseline>boolean</baseline> - defines whether the flow is baseline or not. This element is optional and can be either true or false. If this element is present and true, NNMi will mark the flow as a baseline flow and will attempt to run them when you choose Actions - Run Diagnostics. If this element is not present or set to false, NNMi will mark the imported flow as a non-baseline flow
<arguments> - contains a list of 1 or more <argument> elements to pass to the flow. Include as many <argument> children as necessary. Each flow defined in HP OO Studio can accept named inputs. The <arguments> list allows HP NNMi to pass NNMi defined variables to these inputs. The <type> element defines the variable NNMi will pass to the input identified in the <name> element. SHELL_USERNAME and SHELL_PASSWORD are defined using NNMi's creditional configuration in NNMi's Communication configuration workspace. The variables passed to the HP OO flow are determined based on the incident's related device, interface, or port. If a argument is specified as required but NNMi can't determine an appropriate value based on the incident, the HP OO flow will not be invoked.
An <argument> element contains a <type>, a <name>, and <required> elements.
The <type> element can be any of the following: SHELL_USERNAME, SHELL_PASSWORD, HOST, IFACE_IFNAME, IFACE_IFTYPE, IFACE_IFALIAS, IFACE_IFINDEX, PORT_NAME, PORT_INDEX.
The <name> element represents the name of the input as defined in the HP OO Flow. The variable will be passed to the HP OO Flow using this input name.
The <required> element may be true or false and indicates if the argument must be supplied to HP OO.
Multiple <filter> elements can be specified. <filter> elements define the types of devices where a flow can be excuted. <filter> elements are constructed using <vendor>, <category>, and <family> child elements.
Filters specify the vendor, category, and family of the device or devices the flow supports. As such flows can be defined for generic use across a vendor's product line or defined to more narrowly execute on a category or family of devices from a vendor. Use the "unique key" as indentified in sub forms for Device Profile. You can find the "unique key" by opening the form corresponding to a specific Device vendor, Device Category, or Device Family using the Device Profile workspace.
A filter can specify just vendor, category, or family or all three to indicate a very specific device profile. <filters> can be empty, if the flow can operate on any device.
Once a flow definition has been imported to NNMi, it is available to be used in NNMi Incident Configuration. See NNMi online help for instructions on configuring incident flows.
nnmooflow.ovpl
supports the following parameters:
-h
Displays command summary
-l
Displays a list of all HP OO flow definitions available for use in incident configuration.
-d
uuid
Removes the flow definition identified by the uuid. HP defined flow definitions can not be removed. User defined flow definitions which are referenced in incident configuration also may not be removed.
-i
xmlfilename
Imports the flow definition defined by the xml file. A flow can be repeatly imported to NNMi. Only the last flow definition for a uuid imported by this command will be retained in the configuration.
--flow_uuid
flowuuid
Defines the UUID of the flow being imported via command line to be flowuuid
--flow_name
flowname
Defines the name of the flow being imported via command line to be flowname
--flow_desc
flowdesc
Defines the description of the flow being imported via command line as flowdesc
--baseline
Defines that the flow being imported via the command line should be marked as baseline by NNMi
--flow_arg_username
flowargusername
Defines that the shell username (SHELL_USERNAME) generated by NNMi should be passed to OO as a flow input variable with name flowargusername
--flow_arg_password
flowargpassword
Defines that the shell password (SHELL_PASSWORD) generated by NNMi should be passed to OO as a flow input variable with name flowargpassword
--flow_arg_hostname
flowarghostname
Defines that the hostname (HOST) generated by NNMi should be passed to OO as a flow input variable with name flowarghostname
--flow_arg_ifname
flowargifname
Defines that the interface name (IFACE_IFNAME) generated by NNMi should be passed to OO as a flow input variable with name flowargifname
--flow_arg_iftype
flowargiftype
Defines that the interface type (IFACE_IFTYPE) generated by NNMi should be passed to OO as a flow input variable with name flowargiftype
--flow_arg_ifalias
flowargifalias
Defines that the interface alias (IFACE_IFALIAS) generated by NNMi should be passed to OO as a flow input variable with name flowargifalias
--flow_arg_ifindex
flowargifindex
Defines that the interface index (IFACE_IFINDEX) generated by NNMi should be passed to OO as a flow input variable with name flowargifindex
--flow_arg_portname
flowargportname
Defines that the interface port name (PORT_NAME) generated by NNMi should be passed to OO as a flow input variable with name flowargportname
--flow_arg_portindex
flowargportindex
Defines that the interface port name (PORT_INDEX) generated by NNMi should be passed to OO as a flow input variable with name flowargportindex
--flow_arg_username_req
Defines that the flow argument username is required
--flow_arg_pssword_req
Defines that the flow argument password is required
--flow_arg_hostname_req
Defines that the flow argument hostname is required
--flow_arg_ifname_req
Defines that the flow argument interface name is required
--flow_arg_iftype_req
Defines that the flow argument interface type is required
--flow_arg_ifalias_req
Defines that the flow argument interface alias is required
--flow_arg_ifindex_req
Defines that the flow argument interface index is required
--flow_arg_portname_req
Defines that the flow argument interface portname is required
--flow_arg_portindex_req
Defines that the flow argument interface port index is required
--filter
filter
Defines the filters which should be applied to the flow definition. Filters should be of the form "vendor,category,family". Multiple filter definitions are allowed for the same flow definition.
To list currently available HP OO Flow Definitions:
nnmooflow.ovpl -l
To load a flow definition
nnmooflow.ovpl -i flow.xml
To delete a flow definition
nnmooflow.ovpl -d 01d616b0-e852-4235-b447-48185bd31444
To import a flow definiton directly via command line
nnmooflow.ovpl --flow_uuid 40499f32-434d-4179-8ade-9c68d3920ffd --flow_name "Test NNMi Baseline Flow" --flow_desc "A Baseline Flow" --baseline --flow_arg_username Username --flow_arg_password Password --flow_arg_hostname Hostname --filter
"com.hp.ov.nms.devices.cisco,com.hp.ov.nms.devices.router" --flow_arg_username_req --flow_arg_password_req --flow_arg_hostname_req