1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-12-29 11:16:14 +01:00

Allow osc rpmlint to infer prj/pkg from CWD.

Makes `osc rpmlint` infer the project and package when working from a
locally checked out package dir, if two or fewer arguments are passed.
All four arguments are still required when called from a location that
is not an osc package working copy.

This makes the behaviour of `osc rpmlint` similar to `osc buildlogtail`.
This commit is contained in:
Atri Bhattacharya 2024-02-24 01:39:50 +05:30
parent af24f3c75a
commit 78b07e6e1f

View File

@ -6206,7 +6206,23 @@ Please submit there instead, or use --nodevelproject to force direct submission.
apiurl = self.get_api_url()
args = slash_split(args)
if len(args) == 4:
if len(args) <= 3:
project = store_read_project(Path.cwd())
package = store_read_package(Path.cwd())
if len(args) == 1:
repository, arch = self._find_last_repo_arch(args[0], fatal=False)
if repository is None:
# no local build with this repo was done
print('failed to guess arch, using hostarch')
repository = args[0]
arch = osc_build.hostarch
elif len(args) == 2:
repository, arch = args
elif len(args) == 3:
raise oscerr.WrongArgs('Too many arguments.')
else: # len(args) = 0 case
self.print_repos()
elif len(args) == 4:
project, package, repository, arch = args
else:
raise oscerr.WrongArgs('please provide project package repository arch.')