Storage Resource Object

The storageDefinitionList attribute is made up of 1 or more storageDefinition objects. Each storageDefinition describes properties for interacting with one storage capability the resource provides. All resources in the SGCI Resource Catalog are assumed to provide storage facilities, and as such, all resource descriptions must include at least one storageDefinition object within the storageDefinitionList attribute.

The storage object is used to describe storage properties of the resource. All resources in the SGCI Resource Catalog are assumed to provide storage facilities, and as such, All resource descriptions must include values for the storage properties.

type

object

properties

  • storageType

High-level category to which this storage resource belongs. Determines additional properties that can be provided.

type

string

enum

POSIX, S3, IRODS

  • connections

The connection objects indicate available methods for accessing the resource.

type

array

items

#/definitions/connectionDefinition

minItems

1

  • fileSystems

The fileSystem objects containing information about the paths available on the storage resource.

type

array

items

#/definitions/fileSystemDefinition

  • defaultQuota

The defaultQuota object includes quota information about the available storage per

type

object

properties

  • bytesPerUser

type

integer

Connection Object / connectionDefinition

The connection object defines all parameters required to establish a connection with the resource

type

object

properties

  • connectionProtocol

Communication protocol required to establish a connection with the resource

type

string

enum

SSH, GLOBUS, HTTP, HTTPS, SFTP, SCP, IRODS

  • securityProtocol

Cryptographic or access protocol enabled to access the resource

type

string

enum

PASSWORDS, SSHKEYS, APIKEYS, X509, OAUTH2

  • host

Communication endpoint host (if omitted, the top level host of this resource is used)

#/definitions/hostName

  • port

Communication endpoint port

type

integer

  • proxyHost

The ProxyHost object includes details required to connect to the proxy tunneling

#/definitions/hostName

  • proxyPort

Communication endpoint required by the proxy

type

integer

File System Object / fileSystemDefinition

The fileSystem object contains information about the paths available on the storage resource.

type

object

properties

  • mountDir

The path on the resource where the fileSystem is mounted.

#/definitions/dirPath

  • homeDir

The path on the resource serving as the base for user specific home directories.

#/definitions/dirPath

  • scratchDir

The path on the resource serving as the base for the SCRATCH file system, typically non-shared storage where running jobs should direct their I/O while executing.

#/definitions/dirPath

  • workDir

The path on the resource serving as the base for the WORK file system, typically shared storage where files are staged before being copied to SCRATCH.

#/definitions/dirPath

  • capacity

The capacity object describes the total available storage on the fileSystem.

type

object

properties

  • totalBytes

The total bytes of storage available on the fileSystem.

type

integer

Directory Path Object / dirPath

the general form of the name of a file or directory, it specifies a unique location in the file system

type

string

maxLength

1024

minLength

1

Examples

SCIGAP Development Storage

{
    "schemaVersion": "1.0.0",
    "name": "SCIGAP Development Storage",
    "host": "pgadev.scigap.org",
    "description": "POSIX storage server for the SCIGAP development environment.",
    "storageResources": [{
      "storageType": "POSIX",
      "connections": [{
          "connectionProtocol": "SSH",
          "securityProtocol": "SSHKEYS",
          "port": 22
    }],
      "fileSystems":
        [{
          "rootDir": "/"
        }]
    }]
}