steve-cli 0.2.0__tar.gz → 0.3.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.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: steve-cli
3
- Version: 0.2.0
3
+ Version: 0.3.0
4
4
  Summary: A simple CLI tool to run jobs from jobs.yaml with proper environment setup
5
5
  Author: Frank
6
6
  License: MIT
@@ -20,6 +20,7 @@ Description-Content-Type: text/markdown
20
20
  Requires-Dist: boto3>=1.37.38
21
21
  Requires-Dist: click>=8.0.0
22
22
  Requires-Dist: pyyaml>=6.0
23
+ Requires-Dist: questionary>=2.0.0
23
24
  Provides-Extra: dev
24
25
  Requires-Dist: pytest>=7.0; extra == "dev"
25
26
  Requires-Dist: black>=22.0; extra == "dev"
@@ -157,6 +158,12 @@ black steve_cli/
157
158
  isort steve_cli/
158
159
  ```
159
160
 
161
+
162
+
163
+ # use cli
164
+ source .venv/bin/activate
165
+ steve
166
+
160
167
  #
161
168
 
162
169
  uv build
@@ -124,6 +124,12 @@ black steve_cli/
124
124
  isort steve_cli/
125
125
  ```
126
126
 
127
+
128
+
129
+ # use cli
130
+ source .venv/bin/activate
131
+ steve
132
+
127
133
  #
128
134
 
129
135
  uv build
@@ -1,7 +1,11 @@
1
1
 
2
+ [build-system]
3
+ requires = ["setuptools>=61.0", "wheel"]
4
+ build-backend = "setuptools.build_meta"
5
+
2
6
  [project]
3
7
  name = "steve-cli"
4
- version = "0.2.0"
8
+ version = "0.3.0"
5
9
  description = "A simple CLI tool to run jobs from jobs.yaml with proper environment setup"
6
10
  readme = "README.md"
7
11
  license = {text = "MIT"}
@@ -22,6 +26,7 @@ dependencies = [
22
26
  "boto3>=1.37.38",
23
27
  "click>=8.0.0",
24
28
  "pyyaml>=6.0",
29
+ "questionary>=2.0.0",
25
30
  ]
26
31
 
27
32
  [project.optional-dependencies]
@@ -15,6 +15,7 @@ from pathlib import Path
15
15
  from typing import Dict, List, Any, Optional
16
16
 
17
17
  import click
18
+ import questionary
18
19
  import yaml
19
20
 
20
21
 
@@ -96,10 +97,29 @@ def main():
96
97
  pass
97
98
 
98
99
 
99
- @main.group()
100
- def jobs():
100
+ @main.group(invoke_without_command=True)
101
+ @click.option('--jobs-file', '-f', type=click.Path(exists=True, path_type=Path),
102
+ help='Path to jobs.yaml file (default: ./jobs.yaml)')
103
+ @click.pass_context
104
+ def jobs(ctx: click.Context, jobs_file: Optional[Path]):
101
105
  """Manage and run jobs from jobs.yaml."""
102
- pass
106
+ if ctx.invoked_subcommand is not None:
107
+ return
108
+ config = JobsConfig(jobs_file)
109
+ job_names = config.list_jobs()
110
+ if not job_names:
111
+ click.echo("❌ No jobs found in jobs.yaml")
112
+ return
113
+ click.echo(ctx.get_help())
114
+ click.echo()
115
+ choice = questionary.select(
116
+ "Select a job to run:",
117
+ choices=job_names,
118
+ ).ask()
119
+ if choice is None:
120
+ sys.exit(0)
121
+ job = config.get_job(choice)
122
+ sys.exit(run_job_command(job))
103
123
 
104
124
 
105
125
  @jobs.command('ls')
@@ -164,8 +184,8 @@ def setup():
164
184
  pass
165
185
 
166
186
 
167
- @setup.command("all")
168
- def setup_all():
187
+ @setup.command("env")
188
+ def setup_env():
169
189
  """Decrypt SOPS-encoded .env files in current directory and write plaintext .env files."""
170
190
  cwd = Path.cwd()
171
191
  found: List[Path] = []
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: steve-cli
3
- Version: 0.2.0
3
+ Version: 0.3.0
4
4
  Summary: A simple CLI tool to run jobs from jobs.yaml with proper environment setup
5
5
  Author: Frank
6
6
  License: MIT
@@ -20,6 +20,7 @@ Description-Content-Type: text/markdown
20
20
  Requires-Dist: boto3>=1.37.38
21
21
  Requires-Dist: click>=8.0.0
22
22
  Requires-Dist: pyyaml>=6.0
23
+ Requires-Dist: questionary>=2.0.0
23
24
  Provides-Extra: dev
24
25
  Requires-Dist: pytest>=7.0; extra == "dev"
25
26
  Requires-Dist: black>=22.0; extra == "dev"
@@ -157,6 +158,12 @@ black steve_cli/
157
158
  isort steve_cli/
158
159
  ```
159
160
 
161
+
162
+
163
+ # use cli
164
+ source .venv/bin/activate
165
+ steve
166
+
160
167
  #
161
168
 
162
169
  uv build
@@ -1,6 +1,7 @@
1
1
  boto3>=1.37.38
2
2
  click>=8.0.0
3
3
  pyyaml>=6.0
4
+ questionary>=2.0.0
4
5
 
5
6
  [dev]
6
7
  pytest>=7.0
File without changes