Skip to content

Instantly share code, notes, and snippets.

@jumanjiman
Last active August 29, 2015 13:57
Show Gist options
  • Save jumanjiman/9399041 to your computer and use it in GitHub Desktop.
Save jumanjiman/9399041 to your computer and use it in GitHub Desktop.
read ip from output file of hponcfg
<!-- HPONCFG VERSION = "4.3.0" -->
<!-- Generated 3/6/2014 15:4:58 -->
<RIBCL VERSION="2.1">
<LOGIN USER_LOGIN="Administrator" PASSWORD="password">
<DIR_INFO MODE="write">
<MOD_DIR_CONFIG>
<DIR_AUTHENTICATION_ENABLED VALUE = "N"/>
<DIR_LOCAL_USER_ACCT VALUE = "Y"/>
<DIR_SERVER_ADDRESS VALUE = ""/>
<DIR_SERVER_PORT VALUE = "636"/>
<DIR_OBJECT_DN VALUE = ""/>
<DIR_OBJECT_PASSWORD VALUE = ""/>
<DIR_USER_CONTEXT_1 VALUE = ""/>
<DIR_USER_CONTEXT_2 VALUE = ""/>
<DIR_USER_CONTEXT_3 VALUE = ""/>
</MOD_DIR_CONFIG>
</DIR_INFO>
<RIB_INFO MODE="write">
<MOD_NETWORK_SETTINGS>
<SPEED_AUTOSELECT VALUE = "Y"/>
<NIC_SPEED VALUE = "10"/>
<FULL_DUPLEX VALUE = "N"/>
<IP_ADDRESS VALUE = "6.3.251.27"/>
<SUBNET_MASK VALUE = "255.255.248.0"/>
<GATEWAY_IP_ADDRESS VALUE = "6.3.248.1"/>
<DNS_NAME VALUE = "tc-lss05-i"/>
<PRIM_DNS_SERVER value = "6.3.6.52"/>
<DHCP_ENABLE VALUE = "Y"/>
<DOMAIN_NAME VALUE = "inf.ise.com"/>
<DHCP_GATEWAY VALUE = "Y"/>
<DHCP_DNS_SERVER VALUE = "Y"/>
<DHCP_STATIC_ROUTE VALUE = "Y"/>
<DHCP_WINS_SERVER VALUE = "Y"/>
<REG_WINS_SERVER VALUE = "Y"/>
<PRIM_WINS_SERVER value = "0.0.0.0"/>
<STATIC_ROUTE_1 DEST = "0.0.0.0" GATEWAY = "0.0.0.0"/>
<STATIC_ROUTE_2 DEST = "0.0.0.0" GATEWAY = "0.0.0.0"/>
<STATIC_ROUTE_3 DEST = "0.0.0.0" GATEWAY = "0.0.0.0"/>
</MOD_NETWORK_SETTINGS>
</RIB_INFO>
<USER_INFO MODE="write">
<ADD_USER
USER_NAME = "Admin"
USER_LOGIN = "Admin"
PASSWORD = "%user_password%">
<ADMIN_PRIV value = "Y"/>
<REMOTE_CONS_PRIV value = "Y"/>
<RESET_SERVER_PRIV value = "Y"/>
<VIRTUAL_MEDIA_PRIV value = "Y"/>
<CONFIG_ILO_PRIV value = "Y"/>
</ADD_USER>
</USER_INFO>
</LOGIN>
</RIBCL>
#!/usr/bin/env ruby
require 'rexml/document'
require 'tempfile'
file = Tempfile.new('blah')
%x!hponcfg -w #{file.path}!
doc = REXML::Document.new file
ip = REXML::XPath.first(doc, '//IP_ADDRESS').attributes['VALUE']
File.unlink file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment