swh.loader.bzr.loader module#
This document contains a SWH loader for ingesting repository data from Bazaar or Breezy.
- exception swh.loader.bzr.loader.UnknownRepositoryFormat[source]#
- Bases: - Exception- The repository we’re trying to load is using an unknown format. It’s possible (though unlikely) that a new format has come out, we should check before dismissing the repository as broken or unsupported. 
- class swh.loader.bzr.loader.BzrDirectory(data=None)[source]#
- Bases: - Directory- A more practical directory to create missing parent directories when adding a path. 
- swh.loader.bzr.loader.sort_changes(change: TreeChange) str[source]#
- Key function for sorting the changes by path. - Sorting allows us to group the folders together (for example “b”, then “a/a”, then “a/b”). Reversing this sort in the sorted() call will make it so the files appear before the folder (“a/a”, then “a”) if the folder has changed. This removes a bug where the order of operations is: - “a” goes from directory to file, removing all of its subtree 
- “a/a” is removed, but our structure has already forgotten it 
 
- class swh.loader.bzr.loader.BazaarLoader(storage: StorageInterface, url: str, directory: str | None = None, visit_date: datetime | None = None, temp_directory: str = '/tmp', clone_timeout_seconds: int = 7200, check_revision: int = 0, **kwargs: Any)[source]#
- Bases: - BaseLoader- Loads a Bazaar repository - pre_cleanup() None[source]#
- As a first step, will try and check for dangling data to cleanup. This should do its best to avoid raising issues. 
 - prepare() None[source]#
- Second step executed by the loader to prepare some state needed by the loader. 
 - load_status() Dict[str, str][source]#
- Detailed loading status. - Defaults to logging an eventful load. - Returns: a dictionary that is eventually passed back as the task’s
- result to the scheduler, allowing tuning of the task recurrence mechanism. 
 
 - run_upgrade()[source]#
- Upgrade both repository and branch to the most recent supported version to be compatible with the loader. 
 - fetch_data() bool[source]#
- Fetch the data from the source the loader is currently loading - Returns:
- a value that is interpreted as a boolean. If True, fetch_data needs to be called again to complete loading. 
 
 - store_release(name: bytes, target: bytes) bytes[source]#
- Store a release given its name and its target. - Parameters:
- name – name of the release. 
- target – sha1_git of the target revision. 
 
- Returns:
- the sha1_git of the stored release.