|
20 | 20 | from metadata_service.models.transform import to_json_sanitized_dict
|
21 | 21 | from metadata_service.spec_cache import SpecCache
|
22 | 22 | from orchestrator.config import MAX_METADATA_PARTITION_RUN_REQUEST, VALID_REGISTRIES, get_public_url_for_gcs_file
|
| 23 | +from orchestrator.fetcher.connector_cdk_version import get_cdk_version |
23 | 24 | from orchestrator.logging import sentry
|
24 | 25 | from orchestrator.logging.publish_connector_lifecycle import PublishConnectorLifecycle, PublishConnectorLifecycleStage, StageStatus
|
25 | 26 | from orchestrator.models.metadata import LatestMetadataEntry, MetadataDefinition
|
@@ -171,6 +172,22 @@ def apply_generated_fields(metadata_data: dict, metadata_entry: LatestMetadataEn
|
171 | 172 | return generated_fields
|
172 | 173 |
|
173 | 174 |
|
| 175 | +@deep_copy_params |
| 176 | +def apply_package_info_fields(metadata_data: dict, metadata_entry: LatestMetadataEntry) -> dict: |
| 177 | + """Apply package info fields to the metadata data field. |
| 178 | +
|
| 179 | + Args: |
| 180 | + metadata_data (dict): The metadata data field. |
| 181 | +
|
| 182 | + Returns: |
| 183 | + dict: The metadata data field with the package info fields applied. |
| 184 | + """ |
| 185 | + package_info_fields = metadata_data.get("packageInfo") or {} |
| 186 | + package_info_fields = set_with(package_info_fields, "cdk_version", get_cdk_version(metadata_entry), default_none_to_dict) |
| 187 | + |
| 188 | + return package_info_fields |
| 189 | + |
| 190 | + |
174 | 191 | @deep_copy_params
|
175 | 192 | @sentry_sdk.trace
|
176 | 193 | def metadata_to_registry_entry(metadata_entry: LatestMetadataEntry, override_registry_key: str) -> dict:
|
@@ -214,6 +231,9 @@ def metadata_to_registry_entry(metadata_entry: LatestMetadataEntry, override_reg
|
214 | 231 | # Add generated fields for source file metadata and git
|
215 | 232 | overridden_metadata_data["generated"] = apply_generated_fields(overridden_metadata_data, metadata_entry)
|
216 | 233 |
|
| 234 | + # Add Dependency information |
| 235 | + overridden_metadata_data["packageInfo"] = apply_package_info_fields(overridden_metadata_data, metadata_entry) |
| 236 | + |
217 | 237 | # if there is no supportLevel, set it to "community"
|
218 | 238 | if not overridden_metadata_data.get("supportLevel"):
|
219 | 239 | overridden_metadata_data["supportLevel"] = "community"
|
|
0 commit comments