pattern: Use URL network location as instance name when not provided
Make the instance parameter of the base pattern lister optional and set lister name to URL network location when not provided. It simplifies lister creation when associated forge type have a lot of instances in the wild (e.g. gitlab or cgit) while giving more details about the listed forge instance. Also process listers for forge with multiple instances (cgit, gitea, gitlab, phabricator and tuleap) to ensure URL network location will be used when instance parameter is not provided. Related to T3403
This commit is contained in:
parent
df46b22098
commit
6c12350863
7 changed files with 33 additions and 28 deletions
|
@ -58,16 +58,12 @@ class CGitLister(StatelessLister[Repositories]):
|
|||
Args:
|
||||
url: main URL of the CGit instance, i.e. url of the index
|
||||
of published git repositories on this instance.
|
||||
instance: Name of cgit instance. Defaults to url's hostname
|
||||
instance: Name of cgit instance. Defaults to url's network location
|
||||
if unset.
|
||||
base_git_url: Optional base git url which allows the origin url
|
||||
computations.
|
||||
|
||||
"""
|
||||
if not instance:
|
||||
instance = urlparse(url).hostname
|
||||
assert instance is not None # Make mypy happy
|
||||
|
||||
super().__init__(
|
||||
scheduler=scheduler, url=url, instance=instance, credentials=credentials,
|
||||
)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue