blob: 9b6cfa418575df31054ea97f816b3428d9e044da [file] [log] [blame]
# invoke_erb.rb
#
# Invoke with EndPointReference
# winrm Command :
#
# winrm invoke RealizePlannedSystem
# http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_VirtualSystemManagementService
# ?CreationClassName=Msvm_VirtualSystemManagementService
# +Name=vmms
# +SystemCreationClassName=Msvm_ComputerSystem
# +SystemName=hyperv06
# -file:input.xml
# -r:<address>:<port>
# -a:Basic
# -u:Administrator
# -p:<password>
# -SkipCAcheck
# -SkipCNcheck
#
# Input.xml :
# <p:RealizePlannedSystem_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_VirtualSystemManagementService">
# <p:PlannedSystem>
# <a:Address xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address>
# <a:ReferenceParameters xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd">
# <w:ResourceURI>http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_PlannedComputerSystem</w:ResourceURI>
# <w:SelectorSet>
# <w:Selector Name="CreationClassName">Msvm_PlannedComputerSystem</w:Selector>
# <w:Selector Name="Name">8FF5E6F3-A141-465B-83ED-3BFC0F59F7EF</w:Selector>
# </w:SelectorSet>
# </a:ReferenceParameters>
# </p:PlannedSystem>
# </p:RealizePlannedSystem_INPUT>
#
# Request
#<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd">
# <s:Header>
# <a:To>http://10.120.4.11:5985/wsman</a:To>
# <w:ResourceURI s:mustUnderstand="true">http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_VirtualSystemManagementService</w:ResourceURI>
# <a:ReplyTo>
# <a:Address s:mustUnderstand="true">http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address>
# </a:ReplyTo>
# <a:Action s:mustUnderstand="true">http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_VirtualSystemManagementService/RealizePlannedSystem</a:Action>
# <w:MaxEnvelopeSize s:mustUnderstand="true">512000</w:MaxEnvelopeSize>
# <a:MessageID>uuid:AC1C5EDE-BC24-4F46-9A15-78AAF883F2E0</a:MessageID>
# <w:Locale xml:lang="en-US" s:mustUnderstand="false"/>
# <p:DataLocale xml:lang="en-US" s:mustUnderstand="false"/>
# <p:SessionId s:mustUnderstand="false">uuid:8FAE7733-6B3B-4DB8-83E8-37C4537FCD9D</p:SessionId>
# <p:OperationID s:mustUnderstand="false">uuid:0226A933-16BB-4537-B0E6-060B962FC19D</p:OperationID>
# <p:SequenceId s:mustUnderstand="false">1</p:SequenceId>
# <w:SelectorSet>
# <w:Selector Name="CreationClassName">Msvm_VirtualSystemManagementService</w:Selector>
# <w:Selector Name="Name">vmms</w:Selector>
# <w:Selector Name="SystemCreationClassName">Msvm_ComputerSystem</w:Selector>
# <w:Selector Name="SystemName">hyperv06</w:Selector>
# </w:SelectorSet>
# <w:OperationTimeout>PT60.000S</w:OperationTimeout>
# </s:Header>
# <s:Body>
# <p:RealizePlannedSystem_INPUT xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_VirtualSystemManagementService">
# <p:PlannedSystem>
# <a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address>
# <a:ReferenceParameters>
# <w:ResourceURI>http://schemas.microsoft.com/wbem/wsman/1/wmi/root/virtualization/v2/Msvm_PlannedComputerSystem</w:ResourceURI>
# <w:SelectorSet>
# <w:Selector Name="CreationClassName">Msvm_PlannedComputerSystem</w:Selector>
# <w:Selector Name="Name">8FF5E6F3-A141-465B-83ED-3BFC0F59F7EF</w:Selector>
# </w:SelectorSet>
# </a:ReferenceParameters>
# </p:PlannedSystem>
# </p:RealizePlannedSystem_INPUT>
# </s:Body>
#</s:Envelope>
require 'rexml/document'
require File.join(File.dirname(__FILE__),'_loadpath')
require 'openwsman'
require '_client'
client = Client.open
options = Openwsman::ClientOptions.new
options.set_dump_request
uri = Openwsman.epr_uri_for("root/virtualization/v2", "Msvm_VirtualSystemManagementService")
options.add_selector("CreationClassName", "Msvm_VirtualSystemManagementService")
options.add_selector("Name", "vmms")
options.add_selector("SystemCreationClassName", "Msvm_ComputerSystem")
options.add_selector("SystemName", "hyperv06")
method = "RealizePlannedSystem"
epr = Openwsman::EndPointReference.new(Openwsman.epr_uri_for("root/virtualization/v2", "Msvm_PlannedComputerSystem"))
epr.add_selector("CreationClassName", "Msvm_PlannedComputerSystem")
epr.add_selector("Name", "8FF5E6F3-A141-465B-83ED-3BFC0F59F7EF")
# puts "EPR:\n#{epr.to_xml}"
options.add_property("PlannedSystem", epr)
options.add_property("Two", "two")
options.add_property("One", "one")
result = client.invoke( options, uri, method )
fault? client, result