wfexs_backend.fetchers.git#
Module Contents#
Classes#
Data#
API#
- wfexs_backend.fetchers.git.GITHUB_NETLOC = 'github.com'#
- class wfexs_backend.fetchers.git.GitFetcher(scheme_catalog: wfexs_backend.scheme_catalog.SchemeCatalog, progs: wfexs_backend.common.ProgsMapping = dict(), setup_block: Mapping[str, Any] | None = None)#
Bases:
wfexs_backend.fetchers.AbstractSchemeRepoFetcher- DEFAULT_GIT_CMD: Final[SymbolicName] = 'cast(...)'#
- HEAD_LABEL: Final[Ref] = 'cast(...)'#
- classmethod GetSchemeHandlers() Mapping[str, DocumentedStatefulProtocolFetcher]#
- classmethod GetNeededPrograms() Sequence[SymbolicName]#
- classmethod _find_git_repo_in_uri(remote_file: URIType | parse.ParseResult, offline: bool = False) Tuple[RemoteRepo, Sequence[str], Sequence[RepoTag]]#
- classmethod GuessRepoParams(wf_url: URIType | parse.ParseResult, logger: logging.Logger | None = None, fail_ok: bool = False, offline: bool = False) RemoteRepo | None#
When it is in offline mode, GuessRepoParams can raise an OfflineRepoGuessException
- build_pid_from_repo(remote_repo: wfexs_backend.fetchers.RemoteRepo) str | None#
This method is required to generate a PID which usually represents an element (usually a workflow) in a repository. If the fetcher does not recognize the type of repo, either using repo_url content or the repo type in the worst case, it should return None
- materialize_repo_from_repo(repo: wfexs_backend.fetchers.RemoteRepo, repo_tag_destdir: PathLikePath | None = None, base_repo_destdir: PathLikePath | None = None, doUpdate: bool | None = True) wfexs_backend.fetchers.MaterializedRepo#
- Parameters:
repoURL – The URL to the repository.
repoTag – The tag or branch to checkout.
By default, checkout the repository’s default branch. :param doUpdate: :return:
- fetch(remote_file: wfexs_backend.common.URIType, cachedFilename: wfexs_backend.common.PathLikePath, secContext: SecurityContextConfig | None = None, explicit_redirects: bool = False) wfexs_backend.fetchers.ProtocolFetcherReturn#