Skip to content

Owner Search

Dany Marcoux edited this page Aug 24, 2022 · 38 revisions

Owner Search

Owners are users/groups with the maintainer or bugowner roles in the given project/package. There are 5 OwnerSearch classes with OwnerSearch::Base being the parent of the 4 other children classes. They have different behaviors depending on the hash key-value pairs passed to their initializer. The key-value pairs with possible effects are attribute, devel, filter, limit and project. Other key-value pairs are ignored. See below how each class works.

OwnerSearch::Assignee

Search for owners by looking at the binaries of packages in projects. attribute, devel and project will considerably change how this is done.

attribute

By default when no attribute is provided, only consider projects with the attribute 'OBS:OwnerRootProject'. Consider projects with a different attribute by providing this key-value pair.

devel

A value of '0' or 'false' will not consider devel packages when searching for owners.

filter

By default, owners are either maintainers or bugowners, unless 'BugownerOnly' is defined on the attribute (see attribute above). Specify in a comma-separated list which roles you are instead looking for (like bugowner,reviewer).

limit

A value of -1 will return only the owner of the deepest package in terms of project levels (like home:Admin/ctris vs home:Admin/subproject1/ctris).

A value of 0 will return all owners.

A value of 1 or higher will return at most this amount of owners. There might not be even that many owners.

project

Only consider this project (like home:Admin), thus ignoring the attribute key-pair.

OwnerSearch::Container

When passing a package to #for, look for owners in the package's project and its parent projects. When passing a project, look for owners in the project and its parent projects.

filter

By default, owners are either maintainers or bugowners, unless 'BugownerOnly' is defined on the attribute (see attribute above). Specify in a comma-separated list which roles you are instead looking for (like bugowner,reviewer).

attribute, devel, limit and project

It does not have any effect.

OwnerSearch::Missing

Search for projects without owners. attribute and project will considerably change how this is done.

attribute

By default when no attribute is provided, search for projects with the attribute 'OBS:OwnerRootProject'. Search for projects with a different attribute by providing one to this key-value pair.

filter

By default, owners are either maintainers or bugowners, unless 'BugownerOnly' is defined on the attribute (see attribute above). Specify in a comma-separated list which roles you are instead looking for (like bugowner,reviewer).

project

Only consider the given project (like home:Admin)

devel, limit

It does not have any effect.

OwnerSearch::Owned

Search for packages/projects which are owned by a given user/group. In this context, owned means having a specific role in the package/project. attribute and filter will considerably affect what is returned. As for project, it will affect what is searched.

attribute

By default when no attribute is provided, search for projects with the attribute 'OBS:OwnerRootProject'. Search for projects with a different attribute by providing one to this key-value pair.

filter

By default, owners are either maintainers or bugowners, unless 'BugownerOnly' is defined on the attribute (see attribute above). Specify in a comma-separated list which roles you are instead looking for (like bugowner,reviewer).

project

Search only in this project (like home:Admin)

devel, limit

It does not have any effect.

Clone this wiki locally