Skip to content

Commit

Permalink
TAPIS v3 update to README
Browse files Browse the repository at this point in the history
  • Loading branch information
kks32 committed Oct 1, 2024
1 parent 7d72ca2 commit 8f1f69e
Show file tree
Hide file tree
Showing 7 changed files with 116 additions and 378 deletions.
8 changes: 2 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE.md)
[![Docs](https://img.shields.io/badge/view-docs-8A2BE2?color=8A2BE2)](https://designsafe-ci.github.io/dapi/dapi/index.html)

`dapi` is a library that simplifies the process of submitting, running, and monitoring [TAPIS v2 / AgavePy](https://agavepy.readthedocs.io/en/latest/index.html) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).
`dapi` is a library that simplifies the process of submitting, running, and monitoring [TAPIS v3](https://tapis.readthedocs.io/en/latest/) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).

## Features

### Jobs

* Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.
* Get TAPIS v3 templates for jobs: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.

* Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.

Expand Down Expand Up @@ -131,10 +131,6 @@ To run the unit test
poetry run pytest -v
```

## Known Issues

The project only works on `Python 3.9` due to AgavePy Issue [#125](https://github.com/TACC/agavepy/issues/125).


## License

Expand Down
27 changes: 24 additions & 3 deletions dapi/__init__.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,34 @@
"""
`dapi` is a library that simplifies the process of submitting, running, and monitoring [TAPIS v2 / AgavePy](https://agavepy.readthedocs.io/en/latest/index.html) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).
dapi` is a library that simplifies the process of submitting, running, and monitoring [TAPIS v3](https://tapis.readthedocs.io/en/latest/) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).
## Features
* Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.
### Jobs
* Get TAPIS v3 templates for jobs: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.
* Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.
### Database
Connects to SQL databases on DesignSafe:
| Database | dbname | env_prefix |
|----------|--------|------------|
| NGL | `ngl`| `NGL_` |
| Earthake Recovery | `eq` | `EQ_` |
| Vp | `vp` | `VP_` |
Define the following environment variables:
```
{env_prefix}DB_USER
{env_prefix}DB_PASSWORD
{env_prefix}DB_HOST
{env_prefix}DB_PORT
```
For e.g., to add the environment variable `NGL_DB_USER` edit `~/.bashrc`, `~/.zshrc`, or a similar shell-specific configuration file for the current user and add `export NGL_DB_USER="dspublic"`.
## Installation
```shell
Expand Down
4 changes: 2 additions & 2 deletions dapi/jobs/__init__.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
"""
`dapi` job submodule simplifies the process of submitting, running, and monitoring [TAPIS v2 / AgavePy](https://agavepy.readthedocs.io/en/latest/index.html) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).
`dapi` job submodule simplifies the process of submitting, running, and monitoring [Tapis v3](https://tapis.readthedocs.io/en/latest/) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).
## Features
* Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.
* Simplified TAPIS v3 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.
* Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.
Expand Down
103 changes: 83 additions & 20 deletions docs/dapi.html
Original file line number Diff line number Diff line change
Expand Up @@ -49,15 +49,57 @@ <h2>Submodules</h2>
<h1 class="modulename">
dapi </h1>

<div class="docstring"><p><code><a href="">dapi</a></code> is a library that simplifies the process of submitting, running, and monitoring <a href="https://agavepy.readthedocs.io/en/latest/index.html">TAPIS v2 / AgavePy</a> jobs on <a href="https://designsafe-ci.org">DesignSafe</a> via <a href="https://jupyter.designsafe-ci.org">Jupyter Notebooks</a>.</p>
<div class="docstring"><p>dapi` is a library that simplifies the process of submitting, running, and monitoring <a href="https://tapis.readthedocs.io/en/latest/">TAPIS v3</a> jobs on <a href="https://designsafe-ci.org">DesignSafe</a> via <a href="https://jupyter.designsafe-ci.org">Jupyter Notebooks</a>.</p>

<h2 id="features">Features</h2>

<h3 id="jobs">Jobs</h3>

<ul>
<li><p>Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. <code><a href="">dapi</a></code> abstracts away the complexities.</p></li>
<li><p>Get TAPIS v3 templates for jobs: No need to fiddle with complex API requests. <code><a href="">dapi</a></code> abstracts away the complexities.</p></li>
<li><p>Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.</p></li>
</ul>

<h3 id="database">Database</h3>

<p>Connects to SQL databases on DesignSafe:</p>

<table>
<thead>
<tr>
<th>Database</th>
<th>dbname</th>
<th>env_prefix</th>
</tr>
</thead>
<tbody>
<tr>
<td>NGL</td>
<td><code>ngl</code>| <code>NGL_</code></td>
</tr>
<tr>
<td>Earthake Recovery</td>
<td><code>eq</code></td>
<td><code>EQ_</code></td>
</tr>
<tr>
<td>Vp</td>
<td><code>vp</code></td>
<td><code>VP_</code></td>
</tr>
</tbody>
</table>

<p>Define the following environment variables:</p>

<pre><code>{env_prefix}DB_USER
{env_prefix}DB_PASSWORD
{env_prefix}DB_HOST
{env_prefix}DB_PORT
</code></pre>

<p>For e.g., to add the environment variable <code>NGL_DB_USER</code> edit <code>~/.bashrc</code>, <code>~/.zshrc</code>, or a similar shell-specific configuration file for the current user and add <code>export NGL_DB_USER="dspublic"</code>.</p>

<h2 id="installation">Installation</h2>

<div class="pdoc-code codehilite">
Expand All @@ -71,25 +113,46 @@ <h2 id="installation">Installation</h2>
<label class="view-source-button" for="mod-dapi-view-source"><span>View Source</span></label>

<div class="pdoc-code codehilite"><pre><span></span><span id="L-1"><a href="#L-1"><span class="linenos"> 1</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-2"><a href="#L-2"><span class="linenos"> 2</span></a><span class="sd">`dapi` is a library that simplifies the process of submitting, running, and monitoring [TAPIS v2 / AgavePy](https://agavepy.readthedocs.io/en/latest/index.html) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).</span>
</span><span id="L-2"><a href="#L-2"><span class="linenos"> 2</span></a><span class="sd">dapi` is a library that simplifies the process of submitting, running, and monitoring [TAPIS v3](https://tapis.readthedocs.io/en/latest/) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).</span>
</span><span id="L-3"><a href="#L-3"><span class="linenos"> 3</span></a>
</span><span id="L-4"><a href="#L-4"><span class="linenos"> 4</span></a>
</span><span id="L-5"><a href="#L-5"><span class="linenos"> 5</span></a><span class="sd">## Features</span>
</span><span id="L-6"><a href="#L-6"><span class="linenos"> 6</span></a>
</span><span id="L-7"><a href="#L-7"><span class="linenos"> 7</span></a><span class="sd">* Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.</span>
</span><span id="L-8"><a href="#L-8"><span class="linenos"> 8</span></a>
</span><span id="L-9"><a href="#L-9"><span class="linenos"> 9</span></a><span class="sd">* Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.</span>
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a>
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a><span class="sd">## Installation</span>
</span><span id="L-12"><a href="#L-12"><span class="linenos">12</span></a>
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a><span class="sd">```shell</span>
</span><span id="L-14"><a href="#L-14"><span class="linenos">14</span></a><span class="sd">pip3 install dapi</span>
</span><span id="L-15"><a href="#L-15"><span class="linenos">15</span></a><span class="sd">```</span>
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a>
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-18"><a href="#L-18"><span class="linenos">18</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">auth</span>
</span><span id="L-19"><a href="#L-19"><span class="linenos">19</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">db</span>
</span><span id="L-20"><a href="#L-20"><span class="linenos">20</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">jobs</span>
</span><span id="L-4"><a href="#L-4"><span class="linenos"> 4</span></a><span class="sd">## Features</span>
</span><span id="L-5"><a href="#L-5"><span class="linenos"> 5</span></a>
</span><span id="L-6"><a href="#L-6"><span class="linenos"> 6</span></a><span class="sd">### Jobs</span>
</span><span id="L-7"><a href="#L-7"><span class="linenos"> 7</span></a>
</span><span id="L-8"><a href="#L-8"><span class="linenos"> 8</span></a><span class="sd">* Get TAPIS v3 templates for jobs: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.</span>
</span><span id="L-9"><a href="#L-9"><span class="linenos"> 9</span></a>
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a><span class="sd">* Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.</span>
</span><span id="L-11"><a href="#L-11"><span class="linenos">11</span></a>
</span><span id="L-12"><a href="#L-12"><span class="linenos">12</span></a><span class="sd">### Database</span>
</span><span id="L-13"><a href="#L-13"><span class="linenos">13</span></a>
</span><span id="L-14"><a href="#L-14"><span class="linenos">14</span></a><span class="sd">Connects to SQL databases on DesignSafe:</span>
</span><span id="L-15"><a href="#L-15"><span class="linenos">15</span></a>
</span><span id="L-16"><a href="#L-16"><span class="linenos">16</span></a><span class="sd">| Database | dbname | env_prefix |</span>
</span><span id="L-17"><a href="#L-17"><span class="linenos">17</span></a><span class="sd">|----------|--------|------------|</span>
</span><span id="L-18"><a href="#L-18"><span class="linenos">18</span></a><span class="sd">| NGL | `ngl`| `NGL_` |</span>
</span><span id="L-19"><a href="#L-19"><span class="linenos">19</span></a><span class="sd">| Earthake Recovery | `eq` | `EQ_` |</span>
</span><span id="L-20"><a href="#L-20"><span class="linenos">20</span></a><span class="sd">| Vp | `vp` | `VP_` |</span>
</span><span id="L-21"><a href="#L-21"><span class="linenos">21</span></a>
</span><span id="L-22"><a href="#L-22"><span class="linenos">22</span></a><span class="sd">Define the following environment variables:</span>
</span><span id="L-23"><a href="#L-23"><span class="linenos">23</span></a><span class="sd">```</span>
</span><span id="L-24"><a href="#L-24"><span class="linenos">24</span></a><span class="sd">{env_prefix}DB_USER</span>
</span><span id="L-25"><a href="#L-25"><span class="linenos">25</span></a><span class="sd">{env_prefix}DB_PASSWORD</span>
</span><span id="L-26"><a href="#L-26"><span class="linenos">26</span></a><span class="sd">{env_prefix}DB_HOST</span>
</span><span id="L-27"><a href="#L-27"><span class="linenos">27</span></a><span class="sd">{env_prefix}DB_PORT</span>
</span><span id="L-28"><a href="#L-28"><span class="linenos">28</span></a><span class="sd">```</span>
</span><span id="L-29"><a href="#L-29"><span class="linenos">29</span></a>
</span><span id="L-30"><a href="#L-30"><span class="linenos">30</span></a><span class="sd">For e.g., to add the environment variable `NGL_DB_USER` edit `~/.bashrc`, `~/.zshrc`, or a similar shell-specific configuration file for the current user and add `export NGL_DB_USER=&quot;dspublic&quot;`.</span>
</span><span id="L-31"><a href="#L-31"><span class="linenos">31</span></a>
</span><span id="L-32"><a href="#L-32"><span class="linenos">32</span></a><span class="sd">## Installation</span>
</span><span id="L-33"><a href="#L-33"><span class="linenos">33</span></a>
</span><span id="L-34"><a href="#L-34"><span class="linenos">34</span></a><span class="sd">```shell</span>
</span><span id="L-35"><a href="#L-35"><span class="linenos">35</span></a><span class="sd">pip3 install dapi</span>
</span><span id="L-36"><a href="#L-36"><span class="linenos">36</span></a><span class="sd">```</span>
</span><span id="L-37"><a href="#L-37"><span class="linenos">37</span></a>
</span><span id="L-38"><a href="#L-38"><span class="linenos">38</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-39"><a href="#L-39"><span class="linenos">39</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">auth</span>
</span><span id="L-40"><a href="#L-40"><span class="linenos">40</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">db</span>
</span><span id="L-41"><a href="#L-41"><span class="linenos">41</span></a><span class="kn">from</span> <span class="nn">.</span> <span class="kn">import</span> <span class="n">jobs</span>
</span></pre></div>


Expand Down
8 changes: 4 additions & 4 deletions docs/dapi/jobs.html
Original file line number Diff line number Diff line change
Expand Up @@ -53,12 +53,12 @@ <h2>Submodules</h2>
<h1 class="modulename">
<a href="./../dapi.html">dapi</a><wbr>.jobs </h1>

<div class="docstring"><p><code><a href="../dapi.html">dapi</a></code> job submodule simplifies the process of submitting, running, and monitoring <a href="https://agavepy.readthedocs.io/en/latest/index.html">TAPIS v2 / AgavePy</a> jobs on <a href="https://designsafe-ci.org">DesignSafe</a> via <a href="https://jupyter.designsafe-ci.org">Jupyter Notebooks</a>.</p>
<div class="docstring"><p><code><a href="../dapi.html">dapi</a></code> job submodule simplifies the process of submitting, running, and monitoring <a href="https://tapis.readthedocs.io/en/latest/">Tapis v3</a> jobs on <a href="https://designsafe-ci.org">DesignSafe</a> via <a href="https://jupyter.designsafe-ci.org">Jupyter Notebooks</a>.</p>

<h2 id="features">Features</h2>

<ul>
<li><p>Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. <code><a href="../dapi.html">dapi</a></code> abstracts away the complexities.</p></li>
<li><p>Simplified TAPIS v3 Calls: No need to fiddle with complex API requests. <code><a href="../dapi.html">dapi</a></code> abstracts away the complexities.</p></li>
<li><p>Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.</p></li>
</ul>

Expand All @@ -75,12 +75,12 @@ <h2 id="installation">Installation</h2>
<label class="view-source-button" for="mod-jobs-view-source"><span>View Source</span></label>

<div class="pdoc-code codehilite"><pre><span></span><span id="L-1"><a href="#L-1"><span class="linenos"> 1</span></a><span class="sd">&quot;&quot;&quot;</span>
</span><span id="L-2"><a href="#L-2"><span class="linenos"> 2</span></a><span class="sd">`dapi` job submodule simplifies the process of submitting, running, and monitoring [TAPIS v2 / AgavePy](https://agavepy.readthedocs.io/en/latest/index.html) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).</span>
</span><span id="L-2"><a href="#L-2"><span class="linenos"> 2</span></a><span class="sd">`dapi` job submodule simplifies the process of submitting, running, and monitoring [Tapis v3](https://tapis.readthedocs.io/en/latest/) jobs on [DesignSafe](https://designsafe-ci.org) via [Jupyter Notebooks](https://jupyter.designsafe-ci.org).</span>
</span><span id="L-3"><a href="#L-3"><span class="linenos"> 3</span></a>
</span><span id="L-4"><a href="#L-4"><span class="linenos"> 4</span></a>
</span><span id="L-5"><a href="#L-5"><span class="linenos"> 5</span></a><span class="sd">## Features</span>
</span><span id="L-6"><a href="#L-6"><span class="linenos"> 6</span></a>
</span><span id="L-7"><a href="#L-7"><span class="linenos"> 7</span></a><span class="sd">* Simplified TAPIS v2 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.</span>
</span><span id="L-7"><a href="#L-7"><span class="linenos"> 7</span></a><span class="sd">* Simplified TAPIS v3 Calls: No need to fiddle with complex API requests. `dapi` abstracts away the complexities.</span>
</span><span id="L-8"><a href="#L-8"><span class="linenos"> 8</span></a>
</span><span id="L-9"><a href="#L-9"><span class="linenos"> 9</span></a><span class="sd">* Seamless Integration with DesignSafe Jupyter Notebooks: Launch DesignSafe applications directly from the Jupyter environment.</span>
</span><span id="L-10"><a href="#L-10"><span class="linenos">10</span></a>
Expand Down
2 changes: 1 addition & 1 deletion docs/search.js

Large diffs are not rendered by default.

Loading

0 comments on commit 8f1f69e

Please sign in to comment.