DOKK / manpages / debian 10 / clusterssh / App::ClusterSSH::Cluster.3pm.en
App::ClusterSSH::Cluster(3pm) User Contributed Perl Documentation App::ClusterSSH::Cluster(3pm)

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.

2018-11-08 perl v5.28.0