Skip to content

Support full configuration of external 3rd-party services #1680

@coderabbitai

Description

@coderabbitai

Description

This issue tracks the work needed to fully support using external 3rd-party services (database, queue, redis, results_cache) instead of bundled ones.

Background

PR #1648 introduced the bundled configuration option to allow users to specify which 3rd-party services to start. However, additional changes are needed to fully support external services:

  1. Conditional transform_for_container() calls: The transform_for_container() method should only be called for 3rd-party service components that are bundled, not for external ones.

  2. Remove hardcoded hostnames: Several hardcoded service hostnames (e.g., results_cache, queue, redis) in docker-compose-all.yaml need to be replaced with environment variables to allow connecting to external services.

Context

Requirements

  • Conditionally call .transform_for_container() only for bundled services in components/clp-py-utils/clp_py_utils/clp_config.py
  • Replace hardcoded hostnames with environment variables in tools/deployment/package/docker-compose-all.yaml for:
    • results-cache-init (results_cache hostname)
    • compression-scheduler (queue, redis hostnames)
    • compression-worker (queue, redis hostnames)
    • query-scheduler (queue, redis hostnames)
    • query-worker (queue, redis hostnames)

This will enable users to set bundled: [] in clp-config.yaml and configure external service endpoints without manual modifications to the generated configuration.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions