INTRODUCTION
============

The Python module hostlist.py knows how to expand and collect hostlist
expressions. Example:

  % python
  Python 2.5.1 (r251:54863, Jul 10 2008, 17:24:48) 
  [GCC 4.1.2 20070925 (Red Hat 4.1.2-33)] on linux2
  Type "help", "copyright", "credits" or "license" for more information.
  >>> import hostlist
  >>> hosts = hostlist.expand_hostlist("n[1-10,17]")
  >>> hosts
  ['n1', 'n2', 'n3', 'n4', 'n5', 'n6', 'n7', 'n8', 'n9', 'n10', 'n17']
  >>> hostlist.collect_hostlist(hosts)
  'n[1-10,17]'
  >>> hostlist.collect_hostlist(["x1y1","x2y2", "x1y2", "x2y1"])
  'x[1-2]y[1-2]'

Bad hostlists or hostnames will result in the hostlist.BadHostlist
exception being raised.

The 'hostlist' command is provided to expand/collect hostlists and
perform set operations on them. Example:

  % hostlist n[1-10] n[5-20]
  n[1-20]
  % hostlist --difference n[1-10] n[5-20]
  n[1-4]
  % hostlist --expand --intersection n[1-10] n[5-20] 
  n5
  n6
  n7
  n8
  n9
  n10


BUILDING
========

Build RPM packages from the tar.gz archive by running:

  rpmbuild -ta python-hostlist-1.5.tar.gz

If you do not have the tar archive, create it first:

  python setup.py sdist
  rpmbuild -ta dist/python-hostlist-1.5.tar.gz

You may also install directly by running:

  python setup.py build   (as yourself)
  python setup.py install (as root) 


RELEASES AND FEEDBACK
=====================

You will find new releases at:

  http://www.nsc.liu.se/~kent/python-hostlist/

If you have questions, suggestions, bug reports or patches, please
send them to:

  kent@nsc.liu.se.
