Skip to content
This repository was archived by the owner on Mar 29, 2022. It is now read-only.

Latest commit

 

History

History
118 lines (95 loc) · 3.65 KB

03.create_app_01.md

File metadata and controls

118 lines (95 loc) · 3.65 KB
layout title tagline
page
Create a Custom Application
Set up your environment

To create and ultimately deploy Agave apps for you and others to use, GitLab and Docker Hub credentials are required. The GitLab credentials will facilitate interactions with other SD2E GitLab assets, and provide a convenient way to store your app bundle. The Docker Hub credentials are required to store an image of your executable somewhere that is accessible from multiple platforms. The SD2E CLI offers a few tools to help authenticate with and manage credentials for these resources.


#### Agave authentication

If you have been following along with previous sections of this user guide, you are likely already set up to interact with the SD2E Agave tenant. Use the auth-check command to confirm:

% auth-check
tenant: sd2e
username: username
time left: 13179 seconds
expires at: Wed Apr 25 19:38:44 CDT 2018

If you are not already authenticated with the SD2E tenant, please refer to this previous section of the user guide.


#### Configure the developmental SD2E CLI

At this time, the commands to facilitate app building are not part of the master branch of the SD2E CLI. To download the appropriate development branch and put the new commands in your PATH, perform the following:

% wget https://github.com/SD2E/sd2e-cli/raw/ci/sd2e-cloud-cli.tgz
% tar -xvzf sd2e-cloud-cli.tgz
% export PATH=$PWD/sd2e-cloud-cli/bin:$PATH

Check the version of the CLI that is in your PATH with the following:

% sd2e info

DARPA SD2E version: 1.1.0
TACC Cloud API tenant: sd2e.org
TACC Cloud API versions:
        Science APIs: 2.2.5
        Reactors API: dev
        TACC Accounting API: v1

#### Authenticate with the SD2E GitLab

In this developmental SD2E CLI, a new tacclab command is present to manage authentication with the SD2E GitLab. To login, perform the following:

% tacclab login                  
Gitlab username []: username                                
Gitlab password:                                                
Log into TACC.cloud Gitlab:                                     
[NOTE] Gitlab token for sd2e:username stored                      
6fa807b8a99c5e45142a83de48239814217b4f9d30379db39edd6dd3d6d0

Enter the credentials you use to login to the SD2E GitLab, which are likely your TACC credentials. The command above will store a token in ~/.agave/gitlab. Confirm the operation worked by listing the available projects:

% tacclab projects list
Projects
========
sd2program/agave-ci-support
sd2program/agave-cli
sd2program/apply-recursive-pems-reactor
sd2program/app_rnaseq_broad
... etc.

Issuing 'tacclab help' will reveal additional commands.


#### Authenticate with Docker Hub

Similar to the above, a new taccreg command was designed to manage authentication with your preferred Docker Hub. Here, enter your personal Docker Hub credentials, and, if you have access, you may optionally enter the name of the main SD2E Docker Hub organization (if you do not enter an organization, Docker images will be pushed to your personal Docker Hub page):

% taccreg login
[NOTE] Log into Docker Registry:
Registry username []: username
Registry password []:
Registry organization (optional) []:
Authenticating as username...
Login Succeeded

The authentication token is stored in ~/.agave/registry. More usage options can be found with 'taccreg help'.


Proceed to Initiate the App Directory

Go back to Create Custom Applications

Return to the API Documentation Overview