devlift-cli 0.1.0__tar.gz

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.
Files changed (61) hide show
  1. devlift_cli-0.1.0/PKG-INFO +106 -0
  2. devlift_cli-0.1.0/README.md +78 -0
  3. devlift_cli-0.1.0/devlift_cli/MANUAL.md +1066 -0
  4. devlift_cli-0.1.0/devlift_cli/__init__.py +3 -0
  5. devlift_cli-0.1.0/devlift_cli/__main__.py +4 -0
  6. devlift_cli-0.1.0/devlift_cli/api/__init__.py +0 -0
  7. devlift_cli-0.1.0/devlift_cli/api/approvals.py +53 -0
  8. devlift_cli-0.1.0/devlift_cli/api/catalog.py +96 -0
  9. devlift_cli-0.1.0/devlift_cli/api/client.py +125 -0
  10. devlift_cli-0.1.0/devlift_cli/api/context.py +21 -0
  11. devlift_cli-0.1.0/devlift_cli/api/deployments.py +37 -0
  12. devlift_cli-0.1.0/devlift_cli/api/infra.py +94 -0
  13. devlift_cli-0.1.0/devlift_cli/api/infra_list.py +61 -0
  14. devlift_cli-0.1.0/devlift_cli/api/kong.py +29 -0
  15. devlift_cli-0.1.0/devlift_cli/api/services.py +106 -0
  16. devlift_cli-0.1.0/devlift_cli/api/vpc.py +24 -0
  17. devlift_cli-0.1.0/devlift_cli/app.py +163 -0
  18. devlift_cli-0.1.0/devlift_cli/auth/__init__.py +0 -0
  19. devlift_cli-0.1.0/devlift_cli/auth/oauth.py +270 -0
  20. devlift_cli-0.1.0/devlift_cli/auth/session.py +64 -0
  21. devlift_cli-0.1.0/devlift_cli/auth/storage.py +135 -0
  22. devlift_cli-0.1.0/devlift_cli/commands/__init__.py +0 -0
  23. devlift_cli-0.1.0/devlift_cli/commands/approval.py +51 -0
  24. devlift_cli-0.1.0/devlift_cli/commands/auth.py +180 -0
  25. devlift_cli-0.1.0/devlift_cli/commands/catalog.py +187 -0
  26. devlift_cli-0.1.0/devlift_cli/commands/clusters.py +108 -0
  27. devlift_cli-0.1.0/devlift_cli/commands/deployment.py +77 -0
  28. devlift_cli-0.1.0/devlift_cli/commands/dynamodb.py +121 -0
  29. devlift_cli-0.1.0/devlift_cli/commands/eks.py +326 -0
  30. devlift_cli-0.1.0/devlift_cli/commands/kong.py +145 -0
  31. devlift_cli-0.1.0/devlift_cli/commands/languages.py +40 -0
  32. devlift_cli-0.1.0/devlift_cli/commands/manual.py +82 -0
  33. devlift_cli-0.1.0/devlift_cli/commands/repositories.py +49 -0
  34. devlift_cli-0.1.0/devlift_cli/commands/request.py +89 -0
  35. devlift_cli-0.1.0/devlift_cli/commands/s3.py +198 -0
  36. devlift_cli-0.1.0/devlift_cli/commands/sqs.py +229 -0
  37. devlift_cli-0.1.0/devlift_cli/config.py +94 -0
  38. devlift_cli-0.1.0/devlift_cli/context.py +97 -0
  39. devlift_cli-0.1.0/devlift_cli/data/placement/vance.json +16 -0
  40. devlift_cli-0.1.0/devlift_cli/errors.py +52 -0
  41. devlift_cli-0.1.0/devlift_cli/ops/__init__.py +0 -0
  42. devlift_cli-0.1.0/devlift_cli/ops/approvals.py +343 -0
  43. devlift_cli-0.1.0/devlift_cli/ops/eks.py +877 -0
  44. devlift_cli-0.1.0/devlift_cli/ops/kong.py +343 -0
  45. devlift_cli-0.1.0/devlift_cli/ops/placement.py +128 -0
  46. devlift_cli-0.1.0/devlift_cli/ops/resources.py +418 -0
  47. devlift_cli-0.1.0/devlift_cli/ops/status.py +152 -0
  48. devlift_cli-0.1.0/devlift_cli/ops/wait.py +82 -0
  49. devlift_cli-0.1.0/devlift_cli/render/__init__.py +0 -0
  50. devlift_cli-0.1.0/devlift_cli/render/output.py +75 -0
  51. devlift_cli-0.1.0/devlift_cli/resolve/__init__.py +0 -0
  52. devlift_cli-0.1.0/devlift_cli/resolve/allowlist.py +192 -0
  53. devlift_cli-0.1.0/devlift_cli/resolve/names.py +179 -0
  54. devlift_cli-0.1.0/devlift_cli.egg-info/PKG-INFO +106 -0
  55. devlift_cli-0.1.0/devlift_cli.egg-info/SOURCES.txt +59 -0
  56. devlift_cli-0.1.0/devlift_cli.egg-info/dependency_links.txt +1 -0
  57. devlift_cli-0.1.0/devlift_cli.egg-info/entry_points.txt +3 -0
  58. devlift_cli-0.1.0/devlift_cli.egg-info/requires.txt +6 -0
  59. devlift_cli-0.1.0/devlift_cli.egg-info/top_level.txt +1 -0
  60. devlift_cli-0.1.0/pyproject.toml +54 -0
  61. devlift_cli-0.1.0/setup.cfg +4 -0
@@ -0,0 +1,106 @@
1
+ Metadata-Version: 2.4
2
+ Name: devlift-cli
3
+ Version: 0.1.0
4
+ Summary: DevLift command-line tool: create, change, review and deploy DevLift resources from the terminal.
5
+ License: Proprietary
6
+ Keywords: devlift,devops,deployment,infrastructure,cli
7
+ Classifier: Development Status :: 4 - Beta
8
+ Classifier: Environment :: Console
9
+ Classifier: Intended Audience :: Developers
10
+ Classifier: Intended Audience :: System Administrators
11
+ Classifier: License :: Other/Proprietary License
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3.11
15
+ Classifier: Programming Language :: Python :: 3.12
16
+ Classifier: Programming Language :: Python :: 3.13
17
+ Classifier: Topic :: Software Development :: Build Tools
18
+ Classifier: Topic :: System :: Systems Administration
19
+ Classifier: Typing :: Typed
20
+ Requires-Python: >=3.11
21
+ Description-Content-Type: text/markdown
22
+ Requires-Dist: typer>=0.15
23
+ Requires-Dist: rich>=13
24
+ Requires-Dist: httpx>=0.27
25
+ Requires-Dist: keyring>=25
26
+ Requires-Dist: pydantic>=2
27
+ Requires-Dist: pyyaml>=6
28
+
29
+ # devlift-cli
30
+
31
+ DevLift from the terminal, in the style of the AWS CLI:
32
+
33
+ ```
34
+ devlift <group> <operation> [flags]
35
+ ```
36
+
37
+ Every command is a fixed sequence of calls to the DevLift backend's REST API,
38
+ the same endpoints the web dashboard uses. Nothing here talks to an LLM.
39
+
40
+ ## Install
41
+
42
+ ```
43
+ pip install devlift-cli
44
+ ```
45
+
46
+ Or, to keep it in its own environment and off your system Python:
47
+
48
+ ```
49
+ pipx install devlift-cli
50
+ ```
51
+
52
+ Upgrade with `pip install -U devlift-cli` (or `pipx upgrade devlift-cli`).
53
+ Your profile and sign-in live in `~/.config/devlift` and survive upgrades.
54
+
55
+ Then:
56
+
57
+ ```
58
+ devlift configure --base-url <your DevLift backend> --default
59
+ devlift login
60
+ devlift whoami
61
+ devlift man
62
+ ```
63
+
64
+ Requires Python 3.11 or newer. To remove it: `pip uninstall devlift-cli`
65
+ (or `pipx uninstall devlift-cli`). That leaves `~/.config/devlift`, so delete
66
+ that too if you want your profiles and sign-in gone as well.
67
+
68
+ Several backends? `devlift profile list`, `devlift profile use <name>` and
69
+ `devlift profile show` switch between them and say which one is active.
70
+
71
+ ## Manual
72
+
73
+ The full command reference ships inside the package: `devlift man` pages
74
+ through it like `man`, and `devlift manual s3` prints one section.
75
+
76
+ ## What it covers
77
+
78
+ - Resources: `s3`, `sqs`, `dynamodb` create / list / describe, `s3` and `sqs` update.
79
+ - Services: `eks create / edit / show / diff / deploy / status`, `kong route add / remove / rename`, `kong plugin add`.
80
+ - Review lane: `request submit / withdraw / discard / list / show`, `approval approve / request-changes / reject / revoke / list`.
81
+ - Deployments: `deployment list / status`, `queue list`.
82
+ - Discovery: applications, environments, regions, resource groups, services, repositories, branches, languages.
83
+
84
+ Variables and secrets stay in the dashboard by design.
85
+
86
+ ## Scripting
87
+
88
+ - `-o json` prints only JSON on stdout (the default when stdout is not a terminal).
89
+ - `--yes` answers confirmations, `--no-input` fails instead of prompting.
90
+ - `DEVLIFT_TOKEN` skips the stored login. `DEVLIFT_PROFILE`, `DEVLIFT_BASE_URL` override the profile.
91
+ - Exit codes: 0 ok · 1 error · 2 not signed in · 3 bad input · 4 permission · 5 confirmation needed · 6 not found · 7 conflict.
92
+
93
+ ## Claude skill
94
+
95
+ `skills/devlift/` teaches Claude (Claude Code or any Agent Skills host) to
96
+ drive this CLI non-interactively. Install with:
97
+
98
+ ```
99
+ ln -s "$(pwd)/skills/devlift" ~/.claude/skills/devlift # personal
100
+ # or copy it into a project's .claude/skills/devlift
101
+ ```
102
+
103
+ ## Development
104
+
105
+ Building, testing and cutting a release: see `CONTRIBUTING.md` in the source
106
+ repository. It is deliberately not part of the published package.
@@ -0,0 +1,78 @@
1
+ # devlift-cli
2
+
3
+ DevLift from the terminal, in the style of the AWS CLI:
4
+
5
+ ```
6
+ devlift <group> <operation> [flags]
7
+ ```
8
+
9
+ Every command is a fixed sequence of calls to the DevLift backend's REST API,
10
+ the same endpoints the web dashboard uses. Nothing here talks to an LLM.
11
+
12
+ ## Install
13
+
14
+ ```
15
+ pip install devlift-cli
16
+ ```
17
+
18
+ Or, to keep it in its own environment and off your system Python:
19
+
20
+ ```
21
+ pipx install devlift-cli
22
+ ```
23
+
24
+ Upgrade with `pip install -U devlift-cli` (or `pipx upgrade devlift-cli`).
25
+ Your profile and sign-in live in `~/.config/devlift` and survive upgrades.
26
+
27
+ Then:
28
+
29
+ ```
30
+ devlift configure --base-url <your DevLift backend> --default
31
+ devlift login
32
+ devlift whoami
33
+ devlift man
34
+ ```
35
+
36
+ Requires Python 3.11 or newer. To remove it: `pip uninstall devlift-cli`
37
+ (or `pipx uninstall devlift-cli`). That leaves `~/.config/devlift`, so delete
38
+ that too if you want your profiles and sign-in gone as well.
39
+
40
+ Several backends? `devlift profile list`, `devlift profile use <name>` and
41
+ `devlift profile show` switch between them and say which one is active.
42
+
43
+ ## Manual
44
+
45
+ The full command reference ships inside the package: `devlift man` pages
46
+ through it like `man`, and `devlift manual s3` prints one section.
47
+
48
+ ## What it covers
49
+
50
+ - Resources: `s3`, `sqs`, `dynamodb` create / list / describe, `s3` and `sqs` update.
51
+ - Services: `eks create / edit / show / diff / deploy / status`, `kong route add / remove / rename`, `kong plugin add`.
52
+ - Review lane: `request submit / withdraw / discard / list / show`, `approval approve / request-changes / reject / revoke / list`.
53
+ - Deployments: `deployment list / status`, `queue list`.
54
+ - Discovery: applications, environments, regions, resource groups, services, repositories, branches, languages.
55
+
56
+ Variables and secrets stay in the dashboard by design.
57
+
58
+ ## Scripting
59
+
60
+ - `-o json` prints only JSON on stdout (the default when stdout is not a terminal).
61
+ - `--yes` answers confirmations, `--no-input` fails instead of prompting.
62
+ - `DEVLIFT_TOKEN` skips the stored login. `DEVLIFT_PROFILE`, `DEVLIFT_BASE_URL` override the profile.
63
+ - Exit codes: 0 ok · 1 error · 2 not signed in · 3 bad input · 4 permission · 5 confirmation needed · 6 not found · 7 conflict.
64
+
65
+ ## Claude skill
66
+
67
+ `skills/devlift/` teaches Claude (Claude Code or any Agent Skills host) to
68
+ drive this CLI non-interactively. Install with:
69
+
70
+ ```
71
+ ln -s "$(pwd)/skills/devlift" ~/.claude/skills/devlift # personal
72
+ # or copy it into a project's .claude/skills/devlift
73
+ ```
74
+
75
+ ## Development
76
+
77
+ Building, testing and cutting a release: see `CONTRIBUTING.md` in the source
78
+ repository. It is deliberately not part of the published package.