[Ovirt-devel] Re: [PATCH server] Replace python qpid example with ruby example.

Ian Main imain at redhat.com
Fri Oct 31 18:53:03 UTC 2008


Pushed.


On Fri, 31 Oct 2008 11:32:30 -0700
Ian Main <imain at redhat.com> wrote:

> This change removes the python qpid demo and replaces it
> with a shiny new ruby demo!
> 
> Signed-off-by: Ian Main <imain at redhat.com>
> ---
>  src/qmf-libvirt-example.rb |   62 ++++++++++++++++++++++++++++++++++++++++++++
>  src/qpid_list_demo.py      |   42 -----------------------------
>  2 files changed, 62 insertions(+), 42 deletions(-)
>  create mode 100644 src/qmf-libvirt-example.rb
>  delete mode 100755 src/qpid_list_demo.py
> 
> diff --git a/src/qmf-libvirt-example.rb b/src/qmf-libvirt-example.rb
> new file mode 100644
> index 0000000..5bfe44d
> --- /dev/null
> +++ b/src/qmf-libvirt-example.rb
> @@ -0,0 +1,62 @@
> +#!/usr/bin/ruby
> +
> +require "rubygems"
> +require "qpid"
> +
> +s = Qpid::Qmf::Session.new()
> +b = s.add_broker("amqp://localhost:5672")
> +
> +while true:
> +    nodes = s.objects(:class => "node")
> +    nodes.each do |node|
> +        puts "node: #{node.hostname}"
> +        for (key, val) in node.properties
> +            puts "  property: #{key}, #{val}"
> +        end
> +
> +        # Find any domains that on the current node.
> +        domains = s.objects(:class => "domain", 'node' => node.object_id)
> +        domains.each do |domain|
> +            r = domain.getXMLDesc()
> +            puts "getXMLDesc() status: #{r.status}"
> +            puts "getXMLDesc() status: #{r.text}"
> +            if r.status == 0
> +                puts "xml length: #{r.description.length}"
> +            end
> +
> +            puts "  domain: #{domain.name}, state: #{domain.state}, id: #{domain.id}"
> +            for (key, val) in domain.properties
> +                puts "    property: #{key}, #{val}"
> +            end
> +        end
> +
> +        pools = s.objects(:class => "pool", 'node' => node.object_id)
> +        pools.each do |pool|
> +            puts "  pool: #{pool.name}"
> +            for (key, val) in pool.properties
> +                puts "    property: #{key}, #{val}"
> +            end
> +
> +            r = pool.getXMLDesc()
> +            puts "getXMLDesc() status: #{r.status}"
> +            puts "getXMLDesc() text: #{r.text}"
> +            if r.status == 0
> +                puts "xml length: #{r.description.length}"
> +            end
> +
> +            # Find volumes that are part of the pool.
> +            volumes = s.objects(:class => "volume", 'pool' => pool.object_id)
> +            volumes.each do |volume|
> +                puts "    volume: #{volume.name}"
> +                for (key, val) in volume.properties
> +                    puts "      property: #{key}, #{val}"
> +                end
> +            end
> +        end
> +
> +    end
> +
> +    puts '----------------------------'
> +    sleep(5)
> +
> +end
> diff --git a/src/qpid_list_demo.py b/src/qpid_list_demo.py
> deleted file mode 100755
> index 3b96c8a..0000000
> --- a/src/qpid_list_demo.py
> +++ /dev/null
> @@ -1,42 +0,0 @@
> -#!/usr/bin/python
> -
> -# This script is temporary!  It's just a demo to show how the qpid
> -# stuff works.  This prints out a hierarchy of nodes/domains/pools/volumes
> -# every five seconds.
> -
> -from qpid.qmfconsole import Session
> -import time
> -
> -s = Session()
> -b = s.addBroker()
> -
> -while True:
> -    nodes = s.getObjects(cls="node")
> -    for node in nodes:
> -        print 'node:', node.hostname
> -        for prop in node.properties:
> -            print "  property:", prop
> -        # Find any domains that on the current node.
> -        domains = s.getObjects(cls="domain", node=node.objectId)
> -        for domain in domains:
> -            print '  domain:', domain.name
> -            for prop in domain.properties:
> -                print "    property:", prop
> -
> -        pools = s.getObjects(cls="pool", node=node.objectId)
> -        for pool in pools:
> -            print '  pool:', pool.name
> -            for prop in pool.properties:
> -                print "    property:", prop
> -
> -            # Find volumes that are part of the pool.
> -            volumes = s.getObjects(cls="volume", pool=pool.objectId)
> -            for volume in volumes:
> -                print '    volume:', volume.name
> -                for prop in volume.properties:
> -                    print "      property:", prop
> -
> -    time.sleep(5)
> -
> -    print '----------------------------'
> -
> -- 
> 1.5.6.5
> 




More information about the ovirt-devel mailing list