Changeset View
Changeset View
Standalone View
Standalone View
helm/dagster/schema/schema_tests/test_instance.py
import pytest | import pytest | ||||
import yaml | import yaml | ||||
from dagster.core.run_coordinator import QueuedRunCoordinator | from dagster.core.run_coordinator import QueuedRunCoordinator | ||||
from dagster_aws.s3.compute_log_manager import S3ComputeLogManager | from dagster_aws.s3.compute_log_manager import S3ComputeLogManager | ||||
from dagster_azure.blob.compute_log_manager import AzureBlobComputeLogManager | from dagster_azure.blob.compute_log_manager import AzureBlobComputeLogManager | ||||
from dagster_gcp.gcs.compute_log_manager import GCSComputeLogManager | from dagster_gcp.gcs.compute_log_manager import GCSComputeLogManager | ||||
from kubernetes.client import models | from kubernetes.client import models | ||||
from schema.charts.dagster.subschema.compute_log_manager import ( | from schema.charts.dagster.subschema.compute_log_manager import ( | ||||
AzureBlobComputeLogManager as AzureBlobComputeLogManagerModel, | AzureBlobComputeLogManager as AzureBlobComputeLogManagerModel, | ||||
) | ) | ||||
from schema.charts.dagster.subschema.compute_log_manager import ( | from schema.charts.dagster.subschema.compute_log_manager import ( | ||||
ComputeLogManager, | |||||
ComputeLogManagerType, | |||||
) | |||||
from schema.charts.dagster.subschema.compute_log_manager import ( | |||||
GCSComputeLogManager as GCSComputeLogManagerModel, | GCSComputeLogManager as GCSComputeLogManagerModel, | ||||
) | ) | ||||
from schema.charts.dagster.subschema.compute_log_manager import ( | from schema.charts.dagster.subschema.compute_log_manager import ( | ||||
S3ComputeLogManager as S3ComputeLogManagerModel, | S3ComputeLogManager as S3ComputeLogManagerModel, | ||||
) | ) | ||||
from schema.charts.dagster.subschema.daemon import ( | from schema.charts.dagster.subschema.daemon import ( | ||||
ConfigurableClass, | ConfigurableClass, | ||||
Daemon, | Daemon, | ||||
▲ Show 20 Lines • Show All 131 Lines • ▼ Show 20 Lines | def test_custom_run_coordinator_config(template: HelmTemplate): | ||||
instance = yaml.full_load(configmaps[0].data["dagster.yaml"]) | instance = yaml.full_load(configmaps[0].data["dagster.yaml"]) | ||||
assert instance["run_coordinator"]["module"] == module | assert instance["run_coordinator"]["module"] == module | ||||
assert instance["run_coordinator"]["class"] == class_ | assert instance["run_coordinator"]["class"] == class_ | ||||
assert instance["run_coordinator"]["config"] == config | assert instance["run_coordinator"]["config"] == config | ||||
@pytest.mark.parametrize( | @pytest.mark.parametrize( | ||||
"compute_log_manager_type", | |||||
[ComputeLogManagerType.NOOP, ComputeLogManagerType.LOCAL], | |||||
ids=["noop", "local compute log manager becomes noop"], | |||||
) | |||||
def test_noop_compute_log_manager( | |||||
template: HelmTemplate, compute_log_manager_type: ComputeLogManagerType | |||||
): | |||||
helm_values = DagsterHelmValues.construct( | |||||
computeLogManager=ComputeLogManager.construct(type=compute_log_manager_type) | |||||
) | |||||
configmaps = template.render(helm_values) | |||||
instance = yaml.full_load(configmaps[0].data["dagster.yaml"]) | |||||
compute_logs_config = instance["compute_logs"] | |||||
assert compute_logs_config["module"] == "dagster.core.storage.noop_compute_log_manager" | |||||
assert compute_logs_config["class"] == "NoOpComputeLogManager" | |||||
@pytest.mark.parametrize( | |||||
argnames=["json_schema_model", "compute_log_manager_class"], | argnames=["json_schema_model", "compute_log_manager_class"], | ||||
argvalues=[ | argvalues=[ | ||||
(AzureBlobComputeLogManagerModel, AzureBlobComputeLogManager), | (AzureBlobComputeLogManagerModel, AzureBlobComputeLogManager), | ||||
(GCSComputeLogManagerModel, GCSComputeLogManager), | (GCSComputeLogManagerModel, GCSComputeLogManager), | ||||
(S3ComputeLogManagerModel, S3ComputeLogManager), | (S3ComputeLogManagerModel, S3ComputeLogManager), | ||||
], | ], | ||||
) | ) | ||||
def test_compute_log_manager_has_schema(json_schema_model, compute_log_manager_class): | def test_compute_log_manager_has_schema(json_schema_model, compute_log_manager_class): | ||||
Show All 19 Lines |