App::ClusterSSH::Cluster - Object representing cluster
configuration
Object representing application configuration
- $cluster=ClusterSSH::Cluster->new();
- Create a new object. Object should be common across all invocations.
- $cluster->get_cluster_entries($filename);
- Read in /etc/clusters, $HOME/.clusterssh/clusters
and any other given file name and register the tags found.
- @external_tags=list_external_clusters()
- Call an external script suing "-L" to
list available tags
- @resolved_tags=get_external_clusters(@tags)
- Use an external script to resolve @tags into
hostnames.
- $cluster->get_tag_entries($filename);
- Read in /etc/tags, $HOME/.clusterssh/tags and any
other given file name and register the tags found.
- $cluster->read_cluster_file($filename);
- Read in the given cluster file and register the tags found
- $cluster->expand_filename($filename);
- Expand ~ or $HOME in a filename
- $cluster->read_tag_file($filename);
- Read in the given tag file and register the tags found
- $cluster->register_tag($tag,@hosts);
- Register the given tag name with the given host names.
- $cluster->register_host($host,@tags);
- Register the given host on the provided tags.
- @entries = $cluster->get_tag('tag');
- $entries = $cluster->get_tag('tag');
- Retrieve all entries for the given tag. Returns an array of hosts or the
number of hosts in the array depending on context.
- @tags = $cluster->list_tags();
- Return an array of all available tag names
- %tags = $cluster->dump_tags();
- Returns a hash of all tag data.
- @tags = $cluster->expand_glob( $type, $name, @items );
- Use shell expansion against each item in @items,
where $type is either 'node', or 'tag' and
$name is the node or tag name. These attributes
are presented to the user in the event of an issue with the expanion to
track down the source.
Duncan Ferguson, "<duncan_j_ferguson at
yahoo.co.uk>"
Copyright 1999-2016 Duncan Ferguson.
This program is free software; you can redistribute it and/or
modify it under the terms of either: the GNU General Public License as
published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.