These tools are no longer actively maintained. These scripts may only work with previous versions of iDRAC/LC or they may not address new functionality in the most recent releases of iDRAC/LC firmware or new PowerEdge Server platforms.
What is it?
WSL (a.k.a. "whistle") contains various scripts that serve as a client interface to WSMAN or “Web Services for Management“ protocol based on DMTF standard specification. WSMAN provides standards based messaging for systems management CIM-style objects.
Why would I use it?
How does the command look like?
Typing "wsl" will show you the help information.
WSLWsman Shell commandLine, version 0.1.0
USAGE: wsl COMMAND [PARAMS...]
COMMAND:identify - WS-Identifyenum - WS-Enumerateget - WS-Getput - WS-Putinvoke - WS-Invokexclean - Delete all generated filesxcred - Create or display credential file
PARAMS specification is specific to a COMMAND.
You can get more help for a particular command by typing the command, "wsl enum" for example will show you more help about enum. Some commands as you might notice use another script, for example "wsl enum" calls "wslenum".
What do I need to run it?
It may run on Windows operating system by installing CYGWIN or similar port of GNU shell environment and tools.
How can I get it?
Or you can get the latest from git:$ git clone http://linux.dell.com/git/wsl.git
Help or feedback?
To get help or feedback, send a note to the mailing list email@example.com
You can sign up for the mailing list at https://lists.us.dell.com/mailman/listinfo/linux-poweredge.
Example Use Case?
$ WSENDPOINT=192.168.7.31 WSUSER=admin WSPASS=*** wsl identify check
Create Encrypted Credential FileYou will be prompted for name and password but you can also provide them as parameter to wsl.
$ wsl xcred admin.cred
Using Encrypted Credential File
$ WSENDPOINT=192.168.7.31 WSUSER=FILE:admin.cred wsl identify check
WSMAN EnumerateTarget IP address and user credential may be provided through shell environment or entered once and remembered through a history file so you don't have to provide them each subsequent use. See the customize section for more options.
$ wsl enum CIM_ComputerSystem
WSMAN Enumerate – Optimized The default mode for an enumeration is a pull transaction. The first response gives you an Enumeration context which is used to send a Pull operation. The subsequent response gives you one instance of the class enumerated. It includes the Enumeration context which indicates a need for more pull until all instances have been sent to you. The last instance will not contain the Enumeration context. If you like to get one response that contains all instances, you need to instruct the server with an Optimization command and the maximum instances to return. If the maximum number you provided is less than the instance count, it will require Pull.
$ WSENUMOPTIMIZE=1 WSENUMMAXELEM=512 wsl enum CIM_ComputerSystem
WSMAN Enumerate – Default SchemaA default schema may be defined in the configuration file. If the prefix is not “CIM_”, the default schema is prepended to the class name. If the target schema is not the same as the default, you may specify the absolute class URI.
$ wsl enum DCIM_ComputerSystem
$ wsl enum http://schemas.sblim.org/wbem/wscim/1/cim-schema/2/Linux_ComputerSystem
WSMAN Enumerate – CQL Filter
$ wsl enum CIM_ComputerSystem -filter "select * from CIM_ComputerSystem where Name='systemmc'"
WSMAN Enumerate – EPR (Endpoint Reference)
$ wsl enum CIM_ComputerSystem -mode epr
$ wsl get DCIM_SPComputerSystem CreationClassName=DCIM_SPComputerSystem Name=systemmc
$ wsl put DCIM_ActiveDirectoryService DomainControllerAddresses=XX –filter "select * from DCIM_ActiveDirectoryService where Name='systemmc'"
WSMAN Put/Set – Array
$ wsl put DCIM_ActiveDirectoryService DomainControllerAddresses=XX DomainControllerAddresses=YY
$ wsl invoke CIM_Log ClearLog -filter "select * from CIM_Log where InstanceID='DCIM:LifeCycleLog'"
WSMAN Enumerate – References Enumeration of class association instance (or References) is a 2 step process. First is to acquire the EPR of the class instance you are interested in. Second is to use that EPR to enumerate its references.
$ wsl enum CIM_ComputerSystem -mode epr -filter "select * from CIM_ComputerSystem where Name='systemmc'"
$ wsl enum -references DCIM_SPComputerSystem CreationClassName=DCIM_SPComputerSystem Name=systemmc
WSMAN Enumerate – Associators Enumeration of class associated instances (or Associators) is a 2 step process. First is to acquire the EPR of the class instance you are interested in. Second is to use that EPR to enumerate its associators.
$ wsl enum -associators DCIM_SPComputerSystem CreationClassName=DCIM_SPComputerSystem Name=systemmc
Can I customize?
You can customize run-time experience by defining variables in the shell environment or in a "wsl-config" file located in the current or program directory.