ellf-cli 3.1.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ellf_cli/__init__.py +0 -0
- ellf_cli/__main__.py +54 -0
- ellf_cli/about.json +19 -0
- ellf_cli/about.py +23 -0
- ellf_cli/appdirs.py +624 -0
- ellf_cli/auth.py +488 -0
- ellf_cli/cli.py +127 -0
- ellf_cli/cloud/__init__.py +0 -0
- ellf_cli/cloud/gcp.py +402 -0
- ellf_cli/cluster_config.py +120 -0
- ellf_cli/commands/__init__.py +61 -0
- ellf_cli/commands/_recipe_file.py +160 -0
- ellf_cli/commands/_recipe_subcommand.py +440 -0
- ellf_cli/commands/_state.py +106 -0
- ellf_cli/commands/actions.py +310 -0
- ellf_cli/commands/agents.py +342 -0
- ellf_cli/commands/assets.py +157 -0
- ellf_cli/commands/clusters.py +518 -0
- ellf_cli/commands/config.py +190 -0
- ellf_cli/commands/datasets.py +166 -0
- ellf_cli/commands/files/__init__.py +7 -0
- ellf_cli/commands/files/cp.py +425 -0
- ellf_cli/commands/files/ls.py +62 -0
- ellf_cli/commands/files/rm.py +58 -0
- ellf_cli/commands/files/rsync.py +269 -0
- ellf_cli/commands/files/stats.py +42 -0
- ellf_cli/commands/general.py +192 -0
- ellf_cli/commands/import_export.py +240 -0
- ellf_cli/commands/infra/__init__.py +9 -0
- ellf_cli/commands/infra/_helpers.py +247 -0
- ellf_cli/commands/infra/deploy.py +275 -0
- ellf_cli/commands/infra/init_values.py +133 -0
- ellf_cli/commands/infra/provision.py +70 -0
- ellf_cli/commands/infra/register.py +89 -0
- ellf_cli/commands/infra/setup.py +37 -0
- ellf_cli/commands/infra/start.py +101 -0
- ellf_cli/commands/infra/terraform.py +192 -0
- ellf_cli/commands/jobs.py +80 -0
- ellf_cli/commands/packages.py +153 -0
- ellf_cli/commands/paths.py +128 -0
- ellf_cli/commands/plans.py +117 -0
- ellf_cli/commands/projects.py +203 -0
- ellf_cli/commands/publish_code.py +433 -0
- ellf_cli/commands/publish_data.py +87 -0
- ellf_cli/commands/recipes.py +440 -0
- ellf_cli/commands/secrets.py +182 -0
- ellf_cli/commands/support.py +272 -0
- ellf_cli/commands/tasks.py +313 -0
- ellf_cli/commands/todos.py +277 -0
- ellf_cli/config.py +119 -0
- ellf_cli/ellf.json +6151 -0
- ellf_cli/errors.py +110 -0
- ellf_cli/helm.py +715 -0
- ellf_cli/key_pair.py +41 -0
- ellf_cli/main.py +6 -0
- ellf_cli/messages.py +229 -0
- ellf_cli/query.py +666 -0
- ellf_cli/recipes_cookiecutter/cookiecutter.json +7 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/.gitignore +14 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/README.md.tmpl +97 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/requirements-dev.in +8 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/requirements.in +1 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/setup.py.tmpl +48 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/tests/__init__.py +0 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/{{cookiecutter.package_name}}/__init__.py +0 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/{{cookiecutter.package_name}}/about.py +8 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/{{cookiecutter.package_name}}/recipes/__init__.py +6 -0
- ellf_cli/recipes_cookiecutter/{{cookiecutter.package_dir}}/{{cookiecutter.package_name}}/recipes/example_task.py +24 -0
- ellf_cli/testing/__init__.py +137 -0
- ellf_cli/ty.py +109 -0
- ellf_cli/ui.py +470 -0
- ellf_cli/url.py +167 -0
- ellf_cli/util.py +181 -0
- ellf_cli-3.1.3.dist-info/METADATA +30 -0
- ellf_cli-3.1.3.dist-info/RECORD +79 -0
- ellf_cli-3.1.3.dist-info/WHEEL +5 -0
- ellf_cli-3.1.3.dist-info/entry_points.txt +2 -0
- ellf_cli-3.1.3.dist-info/licenses/LICENSE +3 -0
- ellf_cli-3.1.3.dist-info/top_level.txt +1 -0
ellf_cli/__init__.py
ADDED
|
File without changes
|
ellf_cli/__main__.py
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import sys
|
|
3
|
+
from pathlib import Path
|
|
4
|
+
|
|
5
|
+
FILE = Path(__file__).parent / "ellf.json"
|
|
6
|
+
IS_DEBUG = "_ELLF_DEBUG" in os.environ
|
|
7
|
+
|
|
8
|
+
# IMPORTANT: This is the function exposed via the console_scripts entry point to
|
|
9
|
+
# register the "ellf" command and it's also referenced in the Dockerfile.all.
|
|
10
|
+
# Do not change its name unless necessary, and double-check that
|
|
11
|
+
# ellf_cli.__main__.main is updated everywhere else.
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def _normalize_legacy_args(args: list[str]) -> list[str]:
|
|
15
|
+
"""Normalize deprecated top-level command names."""
|
|
16
|
+
normalized = list(args)
|
|
17
|
+
if normalized and normalized[0] == "cluster":
|
|
18
|
+
normalized[0] = "clusters"
|
|
19
|
+
if normalized and normalized[0] == "plan":
|
|
20
|
+
normalized[0] = "plans"
|
|
21
|
+
if normalized and normalized[0] in ("coding-requests", "coding-request"):
|
|
22
|
+
normalized[0] = "todo"
|
|
23
|
+
return normalized
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def main() -> None:
|
|
27
|
+
from radicli import StaticRadicli
|
|
28
|
+
|
|
29
|
+
from .about import __prog__
|
|
30
|
+
|
|
31
|
+
args = _normalize_legacy_args(sys.argv[1:])
|
|
32
|
+
argv = [__prog__, *args]
|
|
33
|
+
static = StaticRadicli.load(FILE, debug=IS_DEBUG)
|
|
34
|
+
static.run(list(argv))
|
|
35
|
+
|
|
36
|
+
from . import config
|
|
37
|
+
from .commands._state import ROOT_CONFIG
|
|
38
|
+
from .main import cli
|
|
39
|
+
|
|
40
|
+
if ROOT_CONFIG.get(None) is None:
|
|
41
|
+
ROOT_CONFIG.set(config.RootConfig(config_dir=config.global_config_dir()))
|
|
42
|
+
|
|
43
|
+
try:
|
|
44
|
+
cli.run(list(argv))
|
|
45
|
+
except Exception:
|
|
46
|
+
if IS_DEBUG:
|
|
47
|
+
import pdb
|
|
48
|
+
|
|
49
|
+
pdb.post_mortem()
|
|
50
|
+
raise
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
if __name__ == "__main__":
|
|
54
|
+
main()
|
ellf_cli/about.json
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Ellf CLI",
|
|
3
|
+
"name": "ellf-cli",
|
|
4
|
+
"version": "3.1.3",
|
|
5
|
+
"summary": "Ellf Command Line Interface",
|
|
6
|
+
"uri": "https://prodi.gy",
|
|
7
|
+
"prog": "ellf",
|
|
8
|
+
"entry_points": {
|
|
9
|
+
"console_scripts": [
|
|
10
|
+
"ellf = ellf_cli.__main__:main"
|
|
11
|
+
]
|
|
12
|
+
},
|
|
13
|
+
"package_data": [
|
|
14
|
+
"ellf.json"
|
|
15
|
+
],
|
|
16
|
+
"package_data_dirs": [
|
|
17
|
+
"recipes_cookiecutter"
|
|
18
|
+
]
|
|
19
|
+
}
|
ellf_cli/about.py
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"""
|
|
2
|
+
This file originates in shared/shared_about.py, and
|
|
3
|
+
is copied verbatim into the different projects. It should
|
|
4
|
+
not be edited directly, edit the shared version and replicate
|
|
5
|
+
it everywhere.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
import json
|
|
9
|
+
from pathlib import Path
|
|
10
|
+
|
|
11
|
+
PWD = Path(__file__).parent
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
with (PWD / "about.json").open("r", encoding="utf8") as file_:
|
|
15
|
+
_about_data = json.load(file_)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
__name__ = _about_data["name"]
|
|
19
|
+
__title__ = _about_data.get("title", "")
|
|
20
|
+
__description__ = _about_data.get("description", "")
|
|
21
|
+
__summary__ = _about_data.get("summary", "")
|
|
22
|
+
__version__ = _about_data["version"]
|
|
23
|
+
__prog__ = _about_data.get("prog", "")
|