qontract-development-cli 0.16.0__tar.gz → 0.17.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 (28) hide show
  1. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/PKG-INFO +2 -2
  2. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/pyproject.toml +2 -2
  3. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/commands/profile.py +1 -0
  4. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/models.py +11 -1
  5. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/api.yml.j2 +0 -1
  6. qontract_development_cli-0.17.0/qontract_development_cli/templates/subscriber.yml.j2 +31 -0
  7. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/worker.yml.j2 +1 -2
  8. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/README.md +0 -0
  9. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/__init__.py +0 -0
  10. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/__main__.py +0 -0
  11. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/cli.py +0 -0
  12. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/commands/__init__.py +0 -0
  13. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/commands/config.py +0 -0
  14. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/commands/env.py +0 -0
  15. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/completions.py +0 -0
  16. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/config.py +0 -0
  17. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/shell.py +0 -0
  18. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/cache.yml.j2 +0 -0
  19. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/compose.override.yml.j2 +0 -0
  20. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/compose.yml.j2 +0 -0
  21. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/internal-redhat-ca.yml.j2 +0 -0
  22. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/prep-worktree.sh.j2 +0 -0
  23. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/reconcile.yml.j2 +0 -0
  24. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/server.yml.j2 +0 -0
  25. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates/vault.yml.j2 +0 -0
  26. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/templates.py +0 -0
  27. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/utils.py +0 -0
  28. {qontract_development_cli-0.16.0 → qontract_development_cli-0.17.0}/qontract_development_cli/watchdog.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: qontract-development-cli
3
- Version: 0.16.0
3
+ Version: 0.17.0
4
4
  Summary: Helper tool for qontract-reconcile development
5
5
  Project-URL: homepage, http://github.com/chassing/qontract-development-cli
6
6
  Project-URL: repository, http://github.com/chassing/qontract-development-cli
@@ -15,7 +15,7 @@ Requires-Dist: pydantic-settings~=2.6
15
15
  Requires-Dist: pydantic~=2.9
16
16
  Requires-Dist: pyyaml~=6.0.2
17
17
  Requires-Dist: rich~=14.0
18
- Requires-Dist: typer~=0.21.0
18
+ Requires-Dist: typer~=0.24.1
19
19
  Requires-Dist: watchfiles~=1.1.0
20
20
  Description-Content-Type: text/markdown
21
21
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "qontract-development-cli"
3
- version = "0.16.0"
3
+ version = "0.17.0"
4
4
  description = "Helper tool for qontract-reconcile development"
5
5
  authors = [{ name = "Christian Assing", email = "cassing@redhat.com" }]
6
6
  license = { text = "MIT" }
@@ -14,7 +14,7 @@ dependencies = [
14
14
  "pydantic-settings ~=2.6",
15
15
  "pyyaml ~=6.0.2",
16
16
  "rich ~=14.0",
17
- "typer ~=0.21.0",
17
+ "typer ~=0.24.1",
18
18
  "watchfiles ~=1.1.0",
19
19
  ]
20
20
 
@@ -269,6 +269,7 @@ def run( # noqa: C901, PLR0912, PLR0913, PLR0915
269
269
  cache=env.settings.run_cache,
270
270
  reconcile=env.settings.run_qontract_reconcile,
271
271
  server=env.settings.run_qontract_server,
272
+ subscriber=env.settings.run_qontract_api_subscriber,
272
273
  vault=env.settings.run_vault,
273
274
  worker=env.settings.run_qontract_api_worker,
274
275
  )
@@ -18,6 +18,7 @@ class EnvSettings(BaseModel):
18
18
  container_platform: str = "linux/amd64"
19
19
  gitlab_pr_submitter_queue_url: str = ""
20
20
  run_qontract_api: bool = False
21
+ run_qontract_api_subscriber: bool = False
21
22
  run_qontract_api_worker: bool = False
22
23
  run_cache: bool = False
23
24
  run_qontract_reconcile: bool = True
@@ -50,9 +51,16 @@ class ProfileSettings(BaseModel):
50
51
  qontract_api_compose_file: str = "api.yml.j2"
51
52
  qontract_api_debugger_port: int = 5679
52
53
 
54
+ # api-worker
55
+ qontract_api_subscriber_build_image: bool = True
56
+ qontract_api_subscriber_image: str = "quay.io/redhat-services-prod/app-sre-tenant/qontract-reconcile-master/qontract-api-master:latest"
57
+ qontract_api_subscriber_container_platform: str | None = None
58
+ qontract_api_subscriber_compose_file: str = "subscriber.yml.j2"
59
+ qontract_api_subscriber_debugger_port: int = 5681
60
+
53
61
  # api-worker
54
62
  qontract_api_worker_build_image: bool = True
55
- qontract_api_worker_image: str = "quay.io/redhat-services-prod/app-sre-tenant/qontract-reconcile-master/qontract-api-worker-master:latest"
63
+ qontract_api_worker_image: str = "quay.io/redhat-services-prod/app-sre-tenant/qontract-reconcile-master/qontract-api-master:latest"
56
64
  qontract_api_worker_container_platform: str | None = None
57
65
  qontract_api_worker_compose_file: str = "worker.yml.j2"
58
66
  qontract_api_worker_debugger_port: int = 5680
@@ -119,10 +127,12 @@ class ProfileSettings(BaseModel):
119
127
  cache: bool,
120
128
  reconcile: bool,
121
129
  server: bool,
130
+ subscriber: bool,
122
131
  vault: bool,
123
132
  worker: bool,
124
133
  ) -> list[str]:
125
134
  files = [self.qontract_api_compose_file] if api else []
135
+ files += [self.qontract_api_subscriber_compose_file] if subscriber else []
126
136
  files += [self.qontract_api_worker_compose_file] if worker else []
127
137
  files += [self.cache_compose_file] if cache else []
128
138
  files += [self.qontract_reconcile_compose_file] if reconcile else []
@@ -26,7 +26,6 @@ services:
26
26
 
27
27
  volumes:
28
28
  - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/app.sh:/opt/app-root/src/app.sh:z
29
- - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/.env.yaml:/opt/app-root/src/.env.yaml:z
30
29
  - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/.env:/opt/app-root/src/.env:z
31
30
  - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/qontract_api:/opt/app-root/src/qontract_api/qontract_api:z
32
31
  - {{ profile.settings.qontract_reconcile_path.expanduser().absolute() }}/qontract_utils/qontract_utils:/opt/app-root/src/qontract_utils/qontract_utils:z
@@ -0,0 +1,31 @@
1
+ services:
2
+ # qontract-api (Event Subscriber)
3
+ qontract-api-subscriber:
4
+ container_name: qontract-api-subscriber
5
+ platform: {{ profile.settings.qontract_api_subscriber_container_platform or env.settings.container_platform }}
6
+ {% if profile.settings.qontract_api_subscriber_build_image %}
7
+ build:
8
+ context: {{ profile.settings.qontract_reconcile_path.expanduser().absolute() }}
9
+ dockerfile: {{ profile.settings.qontract_api_path.expanduser().absolute() }}/Dockerfile
10
+ target: debug
11
+ {% else %}
12
+ image: {{ profile.settings.qontract_api_subscriber_image }}
13
+ {% endif %}
14
+
15
+ ports:
16
+ - 8081:8080
17
+ - {{ profile.settings.qontract_api_subscriber_debugger_port }}:5678 # debugpy port
18
+
19
+ environment:
20
+ - QAPI_START_MODE=subscriber
21
+ - QAPI_CACHE_BROKER_URL=redis://cache:6379/0
22
+ # Enable debugpy
23
+ - DEBUGGER_ENABLED={% if profile.settings.debugger %}true{% else %}false{% endif %}
24
+ # Hot reload for development
25
+ - AUTO_RELOAD=1
26
+
27
+ volumes:
28
+ - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/app.sh:/opt/app-root/src/app.sh:z
29
+ - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/.env:/opt/app-root/src/.env:z
30
+ - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/qontract_api:/opt/app-root/src/qontract_api/qontract_api:z
31
+ - {{ profile.settings.qontract_reconcile_path.expanduser().absolute() }}/qontract_utils/qontract_utils:/opt/app-root/src/qontract_utils/qontract_utils:z
@@ -7,13 +7,13 @@ services:
7
7
  build:
8
8
  context: {{ profile.settings.qontract_reconcile_path.expanduser().absolute() }}
9
9
  dockerfile: {{ profile.settings.qontract_api_path.expanduser().absolute() }}/Dockerfile
10
-
11
10
  target: debug
12
11
  {% else %}
13
12
  image: {{ profile.settings.qontract_api_workerimage }}
14
13
  {% endif %}
15
14
 
16
15
  ports:
16
+ - 8000:8000
17
17
  - {{ profile.settings.qontract_api_worker_debugger_port }}:5678 # debugpy port
18
18
 
19
19
  environment:
@@ -26,7 +26,6 @@ services:
26
26
 
27
27
  volumes:
28
28
  - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/app.sh:/opt/app-root/src/app.sh
29
- - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/.env.yaml:/opt/app-root/src/.env.yaml
30
29
  - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/.env:/opt/app-root/src/.env
31
30
  - {{ profile.settings.qontract_api_path.expanduser().absolute() }}/qontract_api:/opt/app-root/src/qontract_api/qontract_api
32
31
  - {{ profile.settings.qontract_reconcile_path.expanduser().absolute() }}/qontract_utils/qontract_utils:/opt/app-root/src/qontract_utils/qontract_utils