| """Task registry for the environment.""" |
|
|
|
|
| from typing import Dict, Type |
|
|
| from server.tasks.base import BaseTask |
| from server.tasks.task_1_build_errors import DockerfileSyntaxTask |
| from server.tasks.task_2_docker_runtime import DockerfileRuntimeTask |
| from server.tasks.task_3_workflow_syntax import WorkflowSyntaxStructureTask |
| from server.tasks.task_4_workflow_secrets_permissions import WorkflowSecretsPermissionsTask |
| from server.tasks.task_5_ci_docker_integration import CIDockerIntegrationTask |
| from server.tasks.task_6_multi_stage_matrix import MultiStageMatrixTask |
| from server.tasks.k8s_pod import K8sPodTask |
| from server.tasks.k8s_networking import K8sNetworkingTask |
| from server.tasks.pipeline_build_deploy import PipelineBuildDeployTask |
| from server.tasks.pipeline_full import PipelineFullTask |
|
|
| TASK_REGISTRY: Dict[str, Type[BaseTask]] = { |
| "dockerfile_syntax": DockerfileSyntaxTask, |
| "dockerfile_runtime": DockerfileRuntimeTask, |
| "workflow_syntax_structure": WorkflowSyntaxStructureTask, |
| "workflow_secrets_permissions": WorkflowSecretsPermissionsTask, |
| "ci_docker_integration": CIDockerIntegrationTask, |
| "multi_stage_pipeline_matrix": MultiStageMatrixTask, |
| "k8s_pod_failures": K8sPodTask, |
| "k8s_networking": K8sNetworkingTask, |
| "pipeline_build_deploy": PipelineBuildDeployTask, |
| "pipeline_full_stack": PipelineFullTask, |
| } |
|
|
|
|
| def get_task(task_id: str) -> BaseTask: |
| if task_id not in TASK_REGISTRY: |
| raise ValueError(f"Unknown task: {task_id}") |
| return TASK_REGISTRY[task_id]() |
|
|