IBM Power HMC Ruby SDK
Ruby client library to interact with the IBM Hardware Management Console.
Installation
Add this line to your application's Gemfile:
gem 'ibm_power_hmc'
And then execute:
$ bundle install
Or install it yourself as:
$ gem install ibm_power_hmc
Usage
Connection
require "ibm_power_hmc"
hc = IbmPowerHmc::Connection.new(
host: "<hmc host>",
username: "<hmc user (e.g. hscroot)>",
password: "<hmc password>",
validate_ssl: false)
Using the SDK
Retrieving information about the management console itself:
hmc = hc.management_console
puts hmc.name
puts hmc.version
Retrieving managed systems that are powered on:
hc.managed_systems("State==operating")
Listing the logical partitions and virtual I/O servers of each managed system:
hc.managed_systems.each do |sys|
puts sys.name
hc.lpars(sys.uuid).collect(&:name)
hc.vioses(sys.uuid).collect(&:name)
end
Retrieving a quick property for a given logical partition:
hc.lpar_quick_property(lpar_uuid, "PartitionState")
Shutting down a logical partition:
hc.poweroff_lpar(lpar_uuid, { "operation" => "shutdown" })
Setting the memory of a logical partition to 32GB:
hc.modify_object do
hc.lpar(lpar_uuid).tap { |lpar| lpar.desired_memory = 32_768 }
end
Listing serviceable events:
puts hc.serviceable_events
Processing HMC events:
loop do
hc.next_events.each do |event|
puts event.type
end
end
Development
After checking out the repo, run bin/setup
to install dependencies. You can also run bin/console
for an interactive prompt that will allow you to experiment.
To install this gem onto your local machine, run bundle exec rake install
. To release a new version, update the version number in version.rb
, and then run bundle exec rake release
, which will create a git tag for the version, push git commits and tags, and push the .gem
file to rubygems.org.
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/IBM/ibm_power_hmc_sdk_ruby.
License
This SDK is released under the Apache 2.0 license. The license's full text can be found in LICENSE.