README for Resource Type plugins: $Date: 2001/03/15 00:13:41 $ =========================================================================== In addition to the scripts normally associated with a ResourceType plugin, each resource type can have an optional file containing properties (OK, strings) which will be displayed in the GUI. These strings include the label which will be displayed for each attribute, the help or "glossary" text which will be linked to from each attribute's label, and introductory information describing what the resource type is for & how it should be configured. THE SERVER-SIDE PROPERTIES FILE The contents of this file are not propagated by the CDB, and should be installed on each node in the cluster along with the resource type's scripts. (If a resource type's properties file is missing on a node, all that happens is nice strings won't be displayed for that resource type when the GUI is run using that node as the server.) The location of the properties file for a resource type on the server is `/usr/lib/failsafe/resource_types//`. For example, the properties file for the IP_Address resource type would be `/usr/lib/failsafe/resource_types/IP_Address/IP_Address`. If you want to localize your resource types' properties, the translated strings would go into separate files--IP_Address.en_US.dude, for example-- but there are three small reasons (in SysadmListener.c++, UnixClientAuth.java, and ResourceTypeCategory.c++) why this doesn't work yet. Send mail to the FailSafe mailing list if that's holding you up. In each resource type's properties file, you can have the following property: .properFormat = introductory text For each type-specific attribute, you can have the following properties: ..label = Label to show in the GUI ..glossary = glossary key = Text to show if the user clicks on label Here's the file for the IP_Address resource type. # IP_address IP_address.properFormat = \ An IP address resource that belongs to a resource group can be \ used by clients to access the highly available resource group. \ As with any other type of resource, an IP address resource will \ be moved from one node to another when \ FailSafe detects a failure. \

The resource name for an IP address must follow standard dot \ notation. It should not be configured on any network interface. \ IP addresses that require name resolution are not valid IP_address \ resource names. \

For example, "192.0.2.22" could be the name of an IP_address \ resource. IP_address.NetworkMask.label = \ Network Mask IP_address.NetworkMask.glossary = \ glossary.IP_address.NetworkMask glossary.IP_address.NetworkMask: \ IP address network mask

\ The network mask of the IP address \ (for example, "0xffffff00"). \ See the ifconfig(1M) reference page for more \ information. IP_address.interfaces.label = \ Interfaces IP_address.interfaces.glossary = \ glossary.IP_address.interfaces glossary.IP_address.interfaces: \ IP address interfaces

\ A comma-separated list of interfaces on which the \ IP address can be configured \ (for example, "ec0,et0,ef0" or "hip0" or "lb0"). \ See the ifconfig(1M) reference page for more \ information. IP_address.BroadcastAddress.label = \ Broadcast Address IP_address.BroadcastAddress.glossary = \ glossary.IP_address.BroadcastAddress glossary.IP_address.BroadcastAddress: \ IP address broadcast address

\ The broadcast address for the IP address \ (for example, "192.0.2.255"). \ See the ifconfig(1M) reference page for more \ information.