Utility Functions¶
sth::duplicate¶
Purpose¶
Scale the configuration with Copies objects. If there is only a single source object, and the source object and destination object are of the same type, the destination object will be copied over by the source object; otherwise, the source objects will be copied under the destination object.
Synopsis¶
Note
M indicates that the argument is Mandatory .
sth::duplicate [-src_list <list of handles> M] [-repeat_count <numeric>] [-dst_list <list of handles>]
Arguments¶
-
-src_list
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the list of source objects to copy from.
-
-repeat_count
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the number to repeat copies to make. The default is 1.
-
-dst_list
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the target object to copy to. If the value is not specified, the target object will be the parent of the first object in -srclist.
Arguments Unsupported by Save as HLTAPI¶
All arguments are not supported by Save as HLTAPI
Return Values¶
Depending on the specific language that HLTAPI uses, the function returns a keyed list/dictionary/hash (See Introduction for more information on return value formats) using the following keys (with corresponding data):
status Success (1) or failure (0) of the operation.
log An error message (if the operation failed).
handles The duplicated objects.
Description¶
The sth::duplicate
function simulates the configuration operation in Spirent
TestCenter GUI like context menu items:
Duplicate… Copy/Paste EmulatedDevice… Copy/Paste StreamBlock…
When -dst_list is not specified, it works as Duplicate… When -dst_list is specified with port, it works as Copy/Paste EmulatedDevice… or Copy/Paste StreamBlock…
Examples¶
Sample Input:
::sth::duplicate -src_list $host -repeat_count 2
Here is an example of the output for the above sample input function:
{handles {emulateddevice2 emulateddevice3}} {status 1}
End of Procedure Header
sth::fill_custom¶
Purpose¶
Scale the configuration with specified copy|increment|decrement|random calculation template on the handles’ specified field values.
Synopsis¶
Note
M indicates that the argument is Mandatory .
sth::fill_custom [-handles <list of handles> M] [-field_type {ipv4addr|ipv6addr|attached_vtep_addr} M] [-field_name <string>] [-initial <value> M] [-type <increment|copy>] [-repetition <integer>] [-step <specific value for the field_type>] [-restriction <specific value for the field_type>]
Arguments¶
-
-handles
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the list of handles to perform the Fill custom operation on their fields.
-
-field_type
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the type of the field to perform the Fill custom operation Current possible values are:
name The handle's name ipv4addr Ipv4 address type ipv6addr Ipv6 address type attached_vtep_addr Attached VTEP IP address of VXLAN VM
The default is name. More type values such as macaddr will be supported in future releases.
-
-field_name
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the name of the field to perform the Fill custom operation. -field_name value is different for different value of -field_type. For some field_type value, the value of -field_name can be skipped For example:
field_type field_name name name (can be skipped, name will be taken by default) ipv4addr ipv4if.address, ipv4if.gateway or other Ipv4 address (cannot be skipped) ipv6addr ipv6if.address or ipv6if.gateway or other Ipv6 address (cannot be skipped) attached_vtep_addr attached_vtep_addr (can be skipped)
-
-initial
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the handle whose field value is used as initial value for fillcustom operation.
-
-type
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the type of fillcustom operation. Current possible values are:
copy the field values of handles will be same as the value of -initial handle. increment the field values of handles will be filled with incremented calculation value based on the value of -initial handle as initial, and the value of -repetition and -step.
In future release, decrement or random will be supported.
-
-repetition
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the repetition value between two consecutive field values. This argument is required when -type is increment.
-
-step
¶
Spirent Extension (for Spirent HLTAPI only).
Specifies the value by which the IP address must be stepped. This argument is required when -type is increment.
-
-restriction
¶
Spirent Extension (for Spirent HLTAPI only).
This argument is reserved for future use.
Arguments Unsupported by Save as HLTAPI¶
None
Return Values¶
Depending on the specific language that HLTAPI uses, the function returns a keyed list/dictionary/hash (See Introduction for more information on return value formats) using the following keys (with corresponding data):
status Success (1) or failure (0) of the operation.
log An error message (if the operation failed).
Description¶
The sth::fill_custom
function enables you to simulate the configuration
operations in Spirent TestCenter GUI like context menu items:
Copy down… Fill increment… Fill custom…
When -type is copy, it works as Copy down… When -type is increment, -step is x.x.x.1 or others, it works as Fill increment…
Examples¶
Sample Input:
The attached VTEP IP address of VXLAN VM targeted by $devices will be same as that of $host::
::sth::fill_custom -handles $devices -field_type attached_vtep_addr -initial $host -type copy
The names of devices will be filled with the similar name as $host but in different index like Host 2::
::sth::fill_custom -handles $devices -field_type name -initial $host -repetition 1 -step 1 -type increment
The ipv4if address or gateway of devices will be filled with the IP address calculated on the IP address of $host::
::sth::fill_custom -handles $devices -field_type ipv4addr -field_name ipv4if.address -initial $host -repetition 1 -step 0.0.0.1 -type increment
::sth::fill_custom -handles $devices -field_type ipv4addr -field_name ipv4if.gateway -initial $host -repetition 1 -step 0.0.1.0 -type increment
Sample Output:
#On success
{status 1}
#On failure
{status 0} {log {<errorMsg>}}
End of Procedure Header