Skip to content

Commit a152055

Browse files
Completes OPEN-3508 Add option to skip certain resource validations for the CommitBundleValidator class
1 parent 90397f1 commit a152055

File tree

2 files changed

+18
-5
lines changed

2 files changed

+18
-5
lines changed

openlayer/__init__.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -973,7 +973,9 @@ def push(self, project_id: int):
973973

974974
# Validate bundle resources
975975
commit_bundle_validator = validators.CommitBundleValidator(
976-
bundle_path=project_dir
976+
bundle_path=project_dir,
977+
skip_dataset_validation=True,
978+
skip_model_validation=False, # Don't skip because the sample data is different
977979
)
978980
failed_validations = commit_bundle_validator.validate()
979981

openlayer/validators.py

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,22 @@ class CommitBundleValidator:
3131
----------
3232
bundle_path : str
3333
The path to the commit bundle (staging area, if for the Python API).
34+
skip_model_validation : bool
35+
Whether to skip model validation, by default False
36+
skip_dataset_validation : bool
37+
Whether to skip dataset validation, by default False
3438
"""
3539

36-
def __init__(self, bundle_path: str):
40+
def __init__(
41+
self,
42+
bundle_path: str,
43+
skip_model_validation: bool = False,
44+
skip_dataset_validation: bool = False,
45+
):
3746
self.bundle_path = bundle_path
3847
self._bundle_resources = self._list_resources_in_bundle()
48+
self._skip_model_validation = skip_model_validation
49+
self._skip_dataset_validation = skip_dataset_validation
3950
self.failed_validations = []
4051

4152
def _validate_bundle_state(self):
@@ -113,7 +124,7 @@ def _validate_bundle_resources(self):
113124
"""Runs the corresponding validations for each resource in the bundle."""
114125
bundle_resources_failed_validations = []
115126

116-
if "training" in self._bundle_resources:
127+
if "training" in self._bundle_resources and not self._skip_dataset_validation:
117128
training_set_validator = DatasetValidator(
118129
dataset_config_file_path=f"{self.bundle_path}/training/dataset_config.yaml",
119130
dataset_file_path=f"{self.bundle_path}/training/dataset.csv",
@@ -122,7 +133,7 @@ def _validate_bundle_resources(self):
122133
training_set_validator.validate()
123134
)
124135

125-
if "validation" in self._bundle_resources:
136+
if "validation" in self._bundle_resources and not self._skip_dataset_validation:
126137
validation_set_validator = DatasetValidator(
127138
dataset_config_file_path=f"{self.bundle_path}/validation/dataset_config.yaml",
128139
dataset_file_path=f"{self.bundle_path}/training/dataset.csv",
@@ -131,7 +142,7 @@ def _validate_bundle_resources(self):
131142
validation_set_validator.validate()
132143
)
133144

134-
if "model" in self._bundle_resources:
145+
if "model" in self._bundle_resources and not self._skip_model_validation:
135146
model_files = os.listdir(f"{self.bundle_path}/model")
136147
# Shell model
137148
if len(model_files) == 1:

0 commit comments

Comments
 (0)