Complete INVENTORY Schema
Schema for an SGCI Resource |
||
type |
object |
|
properties |
||
|
Version of the SGCI Resource Descriptions schema used for this description. |
|
type |
string |
|
|
Network addressable name (hostname) serving as a unique identifier for the resource across all SGCI resource descriptions. |
|
|
Human-readable, displayable name for the resource |
|
|
Detailed description of the resource. |
|
type |
string |
|
maxLength |
2048 |
|
|
||
|
||
|
||
|
||
additionalProperties |
False |
resourceName
Human-readable, displayable name for the resource |
|
type |
string |
maxLength |
256 |
minLength |
1 |
hostName
label assigned to identify the device as an internet point of access |
|
type |
string |
maxLength |
256 |
minLength |
1 |
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 |
connectionDefinition
The connection object defines all parameters required to establish a connection with the resource |
||
type |
object |
|
properties |
||
|
Communication protocol required to establish a connection with the resource |
|
type |
string |
|
enum |
SSH, GLOBUS, HTTP, HTTPS, SFTP, SCP, IRODS |
|
|
Cryptographic or access protocol enabled to access the resource |
|
type |
string |
|
enum |
PASSWORDS, SSHKEYS, APIKEYS, X509, OAUTH2 |
|
|
Communication endpoint host (if omitted, the top level host of this resource is used) |
|
|
Communication endpoint port |
|
type |
integer |
|
|
The ProxyHost object includes details required to connect to the proxy tunneling |
|
|
Communication endpoint required by the proxy |
|
type |
integer |
storageDefinitionList
type |
array |
items |
computeDefinitionList
type |
array |
items |
outageDefinitionList
type |
array |
items |
storageDefinition
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 |
|||
|
High-level category to which this storage resource belongs. Determines additional properties that can be provided. |
||
type |
string |
||
enum |
POSIX, S3, IRODS |
||
|
The connection objects indicate available methods for accessing the resource. |
||
type |
array |
||
items |
|||
minItems |
1 |
||
|
The fileSystem objects containing information about the paths available on the storage resource. |
||
type |
array |
||
items |
|||
|
The defaultQuota object includes quota information about the available storage per |
||
type |
object |
||
properties |
|||
|
type |
integer |
fileSystemDefinition
The fileSystem object contains information about the paths available on the storage resource. |
|||
type |
object |
||
properties |
|||
|
The path on the resource where the fileSystem is mounted. |
||
|
The path on the resource serving as the base for user specific home directories. |
||
|
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. |
||
|
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. |
||
|
The capacity object describes the total available storage on the fileSystem. |
||
type |
object |
||
properties |
|||
|
The total bytes of storage available on the fileSystem. |
||
type |
integer |
computeDefinition
The Compute Resource Object is used to describe computational properties of the resource. Not all resources in the SGCI Resource Catalog are assumed to provide compute facilities. |
||
type |
object |
|
properties |
||
|
Job scheduler configured on the resource |
|
type |
string |
|
enum |
FORK, BATCH |
|
|
The connection objects indicate available methods for accessing the resource. |
|
type |
array |
|
items |
||
minItems |
1 |
|
|
This list defines all the commands required to execute any command on the resource |
|
type |
array |
|
items |
||
|
The batchSystem object lists all parameters required by the batch scheduler system |
|
|
The forkSystem object lists all parameters required by the fork scheduler system |
|
executionCommandDefinition
The execution Command Object describes how a commnad should be executed on the resource |
|||
type |
object |
||
properties |
|||
|
label that describe the type of command supported by the resource |
||
type |
string |
||
examples |
serial |
||
mpi |
|||
openmp |
|||
ccm |
|||
|
command to be preappend to the command in order to be executed as the commandType, e.g mpi->mpirun |
||
type |
string |
||
examples |
ibrun |
||
mpirun |
|||
|
list of modules to be loaded before execution of the command |
||
type |
array |
||
items |
type |
string |
batchSystemDefinition
type |
object |
|
properties |
||
|
Job scheduler software installed on the resource no handle job requests |
|
type |
string |
|
enum |
SLURM, SGE, PBS, PBSPRO, TORQUE, LOADLEVELER, LSF |
|
|
Hostname of the job manager |
|
|
List of commands supported by the Batch System |
|
type |
array |
|
items |
||
|
List of public partitions and queues installed on the Batch System |
|
type |
array |
|
items |
commandPathDefinition
type |
object |
|
properties |
||
|
Label that defines the operation supported by the system |
|
type |
string |
|
examples |
SUBMISSION |
|
JOB_MONITORING |
||
DELETION |
||
CHECK_JOB |
||
SHOW_QUEUE |
||
SHOW_RESERVATION |
||
SHOW_START |
||
|
Complete path to the command that executes the operation |
|
type |
string |
partitionDefinition
type |
object |
||
properties |
|||
|
This label represents a partition of hardware for the resource, typically a queue or partition in the job scheduler |
||
type |
string |
||
examples |
normal |
||
large-mem |
|||
|
Arguments required to request this partition of hardware (if omitted, ‘-p PARTITION_NAME’ or ‘-q PARTITION_NAME’ is used, depending on the job scheduler) |
||
type |
array |
||
examples |
–nodes=1 |
||
–partition=hugemem |
|||
–exclusive |
|||
–constraint=40core |
|||
items |
type |
string |
|
|
Number of available nodes on this partition / queue |
||
type |
integer |
||
|
The nodeHardware object includes detailed information of the node |
||
|
queues or partition may have multiple restriction on the jobs allowed to run |
||
type |
object |
||
properties |
|||
|
Minimum number of allowed jobs actively running on the partition |
||
type |
integer |
||
|
Maximum number of allowed jobs actively running on the partition |
||
type |
integer |
||
|
Minimum number of allowed jobs actively running on the partition for a user |
||
type |
integer |
||
|
Maximum number of allowed jobs actively running on the partition for a user |
||
type |
integer |
||
|
Minimum number of nodes allowed to be used by a job |
||
type |
integer |
||
|
Maximum number of nodes allowed to be used by a job |
||
type |
integer |
||
|
Minimum time a job can run without been killed |
||
type |
integer |
||
|
Maximum time a job can run without been killed |
||
type |
integer |
||
|
Minimum memory allocated for a job |
||
type |
string |
||
|
Maximum memory allocated for a job |
||
type |
string |
||
|
Minimum number of cpus allowed to be used by a job |
||
type |
integer |
||
|
Maximum number of cpus allowed to be used by a job |
||
type |
integer |
||
|
Minimum number of gpus allowed to be used by a job |
||
type |
integer |
||
|
Maximum number of gpus allowed to be used by a job |
||
type |
integer |
||
|
Minimum number of cpus allowed to be requested for a node |
||
type |
integer |
||
|
Maximum number of cpus allowed to be requested for a node |
||
type |
integer |
forkSystemDefinition
type |
object |
|
properties |
||
|
OS installed on the resource |
|
type |
string |
|
enum |
LINUX, WINDOWS |
|
|
Version of OS installed on the resource |
|
type |
string |
|
|
NodeHardware object contains details about the software installed on the resource |
|
nodeHardwareDefinition
type |
object |
|
properties |
||
|
Type of cpus installed on the resource |
|
type |
string |
|
examples |
Haswell CPUs @ 2.60GHz |
|
Intel Xeon-E5 |
||
|
Total number of cpus available on the resource |
|
type |
integer |
|
|
Type of gpus installed on the resource |
|
type |
string |
|
examples |
NVIDIA Tesla P100 |
|
NVIDIA Tesla M2090 |
||
|
Total number of gpus available on the resource |
|
type |
integer |
|
|
Type of memory installed on the resource |
|
type |
string |
|
|
Total memory available on the resource |
|
type |
string |
|
examples |
64 GB |
statusDefinition
type |
object |
|
properties |
||
|
Descriptive current resource status |
|
type |
string |
|
enum |
Pre-production, Production, Post-production |
|
|
When the resource starts the current status |
|
type |
string |
|
format |
date |
|
|
When the resource ends the current status |
|
type |
string |
|
format |
date |
outageDefinition
type |
object |
|
properties |
||
|
It the outage full or partial |
|
type |
string |
|
enum |
Partial, Full |
|
|
Outage descriptive name |
|
type |
string |
|
maxLength |
128 |
|
minLength |
1 |
|
|
Outage description |
|
type |
string |
|
maxLength |
4096 |
|
minLength |
1 |
|
|
Outage details URL |
|
type |
string |
|
format |
uri |
|
|
Starting date and time in UTC and ISO 8601 format |
|
type |
string |
|
format |
date-time |
|
|
Ending date and time in UTC and ISO 8601 format |
|
type |
string |
|
format |
date-time |