1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-09-21 09:46:19 +02:00
Commit Graph

2700 Commits

Author SHA1 Message Date
marco
3a5bd607f8 fixes broken osc results on project level 2017-10-18 15:17:56 +02:00
Marcus Huewe
760a3e5558 Merge branch 'show_overview_in_diff' of https://github.com/lethliel/osc
Show request details, when displaying a diff in the interactive
review mode.
2017-10-11 13:30:48 +02:00
marco
4f518b5e59 prepend request summary to diff in interactive mode 2017-10-11 08:55:55 +02:00
Marcus Huewe
0eecdaf830 Add missing comment
Follow-up commit for f6f879d.
2017-10-10 16:36:58 +02:00
Marcus Huewe
f6f879dac5 Fix potential shell injection when running rpm2cpio
Actually, there is nothing that can be injected, except the "-h"
option. However, in case rpm2cpio evolves, we are on the safe side.
Also, document the potential shell injection in the cpio call
(the comment was accidentally removed in commit dbdc712) (the
current osc code is not affected, because we never pass filenames
via *files to core.unpack_srcrpm).
2017-10-10 16:24:42 +02:00
Marcus Huewe
a5c7611aee Support unusual filenames in "osc add <directory>"
This way, we can also support directories/files that contain
a newline "\n" etc.
2017-10-10 16:18:45 +02:00
Marcus Huewe
c3ba1fbf63 Eventually fix potential shell injections for find
It seems that the "find" binary has no way to indicate an
end of options for its arguments. Hence, we use os.walk to mimic
"find"'s behavior, which is also the cleaner solution.

Fixes: #340 ("osc add of directories does not quote the argument")
2017-10-10 16:18:39 +02:00
Marcus Huewe
d66ccb2a7d Cleanup babysitter a bit
In case of an exception, return status code 1 by default.
2017-10-06 13:25:25 +02:00
Marcus Huewe
6acc90d438 Exit with status 1 in case of a ServiceRuntimeError
Fixes: #344 ("'osc ci' exit code doesn't take source service results
       into account")
2017-10-06 13:19:15 +02:00
Marcus Huewe
760d4d65d7 Supersede existing requests if --yes is passed to "osc sr"
This basically reverts commit b2b59ca, because the old code performed
a "no" instead of a "yes" (see also the discussion in
https://github.com/openSUSE/osc/pull/269).

Fixes: #343 ("'osc sr --yes ...' doesn't supersede existing requests
       as promised")
2017-10-06 12:32:52 +02:00
Marcus Huewe
aea395a7e7 Document 'R' (replaced) file state
Fixes: #336 ("Missing explanation for status 'R'")
2017-10-03 22:05:41 +02:00
Marcus Huewe
f52cf7745a Take --repo/--arch options in "osc prjresults --xml..." into account
Fixes: #341 ("prjresults doesn't support repo/arch options")
2017-09-28 15:55:11 +02:00
Marcus Huewe
8a81a68028 Cleanup url construction in core.show_results_meta
The old code was flawed, because, for instance,
core.show_results_meta(apiurl, project, arch=['x86_64']) resulted
in a wrong http request: GET <apiurl>/build/<project>/_result&arch=x86_64
(note the "&" instead of the correct "?"). The drawback of the new
implementation is that we have to do the proper quoting manually.
2017-09-28 15:52:25 +02:00
Marcus Huewe
2d327df4e7 Allow multiple --repo and --arch options in "osc prjresults"
This harmonizes "osc prjresults --help" with osc's actual behavior.
Also, core.get_prj_results expects lists (or None) instead of strings
for the corresponding repo/arch parameters.
2017-09-28 15:29:48 +02:00
Marcus Huewe
dbdc712018 Really fix potential shell injections
This is a follow-up commit for commit c9c0f8a. Using core.run_external
with shell=True is too error-prone.

Fixes: #340 ("osc add of directories does not quote the argument")
2017-09-28 14:48:30 +02:00
Marcus Huewe
63c2aa3630 Do not run diff3 in the shell
This fixes a potential shell injection.

See also: #340 ("osc add of directories does not quote the argument")
2017-09-28 12:03:53 +02:00
Marcus Huewe
c9c0f8a731 Fix potential shell injections
Also, document a potential shell injection in core.unpack_srcrpm
(via the "files" parameter), which cannot be exploited, because
"files" is not used by the current osc code.

Fixes: #340 ("osc add of directories does not quote the argument")
2017-09-28 00:09:42 +02:00
Marcus Huewe
08504a1509 Merge branch 'lintlog_in_interactive_review' of https://github.com/lethliel/osc
Add support for showing rpmlint logs during interactive review.
2017-09-26 23:47:38 +02:00
marco
b59d40c57c show lintlog (li) in interactive mode 2017-09-26 20:20:02 +02:00
Marcus Huewe
3389db2c8f Merge branch 'repotype-pacsuffix-hint' of https://github.com/Conan-Kudo/osc
Use the buildconfig's binarytype to determine the correct pacsuffix
(TODO: cleanup Buildinfo pacsuffix code a bit).
2017-09-26 14:06:29 +02:00
Neal Gompa
ef9b308d50 Add pacsuffix hint using BinaryType from build config 2017-09-26 07:57:59 -04:00
Marcus Huewe
c2922e8a67 Open 0.161 development 2017-09-26 12:45:48 +02:00
73e8e3e97b prepare 0.160.0 release
mainly needed for new container support
2017-09-22 09:06:18 +02:00
Marcus Huewe
b07ba53ad0 Allow slash separated arguments in "osc rpmlintlog" 2017-09-01 10:51:28 +02:00
Marcus Huewe
38af00d509 Merge branch 'rpmlint' of https://github.com/lethliel/osc
Add new "osc rpmlint" command to retrieve the rpmlint.log file (if
present).
2017-09-01 10:49:16 +02:00
marco
99309db315 show rpmlint.log
Provide function to show the content of rpmlint.log.
The core function get_rpmlint_log will later be used in the interactive
request mode to provide the rpmlint logs to the reviewer.

I add the osc rpmlint | rpmlintlog | lint command also.
2017-09-01 10:27:05 +02:00
Marcus Huewe
c2a4d14c42 Merge branch 'patch-2' of https://github.com/jnweiger/osc
Fix UnboundLocalError in do_submitrequest.
2017-09-01 09:45:35 +02:00
Jürgen Weigert
2e6c838d66 submitreq entire project fix
`osc submitreq TARGETPROJ`
bails out with unbound variable t. This is true. the variable should be target_project.
2017-08-31 14:58:22 +02:00
3a41ae64f0
osc tr: show the time when the event happened 2017-08-31 13:57:21 +02:00
Marcus Huewe
e0bce5652a Merge branch 'show_comments_in_reviews' of https://github.com/lethliel/osc
Show the comments of a request during interactive review.
2017-08-25 13:23:17 +02:00
marco
7804a8c577 show user comments in interactive mode 2017-08-25 11:51:55 +02:00
Marcus Huewe
28368ecd4a Document possible action types for "osc rq --type <TYPE>"
The "group" action type is omitted on purpose, because it is not/was
never supported.
2017-08-24 12:14:25 +02:00
Marcus Huewe
1c21c67659 Do not ignore --type parameter in "osc review list --type..."
There is no reason why we should ignore the --type parameter in this
case.
2017-08-24 12:01:56 +02:00
marco
10e6619250 renamed get_group to get_group_meta. 2017-08-21 10:37:07 +02:00
Marcus Huewe
8746ea7ee3 Merge branch 'meta_group' of https://github.com/lethliel/osc
Add "group" subcommand to "osc meta".
2017-08-18 15:42:27 +02:00
marco
a261c73cce add meta group function to edit / show group meta 2017-08-18 15:32:27 +02:00
Marcus Huewe
902b48fd86 Add withfullhistory parameter to core.get_request_list
If withfullhistory is set to True (default: False), the returned
request collection contains full history information.

Requested by vpereira
2017-08-17 16:48:02 +02:00
Marcus Huewe
d401eb2c69 Add queries keyword argument to core.search
queries is a dict of optional http query parameters, which are passed
to the makeurl call.
2017-08-17 16:47:05 +02:00
Marcus Huewe
1524214060 Merge branch 'add_package_filter' of https://github.com/lethliel/osc
Add --target-package-filter option to do_request.
2017-08-17 10:34:41 +02:00
marco
af8b1e77f7 add --target-package-filter option to osc review
This will filter the requests you get to review based on
the tgt_package in the action element (if not action type is 'group').

This helps reviewers who want to just review a subset of requests or
do _not_ want to review some packages.

Examples:

osc review list --interactive --target-package-filter='^python.*' -G opensuse-review-team
osc review list --interactive --target-package-filter='^(?!ghc).*' -G opensuse-review-team
2017-08-17 10:14:02 +02:00
Bernhard M. Wiedemann
3dcd359eeb Check digest of modified files
this reverts a semantic change introduced by commit
48a35fed91
that caused files with updated timestamps to always be in "M" state.
2017-08-17 04:32:08 +00:00
Marcus Huewe
d126d07787 Fix typo in docstr of do_triggerreason
The command is called "triggerreason" instead of "reason".
2017-08-15 16:39:32 +02:00
Marcus Huewe
a170e1236b Merge branch 'fix_#314' of https://github.com/lethliel/osc
Add "--multibuild-package" option to do_triggerreason
2017-08-15 16:38:45 +02:00
marco
ad6b9cfd0a added -M switch to osc triggerreason 2017-08-15 15:18:41 +02:00
Marcus Huewe
48a35fed91 Add config option for the Package.status mtime heuristic
By default, the "status_mtime_heuristic" config option is disabled.
2017-08-15 13:31:10 +02:00
Bernhard M. Wiedemann
47834b3279 allow to get old status behaviour back 2017-08-12 22:10:41 +02:00
Bernhard M. Wiedemann
f1f6e9501d speedup osc status
by using mtime metadata
before checking digests.
This slightly changes the semantic by assuming that modified files
will always have updated timestamps.

With this change it is possible to do osc status
on a checkout of openSUSE:Factory that contains 40GB of source tarballs
in seconds instead of minutes:
time .../osc/osc-wrapper.py status > /dev/null

real    0m33.652s
user    0m32.590s
sys     0m1.060s

Without the patch it took 22x as long:
real    12m14.545s
user    1m50.084s
sys     0m20.566s
2017-08-12 22:07:25 +02:00
Bernhard M. Wiedemann
461d83d722 cleanup status code
to only call os.path.join once
2017-08-12 22:07:25 +02:00
Marcus Huewe
d34e0ace77 Also consider the project name in findpacs
Otherwise, we could merge two packages that belong to different projects.
Actually, we should also check the apiurls...
2017-08-04 14:51:34 +02:00
Marcus Huewe
853ab4f758 Fix computation of files dict in Osc._commit
The old implementation was unable to commit specific files from
packages, which have the same name, but belong to different projects.
2017-08-04 14:48:01 +02:00