Interact with Systems

A Tapis system is a server or collection of servers associated with a single hostname. They may be public or private, and they may either be storage systems (used for storing files) or execution systems (used for running jobs).

On some tenants, users are provided private storage and execution systems attached to TACC resources. If you would like to create your own systems, skip ahead to Create a Private System.

Warning

The tacc.prod tenant likely does not contain default systems for your username. Skip ahead to Create a Private System before working through this guide.

Find Systems

Systems can be discovered using the tapis systems list command:

On this tenant, the user taccuser sees numerous storage and execution systems. All systems are either public or private (with varying degrees of privacy), each of which are shown here.

On tenants with many more systems, it may be useful to narrow the list with the tapis systems search command. For example, to discover systems only owned by you:

$ tapis systems search --owner eq taccuser
+-------------------------+----------------------------------------+-----------+---------+
| id                      | name                                   | type      | default |
+-------------------------+----------------------------------------+-----------+---------+
| tacc.stampede2.taccuser | Execution system for TACC Stampede2    | EXECUTION | False   |
| tacc.work.taccuser      | Storage system for TACC work directory | STORAGE   | False   |
+-------------------------+----------------------------------------+-----------+---------+

Other useful searches might include:

$ tapis systems search --owner neq taccuser    # systems you don't own
$ tapis systems search --public eq true          # only public systems
$ tapis systems search --public eq false         # only private systems
$ tapis systems search --type eq EXECUTION       # only execution systems
$ tapis systems search --type eq STORAGE         # only storage systems
$ tapis systems search --default eq true         # your default system

You can also chain multiple search parameters. For example, to display only private storage systems:

$ tapis systems search --type eq STORAGE --public eq false
+--------------------+----------------------------------------+---------+---------+
| id                 | name                                   | type    | default |
+--------------------+----------------------------------------+---------+---------+
| tacc.work.taccuser | Storage system for TACC work directory | STORAGE | False   |
+--------------------+----------------------------------------+---------+---------+

Note

Don’t forget to replace instances of taccuser with your actual username on the tenant

Discover System Hostname and Default Paths

To see additional system information, including hostname, root folder locations, and availability, use the tapis systems show command with a system ID. For example, find out more information about your personal storage system as follows:

$ tapis systems show -f json tacc.work.taccuser
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
{
  "id": "tacc.work.taccuser",
  "name": "Storage system for the TACC WORK directory",
  "type": "STORAGE",
  "default": false,
  "available": true,
  "description": "Storage system for the TACC WORK directory via Stampede2",
  "environment": null,
  "executionType": null,
  "globalDefault": false,
  "lastModified": "7 hours ago",
  "login": null,
  "maxSystemJobs": null,
  "maxSystemJobsPerUser": null,
  "owner": "taccuser",
  "public": false,
  "queues": null,
  "revision": 1,
  "scheduler": null,
  "scratchDir": null,
  "site": null,
  "status": "UP",
  "storage": {
    "proxy": null,
    "protocol": "SFTP",
    "mirror": false,
    "port": 22,
    "auth": {
      "type": "SSHKEYS"
    },
    "publicAppsDir": null,
    "host": "stampede2.tacc.utexas.edu",
    "rootDir": "/work/01234/taccuser",
    "homeDir": "/"
  },
  "uuid": "383424038079107562-242ac112-0001-006",
  "workDir": null
}

The -f json flag was provided to render all information about the system. As described above, this storage system is a gateway to your private storage space on the TACC $WORK filesystem. The rootDir is the virtual root path for operations performed on this system. The highlighted lines emphasize the host and root directory when performing operations against this system.

In addition to standard host and path information, execution systems also contain information about queue types and availability.

Check System Status

It may be useful to check the status (availability) of a system in a scriptable way prior to, e.g., uploading files as part of a pipeline. The following command can be used with extra flags to strip out the useful part of the response:

$ tapis systems show -c status -f value tacc.work.taccuser
UP

Note

Use tapis command subcommand --help to find usage information for each command