Skip to content

Commit c77703c

Browse files
committed
feat(testcontainers): enterprise compat
Signed-off-by: Fatih Acar <[email protected]>
1 parent 9244f79 commit c77703c

File tree

2 files changed

+14
-6
lines changed

2 files changed

+14
-6
lines changed

python_testcontainers/infrahub_testcontainers/container.py

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ class ContainerService:
2424

2525
PROJECT_ENV_VARIABLES: dict[str, str] = {
2626
"INFRAHUB_TESTING_DOCKER_IMAGE": "registry.opsmill.io/opsmill/infrahub",
27+
"INFRAHUB_TESTING_DOCKER_ENTRYPOINT": f"gunicorn --config backend/infrahub/serve/gunicorn_config.py -w {os.environ.get("INFRAHUB_TESTING_WEB_CONCURRENCY", 4)} --logger-class infrahub.serve.log.GunicornLogger infrahub.server:app", # noqa: E501
2728
"INFRAHUB_TESTING_IMAGE_VERSION": infrahub_version,
2829
"INFRAHUB_TESTING_PRODUCTION": "false",
2930
"INFRAHUB_TESTING_DB_ADDRESS": "database",
@@ -38,6 +39,7 @@ class ContainerService:
3839
"INFRAHUB_TESTING_BROKER_ADDRESS": "message-queue",
3940
"INFRAHUB_TESTING_CACHE_ADDRESS": "cache",
4041
"INFRAHUB_TESTING_WORKFLOW_ADDRESS": "task-manager",
42+
"INFRAHUB_TESTING_WORKFLOW_DEFAULT_WORKER_TYPE": "infrahubasync",
4143
"INFRAHUB_TESTING_TIMEOUT": "60",
4244
"INFRAHUB_TESTING_PREFECT_API": "http://task-manager:4200/api",
4345
"INFRAHUB_TESTING_LOCAL_REMOTE_GIT_DIRECTORY": "repos",
@@ -96,6 +98,15 @@ def create_env_file(cls, directory: Path, version: str) -> Path:
9698
env_file = directory / ".env"
9799

98100
PROJECT_ENV_VARIABLES.update({"INFRAHUB_TESTING_IMAGE_VERSION": version})
101+
if os.environ.get("INFRAHUB_TESTING_ENTERPRISE"):
102+
PROJECT_ENV_VARIABLES.update(
103+
{
104+
"INFRAHUB_TESTING_DOCKER_IMAGE": "registry.opsmill.io/opsmill/infrahub-enterprise",
105+
"INFRAHUB_TESTING_DOCKER_ENTRYPOINT": f"gunicorn --config community/backend/infrahub/serve/gunicorn_config.py -w {os.environ.get("INFRAHUB_TESTING_WEB_CONCURRENCY", 4)} --logger-class infrahub.serve.log.GunicornLogger infrahub_enterprise.server:app", # noqa: E501
106+
"INFRAHUB_TESTING_WORKFLOW_DEFAULT_WORKER_TYPE": "infrahubentasync",
107+
"NEO4J_DOCKER_IMAGE": "neo4j:5.20.0-enterprise",
108+
}
109+
)
99110

100111
with env_file.open(mode="w", encoding="utf-8") as file:
101112
for key, value in PROJECT_ENV_VARIABLES.items():

python_testcontainers/infrahub_testcontainers/docker-compose.test.yml

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -102,18 +102,15 @@ services:
102102
mode: replicated
103103
replicas: ${INFRAHUB_TESTING_API_SERVER_COUNT}
104104
image: "${INFRAHUB_TESTING_DOCKER_IMAGE}:${INFRAHUB_TESTING_IMAGE_VERSION}"
105-
command: >
106-
gunicorn --config backend/infrahub/serve/gunicorn_config.py
107-
-w ${INFRAHUB_TESTING_WEB_CONCURRENCY}
108-
--logger-class infrahub.serve.log.GunicornLogger
109-
infrahub.server:app
105+
command: ${INFRAHUB_TESTING_DOCKER_ENTRYPOINT}
110106
environment:
111107
INFRAHUB_PRODUCTION: ${INFRAHUB_TESTING_PRODUCTION}
112108
INFRAHUB_LOG_LEVEL: ${INFRAHUB_TESTING_LOG_LEVEL:-INFO}
113109
INFRAHUB_BROKER_ADDRESS: ${INFRAHUB_TESTING_BROKER_ADDRESS}
114110
INFRAHUB_CACHE_ADDRESS: ${INFRAHUB_TESTING_CACHE_ADDRESS}
115111
INFRAHUB_DB_ADDRESS: ${INFRAHUB_TESTING_DB_ADDRESS}
116112
INFRAHUB_WORKFLOW_ADDRESS: ${INFRAHUB_TESTING_WORKFLOW_ADDRESS}
113+
INFRAHUB_WORKFLOW_DEFAULT_WORKER_TYPE: ${INFRAHUB_TESTING_WORKFLOW_DEFAULT_WORKER_TYPE}
117114
INFRAHUB_INITIAL_ADMIN_TOKEN: ${INFRAHUB_TESTING_INITIAL_ADMIN_TOKEN}
118115
INFRAHUB_INITIAL_AGENT_TOKEN: ${INFRAHUB_TESTING_INITIAL_AGENT_TOKEN}
119116
INFRAHUB_SECURITY_SECRET_KEY: ${INFRAHUB_TESTING_SECURITY_SECRET_KEY}
@@ -142,7 +139,7 @@ services:
142139
mode: replicated
143140
replicas: ${INFRAHUB_TESTING_TASK_WORKER_COUNT}
144141
image: "${INFRAHUB_TESTING_DOCKER_IMAGE}:${INFRAHUB_TESTING_IMAGE_VERSION}"
145-
command: prefect worker start --type infrahubasync --pool infrahub-worker --with-healthcheck
142+
command: prefect worker start --type ${INFRAHUB_TESTING_WORKFLOW_DEFAULT_WORKER_TYPE} --pool infrahub-worker --with-healthcheck
146143
environment:
147144
INFRAHUB_PRODUCTION: ${INFRAHUB_TESTING_PRODUCTION}
148145
INFRAHUB_LOG_LEVEL: ${INFRAHUB_TESTING_LOG_LEVEL}

0 commit comments

Comments
 (0)