Skip to content

Commit 94c215f

Browse files
fix: handle None values in metadata dictionary access
Co-Authored-By: Aaron <AJ> Steers <[email protected]>
1 parent 402d40a commit 94c215f

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

airbyte_cdk/qa/checks/metadata.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ def _run(self, connector: Connector) -> CheckResult:
100100
message="Could not infer the language tag from the connector directory",
101101
)
102102

103-
current_language_tags = [t for t in connector.metadata.get("tags", []) if t.startswith("language:")]
103+
current_language_tags = [t for t in (connector.metadata.get("tags", []) if connector.metadata else []) if t.startswith("language:")]
104104
if not current_language_tags:
105105
return self.fail(
106106
connector=connector,
@@ -170,7 +170,7 @@ def _run(self, connector: Connector) -> CheckResult:
170170
Returns:
171171
CheckResult: The result of the check
172172
"""
173-
current_cdk_tags = [t for t in connector.metadata.get("tags", []) if t.startswith("cdk:")]
173+
current_cdk_tags = [t for t in (connector.metadata.get("tags", []) if connector.metadata else []) if t.startswith("cdk:")]
174174
expected_cdk_tag = self.get_expected_cdk_tag(connector)
175175
if not current_cdk_tags:
176176
return self.fail(
@@ -217,7 +217,7 @@ def _run(self, connector: Connector) -> CheckResult:
217217
message="Can't verify breaking changes deadline: connector version is not defined.",
218218
)
219219

220-
breaking_changes = connector.metadata.get("releases", {}).get("breakingChanges")
220+
breaking_changes = (connector.metadata.get("releases", {}) if connector.metadata else {}).get("breakingChanges")
221221

222222
if not breaking_changes:
223223
return self.pass_(
@@ -270,7 +270,7 @@ def _run(self, connector: Connector) -> CheckResult:
270270
Returns:
271271
CheckResult: The result of the check
272272
"""
273-
max_seconds_between_messages = connector.metadata.get("maxSecondsBetweenMessages")
273+
max_seconds_between_messages = connector.metadata.get("maxSecondsBetweenMessages") if connector.metadata else None
274274
if not max_seconds_between_messages:
275275
return self.fail(
276276
connector=connector,

airbyte_cdk/qa/checks/packaging.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ def _run(self, connector: Connector) -> CheckResult:
280280
Returns:
281281
CheckResult: The result of the check
282282
"""
283-
if "dockerImageTag" not in connector.metadata:
283+
if not connector.metadata or "dockerImageTag" not in connector.metadata:
284284
return self.create_check_result(
285285
connector=connector,
286286
passed=False,
@@ -317,7 +317,7 @@ def _run(self, connector: Connector) -> CheckResult:
317317
Returns:
318318
CheckResult: The result of the check
319319
"""
320-
if "dockerImageTag" not in connector.metadata:
320+
if not connector.metadata or "dockerImageTag" not in connector.metadata:
321321
return self.create_check_result(
322322
connector=connector,
323323
passed=False,

airbyte_cdk/qa/checks/security.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ def _run(self, connector: Connector) -> CheckResult:
175175
message=f"Dockerfile file exists. Please remove it and declare the base image in {consts.METADATA_FILE_NAME} file with the `connectorBuildOptions.baseImage` key",
176176
)
177177

178-
base_image = connector.metadata.get("connectorBuildOptions", {}).get("baseImage")
178+
base_image = (connector.metadata.get("connectorBuildOptions", {}) if connector.metadata else {}).get("baseImage")
179179
if not base_image:
180180
return self.create_check_result(
181181
connector=connector,

0 commit comments

Comments
 (0)