Admin Tutorial Hands on: Create an Application with Advance Input Components

Getting Access
  1. Log into TestDrive Portal

  2. First, you'll need a user account. Create an account using your existing institutional login through CILogon.

  3. After you've logged in, an administrator will grant you access to create the test application DetectCovid.

  4. When you log in for the first time you will be in the 'Workspace'. Switch to 'Settings'

  5. 'Settings' is the admin space of the gateway. Here the first is "Application Catalog"
    NOTE: the purpose of this hands on is to demonstrate some of the advance application input options available in the gateway.

Screenshot Image: Application Catalog

Create New Application "DetectCovid"
  1. Application Catalog is where all the available applications are listed as well as the option to create new.

  2. Use New Application+ to create new application.

  3. In the 'Details' tab provide the name, version and description.
    • Application Name: DetectCovd-Peter
    • Application Version: V1.0
    • Application Description: Test tutorial application to detect Covid spread

  4. For Application Name provide DetectCovid-<your name>. Appending your name will allow you to distinguish your version of DetectCovid from other users.
    e.g. DetectCovid-Peter

    Screenshot Image: Application Details Tab

  5. Upon saving the Details users can add Interface and Deployment of the application in respective tabs.

Add Application Interfaces
  1. Click on the Interface tab.

  2. Click button, Add application input.

  3. Add the first Application Input

    • Name: Vaccination Status
    • Type: String
    • Initial Value: Yes
    • Application Argument: -v
    • User Friendly Description: Add your Vaccintion Status
    • Required on Command Line: True
    • Required: True
    • Read Only: False
  4. Add the second Application Input

    • Name: Symptoms
    • Type: String
    • Initial Value: a
    • Application Argument: -s
    • User Friendly Description: Select all your symptoms
    • Required on Command Line: True
    • Required: True
    • Read Only: False
    • Advanced Input Field Modification Metadata:

{
    "editor": {
        "ui-component-id": "checkbox-input-editor",
        "config": {
            "options": [
                {
                    "value": "a",
                    "text": "Cough"
                },
                {
                    "value": "b",
                    "text": "Fever"
                },
                {
                    "value": "c",
                    "text": "Shortness of Breath"
                },
                {
                    "value": "d",
                    "text": "Loss of Smell"
                 }
            ]
        }
    }
}

Screenshot Image:DetectCovid Checkbox Input

  1. Add the third Application Input
    • Name: Last Location
    • Type: String
    • Initial Value: main
    • Application Argument: -l
    • User Friendly Description: Select your last location
    • Required on Command Line: True
    • Required: True
    • Read Only: False
    • Metadata

{
    "editor": {
        "ui-component-id": "radio-button-input-editor",
        "config": {
            "options": [
                {
                    "value": "lobby",
                    "text": "Lobby"
                },
                {
                    "value": "loft",
                    "text": "Loft"
                },
                {
                    "value": "main",
                    "text": "Main"
                }
            ]
        }
    }
}
  1. Add the last Application Input
    • Name: Crowd Size
    • Type: String
    • Initial Value: 50
    • Application Argument: -cd
    • User Friendly Description: Select the crowd size of the location
    • Required on Command Line: True
    • Required: True
    • Read Only: False
    • Metadata

{
    "editor": {
        "ui-component-id": "slider-input-editor",
        "config": {
            "min": 0,
            "max": 200,
            "step": 10,
            "valueFormat": {
                "percentage": false
            },
            "displayFormat": {
                "percentage": false
            }
        }
    }
}
  1. In the interface tab, you can also add any output you explicitly wants to bring back from the remote resource and make available for the gateway users to download, for this tutorial, we will not be adding outputs.
  2. After you added all the above inputs, the experiment creation page would look like below;

Screenshot Image:Create DetectCovid Experiment

Add Application Deployment
  1. The Application Deployment is where we add command to execute the computation in a specific remote computational resource.

  2. Choose Expanse as the compute resource.

  3. For this tutorial, In the Deployment tab, as the executable path add \executable path

  4. Ignore rest of the fields and save.

  5. NOTE: This application is purely to demonstrate the application input options and not to actually submit and run on a resource.

More Details On...
  1. Creating Applications
  2. Advance Input Options