devs-webhook 3.4.0__tar.gz → 4.0.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.
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/PKG-INFO +1 -1
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/claude_dispatcher.py +20 -7
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook.egg-info/PKG-INFO +1 -1
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/pyproject.toml +1 -1
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/LICENSE +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/README.md +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/__init__.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/app.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/cli/__init__.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/cli/worker.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/config.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/__init__.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/base_dispatcher.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/container_pool.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/deduplication.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/repository_manager.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/task_processor.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/test_dispatcher.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/webhook_config.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/core/webhook_handler.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/github/__init__.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/github/app_auth.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/github/client.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/github/models.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/github/parser.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/main_cli.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/sources/__init__.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/sources/base.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/sources/sqs_source.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/sources/webhook_source.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/__init__.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/async_utils.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/container_logs.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/github.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/logging.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/s3_artifacts.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook/utils/serialization.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook.egg-info/SOURCES.txt +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook.egg-info/dependency_links.txt +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook.egg-info/entry_points.txt +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook.egg-info/requires.txt +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/devs_webhook.egg-info/top_level.txt +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/setup.cfg +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_allowlist.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_authentication.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_authorized_users.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_ci_container_pool.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_cleanup_mode.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_container_logs.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_single_queue.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_sqs_burst.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_stop_container_after_task.py +0 -0
- {devs_webhook-3.4.0 → devs_webhook-4.0.0}/tests/test_webhook_parser.py +0 -0
|
@@ -176,8 +176,25 @@ class ClaudeDispatcher(BaseDispatcher):
|
|
|
176
176
|
logger.info("Created new workspace",
|
|
177
177
|
container=dev_name,
|
|
178
178
|
workspace_dir=str(workspace_dir))
|
|
179
|
-
|
|
180
|
-
# 3.
|
|
179
|
+
|
|
180
|
+
# 3. Ensure container is running with environment variables from DEVS.yml.
|
|
181
|
+
# check_rebuild defaults to True so the image is rebuilt when devcontainer
|
|
182
|
+
# files change. Safe here because the per-devname queue is serial — a rebuild
|
|
183
|
+
# only happens between tasks, never mid-task.
|
|
184
|
+
extra_env = None
|
|
185
|
+
if devs_options:
|
|
186
|
+
extra_env = devs_options.get_env_vars(dev_name)
|
|
187
|
+
|
|
188
|
+
if not container_manager.ensure_container_running(
|
|
189
|
+
dev_name=dev_name,
|
|
190
|
+
workspace_dir=workspace_dir,
|
|
191
|
+
force_rebuild=False,
|
|
192
|
+
debug=self.config.dev_mode,
|
|
193
|
+
extra_env=extra_env,
|
|
194
|
+
):
|
|
195
|
+
return False, "", f"Failed to start container for {dev_name}", 1
|
|
196
|
+
|
|
197
|
+
# 4. Build Claude prompt
|
|
181
198
|
workspace_name = project.get_workspace_name(dev_name)
|
|
182
199
|
workspace_path = f"/workspaces/{workspace_name}"
|
|
183
200
|
repo_name = event.repository.full_name
|
|
@@ -277,14 +294,10 @@ Always remember to PUSH your work to origin!
|
|
|
277
294
|
prompt_length=len(prompt),
|
|
278
295
|
event_type="PR" if is_pr else "Issue")
|
|
279
296
|
|
|
280
|
-
#
|
|
297
|
+
# 5. Execute Claude (like CLI pattern) with environment variables from DEVS.yml
|
|
281
298
|
logger.info("Executing Claude via ContainerManager (like CLI)",
|
|
282
299
|
container=dev_name)
|
|
283
300
|
|
|
284
|
-
extra_env = None
|
|
285
|
-
if devs_options:
|
|
286
|
-
extra_env = devs_options.get_env_vars(dev_name)
|
|
287
|
-
|
|
288
301
|
# Start container logging if enabled
|
|
289
302
|
if container_log:
|
|
290
303
|
container_log.start(prompt=prompt, workspace_dir=str(workspace_dir))
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|