Metadata-Version: 2.1
Name: supadef
Version: 0.0.38
Summary: Official command-line interface for supadef ⚡️
Author-email: Connor McLaughlin <connor@fractall.com>
Project-URL: Homepage, https://github.com/connormcl/supadef_cli
Project-URL: Bug Tracker, https://github.com/connormcl/supadef_cli/issues
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: attrs==22.2.0
Requires-Dist: bleach==6.0.0
Requires-Dist: certifi==2022.12.7
Requires-Dist: charset-normalizer==3.0.1
Requires-Dist: click==8.1.3
Requires-Dist: docutils==0.19
Requires-Dist: exceptiongroup==1.1.0
Requires-Dist: idna==3.4
Requires-Dist: importlib-metadata==6.0.0
Requires-Dist: iniconfig==2.0.0
Requires-Dist: jaraco-classes==3.2.3
Requires-Dist: keyring==23.13.1
Requires-Dist: markdown-it-py==2.1.0
Requires-Dist: mdurl==0.1.2
Requires-Dist: more-itertools==9.0.0
Requires-Dist: packaging==23.0
Requires-Dist: pkginfo==1.9.6
Requires-Dist: pluggy==1.0.0
Requires-Dist: pygments==2.14.0
Requires-Dist: pytest==7.2.1
Requires-Dist: pyyaml==6.0
Requires-Dist: readme-renderer==37.3
Requires-Dist: requests==2.28.2
Requires-Dist: requests-toolbelt==0.10.1
Requires-Dist: rfc3986==2.0.0
Requires-Dist: rich==13.3.1
Requires-Dist: six==1.16.0
Requires-Dist: tabulate==0.9.0
Requires-Dist: termcolor==2.3.0
Requires-Dist: tomli==2.0.1
Requires-Dist: twine==4.0.2
Requires-Dist: typer==0.7.0
Requires-Dist: urllib3==1.26.14
Requires-Dist: webencodings==0.5.1
Requires-Dist: yaspin==3.0.1
Requires-Dist: zipp==3.12.0

# Supadef PyPi Package / CLI

# Overview
The ```supadef``` python package lets you define how your Python functions run in the cloud using decorators like ```@task```.

The ```supadef``` CLI tool allows you to interact with the Supadef platform.
You can use it to manage projects, functions, and deployments. 

[//]: # (You can use it to create, deploy, list, and destroy projects.)

# Commands

<!-- ```bash
supadef login
```
* Log in to the platform with email and password. 
Upon successful login, saves your API Key and account ID to ```~/.supadef/credentials.yml```.
This lets the CLI make authenticated calls on your behalf. -->
```bash
supadef connect
```
* Make a test connection with the platform. Verifies that your auth credentials saved at ```~/.supadef/credentials.yml``` are configured correctly. Returns the email of the authenticated user.
```bash
supadef create [project_name]
```
* Create a new project with the given name in your account.
Project names must be unique across all Supadef projects.
<!-- Must be run from a git repository.  -->
<!-- Adds a new git remote called ```supadef``` to the local repo. -->

```bash
supadef projects
```
* List the projects in your account. Includes information on your project's deployment state.


```bash
supadef push [project_name] [path/to/code_dir]
```
* Push the source code you specify to the cloud. Appropriately configured functions will be available to run on demand in the cloud. Source code directory must be a git repo. Anything in .gitignore will not be uploaded.

```bash
supadef run [project_name] 'your_function' '{ "arg1":  "drums", "arg2": [1, 2, 3, 4] }' [version]
```
* Run a function in the cloud. [version] will soon be optional, or removed, to simplify the interface. Returns a task_id, for use with getting logs.
```bash
supadef logs [project_name] [task_id]
```
* Get the logs for a particular function run.
```bash
supadef set_env [project_name] [~/path/to/.env]
```
* Securely upload an environment file (.env) to your project

<!-- ```bash
supadef deploy [env] [commit]
```
* Deploy your project.
You can set the version, and environment if you want. -->

```bash
supadef destroy [project]
```
* Destroy a project and all resources associated with it.
<!-- ```bash
supadef open [project]
```
* Open your project in the system web browser. -->


# Distribution

PyPI Package: [https://pypi.org/project/supadef/](https://pypi.org/project/supadef/)

Github Repo: https://github.com/supadef/cli

