Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
72 lines (57 loc) · 1.97 KB

File metadata and controls

72 lines (57 loc) · 1.97 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import argparse
import sys
import defaults
from basecommand import Command
from basecommand import SubParserFactory
from bj import ListJobsCommand
from bd import DeleteJobsCommand
from bl import LogsCommand
from bp import PrintJobsCommand
from bq import GpuQueuesCommand
from br import CreateJobCommand
from bps import ListPodsCommand
from helpers import is_logged_in
class BatchTools:
commands: dict[str, type[Command]]
parser: argparse.ArgumentParser
subparsers: SubParserFactory
def __init__(self) -> None:
self.build_parser()
def build_parser(self) -> None:
self.commands = {}
parser = self.parser = argparse.ArgumentParser(
description="OpenShift CLI helper"
)
self.subparsers = self.parser.add_subparsers(dest="cmd", required=True)
parser.add_argument(
"--verbose",
"-v",
action="count",
default=defaults.verbose,
help="Increase verbosity of output",
)
self.register(ListJobsCommand)
self.register(LogsCommand)
self.register(DeleteJobsCommand)
self.register(PrintJobsCommand)
self.register(GpuQueuesCommand)
self.register(CreateJobCommand)
self.register(ListPodsCommand)
def register(self, handler: type[Command]):
handler.build_parser(self.subparsers)
self.commands[handler.name] = handler
def parse(self, args: list[str] | None = None):
return self.parser.parse_args(args)
def run(self, args: list[str] | None = None):
parsed = self.parse(args)
self.commands[parsed.cmd].run(parsed) # pyright: ignore[reportAny]
def main() -> None:
if not is_logged_in():
sys.exit("You are not logged in to the oc cli. Retrieve the token using 'oc login --web' or retrieving the login token from the openshift UI.")
app = BatchTools()
app.run()
if __name__ == "__main__":
try:
main()
except KeyboardInterrupt:
pass
Morty Proxy This is a proxified and sanitized view of the page, visit original site.