Changeset View
Changeset View
Standalone View
Standalone View
swh/loader/package/deposit/loader.py
Show First 20 Lines • Show All 80 Lines • ▼ Show 20 Lines | ) -> "DepositPackageInfo": | ||||
author=parse_author(depo["author"]), | author=parse_author(depo["author"]), | ||||
committer=parse_author(depo["committer"]), | committer=parse_author(depo["committer"]), | ||||
revision_parents=tuple(hash_to_bytes(p) for p in depo["revision_parents"]), | revision_parents=tuple(hash_to_bytes(p) for p in depo["revision_parents"]), | ||||
raw_info=metadata, | raw_info=metadata, | ||||
revision_extrinsic_metadata=[ | revision_extrinsic_metadata=[ | ||||
RawExtrinsicMetadataCore( | RawExtrinsicMetadataCore( | ||||
format="sword-v2-atom-codemeta-v2-in-json", | format="sword-v2-atom-codemeta-v2-in-json", | ||||
metadata=raw_metadata_from_origin, | metadata=raw_metadata_from_origin, | ||||
discovery_date=None, | |||||
), | ), | ||||
], | ], | ||||
) | ) | ||||
class DepositLoader(PackageLoader[DepositPackageInfo]): | class DepositLoader(PackageLoader[DepositPackageInfo]): | ||||
"""Load pypi origin's artifact releases into swh archive. | """Load pypi origin's artifact releases into swh archive. | ||||
▲ Show 20 Lines • Show All 82 Lines • ▼ Show 20 Lines | ) -> Optional[Revision]: | ||||
) | ) | ||||
def get_extrinsic_origin_metadata(self) -> List[RawExtrinsicMetadataCore]: | def get_extrinsic_origin_metadata(self) -> List[RawExtrinsicMetadataCore]: | ||||
origin_metadata = self.metadata["origin_metadata"] | origin_metadata = self.metadata["origin_metadata"] | ||||
return [ | return [ | ||||
RawExtrinsicMetadataCore( | RawExtrinsicMetadataCore( | ||||
format="sword-v2-atom-codemeta-v2-in-json", | format="sword-v2-atom-codemeta-v2-in-json", | ||||
metadata=json.dumps(origin_metadata["metadata"]).encode(), | metadata=json.dumps(origin_metadata["metadata"]).encode(), | ||||
discovery_date=None, | |||||
) | ) | ||||
] | ] | ||||
def load(self) -> Dict: | def load(self) -> Dict: | ||||
# First making sure the deposit is known prior to trigger a loading | # First making sure the deposit is known prior to trigger a loading | ||||
try: | try: | ||||
self.metadata = self.client.metadata_get(self.deposit_id) | self.metadata = self.client.metadata_get(self.deposit_id) | ||||
except ValueError: | except ValueError: | ||||
▲ Show 20 Lines • Show All 130 Lines • Show Last 20 Lines |