Gold Allocation Manager

Interfaces

Gold provides a variety of means of interaction, including command-line interfaces, graphical user interfaces, application programming interfaces, and communication protocols.

Command Line Clients

The command-line clients provided feature rich argument sets and built-in documentation. These commands allow scripting and are the preferred way to interact with Gold for basic usage and administration. Use the --help option for usage information or the --man option for a manual page on any command.

Example 1. Listing Users

glsuser

Interactive Control Program

The goldsh command uses a control language to issue object-oriented requests to the server and display the results. The commands may be included directly as command-line arguments or read from stdin. Use the "ShowUsage:=True" option after a valid Object Action combination for usage information on the command.

Example 2. Listing Users

goldsh User Query

caution The goldsh control program allows you to make powerful and sweeping modifications to Gold objects. Do not use this command unless you understand the syntax and the potential for unintended results.

Web-based Graphical User Interface

A powerful and easy-to-use web-based GUI is being developed for use by users, managers, and administrators. It sports two interface types:

  • Management Interface — The management interface supports an interface that makes administration and interaction very safe and easy. It approaches things from a functional standpoint, aggregating results and protecting against accidental modifications.

  • Object Interface — The object interface exposes you to the full power of the actions the server can perform on the objects. This interface allows actions to be performed on many objects in a single command and can impose arbitrary field conditions, field updates, and field selections to the query.

Example 3. Listing Users

Click on "Manage Users" -> "List Users"

Perl API

You can access the full Gold functionality via the Perl API. Use perldoc to obtain usage information for the Perl Gold modules.

Example 4. Listing Users

use Gold;

my $request = new Gold::Request(object => "User", action => "Query");
my $response = $request->getResponse();
foreach my $datum ($response->getData())
{
  print $datum->toString(), "\n";
}

SSSRMAP Wire Protocol

It is also possible to interact with Gold by directly using the SSSRMAP Wire Protocol and Message Format over the network. Documentation for these protocols can be found at SSS Resource Management and Accounting Documentation.

Example 5. Listing Users

POST /SSSRMAP HTTP/1.1
Content-Type: text/xml; charset="utf-8"
Transfer-Encoding: chunked

190
<?xml version="1.0" encoding="UTF-8"?>
<Envelope>
  <Body actor="scottmo" chunking="True">
    <Request action="Query" object="User"></Request>
  </Body>
  <Signature>
    <DigestValue>azu4obZswzBt89OgATukBeLyt6Y=</DigestValue>
    <SignatureValue>YXE/C08XX3RX4PMU1bWju+5/E5M=</SignatureValue>
    <SecurityToken type="Symmetric" name="scottmo"></SecurityToken>
  </Signature>
</Envelope>
0