Message 59/1391 From Marat Fairuzov Sep 3, 98 02:39:53 pm -0500
Date: Thu, 3 Sep 1998 14:39:53 -0500 (CDT)
Subject: Re: MDS component software schema/format
Hi, Juan,
Here is a tentative thing that will go into Globus MDS. Unfortunately my
proposal, which included things like "interface" didn't go through. There
is a chance that it will be used in future Globus releases. But for now
this is what's going to be there. There are 2 things: GlobusSoftware, and
GlobusDaemon (the latter is intended for running daemons, and includes
port info). There is another one, GlobusRepository, but it is not
finalized yet, and has even less usability for you, as far as I can tell.
Marat
#-------------------------------------------------------
# GLOBUS SOFTWARE
#
# PURPOSE:
#
# Globus software objects describe information to software
# installed and maintained in a metacomputing environment. This include
# the software as distributed with the Globus metacomputing kit, but
# also other software including compilers, application programs and
# contributed software.
#
# The current objects include:
#
# sw - GlobusSoftware (will be deprecated in the next release)
#
# da - GlobusDaemon
#
# The ssw object will take over the functionality of the current sw
# object. It is kept to ease the transition phase.
#
#-------------------------------------------------------
GlobusSoftware OBJECT CLASS
# General remark:
# A GeneralSoftware object stores information related to software
SUBCLASS OF GlobusTop
RDN = sw (software)
CHILD OF {
hostname;
# organization;
# organizationalUnit;
# computeResource;
GlobusRoot
}
MAY CONTAIN {
name :: cis,
# a name or abrreviation for the software
description :: cis,
# describes what the software is doing or gives an easy to
# understand id entifier, e.g. GNU CC compiler
documentation :: cis,
# gives pointers where to find documentation on the software
# e.g. http:/www.gnu.org/gcc
# man gcc
executableDirectory :: cis,
# specifies the directory in which the executable can be found
# e.g. /usr/local/bin
# (directories could also be specified as url)
manpathDirectory :: cis,
# specifies the directory in which the man pages can be found,
# e.g. /usr/local/man
libDirectory :: cis,
# specifies the directory in which the libraries can be found,
e.g. /usr/local/lib
includeDirectory :: cis,
# specifies the directory in which the includefiles are located,
# e.g. /usr/local/include
sharedlibraryDirectory :: cis,
# specifies the directory in which the shared libraries can be
# found
bugs :: cis,
# specifies links to known bugs
installedBy :: dn,
# specifies the dn of the person who installed the software
administeredBy :: dn,
# specifies the dn of the person who administers the software
notes :: cis,
# a field which can hold notes and remarks
repositoryPackage :: cis,
# a distingushed name or string of a repository package this
# software could belong to, e.g. gnu
releaseTag :: cis,
# contains the release tag sometimes it is a combination of
# Major.Minor.Beta.Patch
releaseDate :: cis,
# contains the date of the release
releaseMajor :: cis,
# contains the Major release version
releaseMinor :: cis,
# contains the Minor Release Version
releasePatch :: cis,
# contains the patch level
releaseBeta :: cis,
# contains the beta release tag
configuration :: cis,
# Parameters given at configuration time
installPrefix :: cis
# Staring location of libraries, header files, etc.
# labeledURL :: cis,
# Specifies the URL to connect to the software,
# this should be described through a daemon
}
#-------------------------------------------------------
GlobusDaemon OBJECT CLASS
# General remark:
# A GlobusDaemon stores information related to daemons running
# on a system
# Examples for a daemon are gatekeeper, HBM datacollector, ...
SUBCLASS OF GlobusSoftware
RDN = da (daemon)
CHILD OF {
hostname;
GlobusRoot
}
MAY CONTAIN {
hostname :: cis,
hostnameDN :: dn,
serviceContact :: cis,
# Specifies a tuple of port and the protocol in order to request
# the service
# delivered by the daemon. E.g. (8337 HBM-datacollector)
# (24 telnet)
controlContact :: cis,
# Specifies a tuple of port and the protocol in order to control
# the daemon, e.g. see serviceContact
name :: cis,
# specifies what function or type this daemon is, e.g. HBM
# datacollector
owner :: dn,
# specifies an administrator for bug notification
developerContact :: email,
# specifies a contact to the developer of this daemon, e.g.
# bugs@globus.org
parameter :: cis
# specifies a tuple of the forme attribute value in order to
# set specific values necessary to configure the daemon.
# This is only important if schema checking is set to true.
# If schema checking is set to false the attributes and values
# can be stored directly into the object. Using the parameter
# attribute is prefered.
# E.g. parameter: updateInterval 10
}