Skip to content

Commit ad36be8

Browse files
committed
misc: QA and PR review fixes
1 parent 2cf424d commit ad36be8

4 files changed

Lines changed: 34 additions & 59 deletions

File tree

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ dk-*-credentials.txt
99

1010
# Docker
1111
docker-compose.yml
12-
docker-compose.yaml
12+
obs-docker-compose.yml
1313

1414
# Logs
1515
testgen_demo.log

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@ And it allows you to <b>make fast, safe development changes</b>.
4949

5050
#### Requirements for TestGen & Observability
5151

52-
| Software | Tested Versions | Command to check version |
53-
|-------------------------|-------------------------|-------------------------------|
54-
| [Python](https://www.python.org/downloads/) <br/>- Most Linux and macOS systems have Python pre-installed. <br/>- On Windows machines, you will need to download and install it. | 3.9, 3.10, 3.11, 3.12 | `python3 --version` |
55-
| [Docker](https://docs.docker.com/get-docker/) <br/>[Docker Compose](https://docs.docker.com/compose/install/) | 26.1, 27.5, 28.1 <br/> 2.34, 2.35, 2.36 | `docker -v` <br/> `docker compose version` |
52+
| Software | Tested Versions | Command to check version |
53+
|-------------------------|-----------------------------------------|-------------------------------|
54+
| [Python](https://www.python.org/downloads/) <br/>- Most Linux and macOS systems have Python pre-installed. <br/>- On Windows machines, you will need to download and install it. | 3.9, 3.10, 3.11, 3.12, 3.13 | `python3 --version` |
55+
| [Docker](https://docs.docker.com/get-docker/) <br/>[Docker Compose](https://docs.docker.com/compose/install/) | 26.1, 27.5, 28.5 <br/> 2.38, 2.39, 2.40 | `docker -v` <br/> `docker compose version` |
5656

5757

5858
### Download the installer

demo/demo/main.py

Lines changed: 29 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -1,67 +1,45 @@
1+
import signal
2+
13
from demo_helper import Config
2-
from observability_demo import run_obs_demo, delete_obs_demo
4+
from observability_demo import run_obs_demo, delete_obs_demo
35
from heartbeat_demo import run_heartbeat_demo
4-
from testgen_demo import run_tg_demo, delete_tg_demo
6+
from testgen_demo import run_tg_demo, delete_tg_demo
57
from argparse import ArgumentParser
68

79

8-
def init_args() -> ArgumentParser:
9-
parser = ArgumentParser(
10-
description="""
11-
This is a tool to create a demo of DataOps Observability & TestGen.
12-
""",
13-
)
14-
subparsers = parser.add_subparsers(title="subcommands")
10+
def init_parser() -> ArgumentParser:
11+
parser = ArgumentParser(description="This is a tool to create a demo of DataOps Observability & TestGen.")
12+
subparsers = parser.add_subparsers(title="subcommands", required=True)
1513

16-
obs_run_parser = subparsers.add_parser(
17-
"obs-run-demo",
18-
description="Run the Observability demo",
19-
)
20-
obs_run_parser.set_defaults(action="obs-run-demo")
21-
22-
obs_delete_parser = subparsers.add_parser(
23-
"obs-delete-demo",
24-
description="Delete data created by the Observability demo",
14+
commands = (
15+
("obs-run-demo", "Run the Observability demo", run_obs_demo),
16+
("obs-delete-demo", "Delete data created by the Observability demo", delete_obs_demo),
17+
("obs-heartbeat-demo", "Run the Observability Heartbeat demo", run_heartbeat_demo),
18+
("tg-run-demo", "Run the TestGen demo", run_tg_demo),
19+
("tg-delete-demo", "Delete data created by the TestGen demo", delete_tg_demo),
2520
)
26-
obs_delete_parser.set_defaults(action="obs-delete-demo")
2721

28-
obs_heartbeat_parser = subparsers.add_parser(
29-
"obs-heartbeat-demo",
30-
description="Run the Observability Heartbeat demo",
31-
)
32-
obs_heartbeat_parser.set_defaults(action="obs-heartbeat-demo")
22+
for cmd, desc, func in commands:
23+
sub_parser = subparsers.add_parser(cmd, description=desc)
24+
sub_parser.set_defaults(func=func)
3325

34-
tg_run_parser = subparsers.add_parser(
35-
"tg-run-demo",
36-
description="Run the TestGen demo",
37-
)
38-
tg_run_parser.set_defaults(action="tg-run-demo")
39-
40-
tg_delete_parser = subparsers.add_parser(
41-
"tg-delete-demo",
42-
description="Delete data created by the TestGen demo",
43-
)
44-
tg_delete_parser.set_defaults(action="tg-delete-demo")
26+
return parser
27+
28+
29+
def init_signal_handler():
30+
def _keyboard_interrupt(_signum, _frame):
31+
raise KeyboardInterrupt
32+
33+
# Docker sends SIGTERM on Ctrl-C, so we raise a KeyboardInterrupt
34+
signal.signal(signal.SIGTERM, _keyboard_interrupt)
4535

46-
return parser.parse_args()
4736

4837
def main():
49-
args = init_args()
38+
init_signal_handler()
39+
args = init_parser().parse_args()
5040
config = Config()
51-
52-
if args.action == "obs-run-demo":
53-
run_obs_demo(config)
54-
elif args.action == "obs-delete-demo":
55-
delete_obs_demo(config)
56-
elif args.action == "obs-heartbeat-demo":
57-
run_heartbeat_demo(config)
58-
elif args.action == "tg-run-demo":
59-
run_tg_demo(config)
60-
elif args.action == "tg-delete-demo":
61-
delete_tg_demo(config)
62-
else:
63-
print(f"Command [{args.action}] not recognized.")
41+
args.func(config)
6442

6543

6644
if __name__ == "__main__":
67-
main()
45+
main()

dk-installer.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1464,7 +1464,6 @@ def get_compose_file_contents(self, action, args):
14641464
observability_data_init:
14651465
container_name: data-init
14661466
image: ${DK_OBSERVABILITY_BE_IMAGE:-}
1467-
pull_policy: never # XXX
14681467
restart: on-failure
14691468
depends_on:
14701469
database:
@@ -1480,7 +1479,6 @@ def get_compose_file_contents(self, action, args):
14801479
observability_backend:
14811480
container_name: back-end
14821481
image: ${DK_OBSERVABILITY_BE_IMAGE:-}
1483-
pull_policy: never # XXX
14841482
restart: always
14851483
depends_on:
14861484
observability_data_init:
@@ -1499,7 +1497,6 @@ def get_compose_file_contents(self, action, args):
14991497
observability_ui:
15001498
container_name: user-interface
15011499
image: ${DK_OBSERVABILITY_UI_IMAGE:-}
1502-
pull_policy: never # XXX
15031500
restart: always
15041501
depends_on:
15051502
observability_backend:

0 commit comments

Comments
 (0)