286 Commits

Author SHA1 Message Date
Jimmy Berry
a0613bdc74 osclib/stagingapi: create_adi_project(): add :Staging passthru project.
This allows for project configuration to be injected.
2017-08-30 08:35:06 -05:00
48885df63e stagingapi: Fix typo in _frozenlinks 2017-08-25 18:51:18 +08:00
Jimmy Berry
bf5ae3d366 Merge pull request #1093 from jberry-suse/repo_checker-ignore-from-staging-and-dvd
repo_checker: rework to handle multiple stagings per group and proper repo layering.
2017-08-24 22:25:09 -05:00
Jimmy Berry
cfc21469fd stagingapi: provide staging_walk() to cleanly handle :DVD subproject. 2017-08-24 21:47:05 -05:00
Ludwig Nussel
adeb4c4dfe Merge pull request #1080 from nilxam/freeze_adi
Freeze Cmd: Implement freezing adi staging project
2017-08-24 12:54:43 +02:00
773ce3904b Freeze Cmd: Implement freezing adi staging project
Since we have introduced the source project expand function in adi staging
project, a new function to freeze a adi staging project is needed as well.
2017-08-23 17:09:42 +08:00
Jimmy Berry
65d0de2eca stagingapi: avoid making an empty package-diff comment. 2017-08-22 15:33:03 -05:00
29939067bf stagingapi: Ensure the links is valid before processing
Make sure the links of package in Rings must are valid before processing,
otherwise someone had package linked to the Ring package in somewhere else than
Rings will breaks select/delete/rm_to_prj, ie. _link will be created. Therefore,
only return the candidate if it has proper linked from another ring and have
different package name.
2017-08-22 04:52:30 +08:00
Jimmy Berry
85dbc57f12 stagingapi: provide dashboard_content_{load,save,ensure}() and utilize. 2017-07-27 23:52:58 -05:00
6511997d29 Use frozenlinks for submission from the specific project 2017-06-30 18:28:46 +08:00
Jimmy Berry
dec63ca6fd stagingapi: copy request to avoid adding prefix to meta. 2017-06-19 17:30:09 -05:00
Jimmy Berry
9052ca7182 stagingapi: skip supersede for next comment by updating requests_comment. 2017-06-14 22:28:59 -05:00
Jimmy Berry
02ee26b3ed Merge pull request #931 from jberry-suse/supersede-diff-types
stagingapi: rework supersede logic to handle different request types.
2017-06-01 10:39:21 +02:00
Jimmy Berry
d93a3f6ca1 Merge pull request #934 from jberry-suse/select-comment-diff
stagingapi: update_status_comments() provide diff comments.
2017-06-01 10:37:45 +02:00
Jimmy Berry
a78fd6a15d stagingapi: update_status_comments() provide diff comments.
Instead of always providing a full comment whenever packages are added
an original comment will be posted and diff comments will be replied to
the original comment. The diff comments will provide a summary of what
changed while the complete state can be seen in the project pseudometa.
2017-06-01 10:12:18 +02:00
Jimmy Berry
7bd6e44c4f stagingapi: provide get_prj_meta_revision(). 2017-06-01 10:12:09 +02:00
Jimmy Berry
c9608507ae stagingapi: update_status_comments() utilize newer comment APIs.
- comment_find()
- add_marker()
2017-06-01 10:10:12 +02:00
Jimmy Berry
e74ce20953 stagingapi: get_prj_pseudometa() provide revision parameter. 2017-06-01 10:10:12 +02:00
Jimmy Berry
99a6de7798 stagingapi: get_prj_meta() provide revision parameter. 2017-06-01 10:10:12 +02:00
Jimmy Berry
fb76fb87b9 stagingapi: rework supersede logic to handle different request types.
Additionally, this treats revoked or superseded requests as always to
be replaced if a new requests is available.
2017-05-31 10:32:03 +02:00
Jimmy Berry
39799f0235 stagingapi: include new request ID in supersede review message. 2017-05-31 10:08:42 +02:00
Jimmy Berry
df9f89b2b7 stagingapi: handle old source removed and assume supersede. 2017-05-31 08:56:42 +02:00
Jimmy Berry
8996c4c2ab stagingapi: save_file_content() provide comment optional parameter. 2017-05-12 00:37:02 -05:00
28a0ee0c8e Merge pull request #881 from nilxam/map_rings_fix
Refactor map_ring_package_to_subject to support corner case
2017-05-05 06:55:32 -05:00
edec29c6e1 Refactor map_ring_package_to_subject to support corner case
We have a corner case that package A in Ring2 and points to package B in Ring1,
map_ring_package_to_subject have to handle that as another non-inner project
link case, ie. the sub-package link must be created.

https://github.com/openSUSE/osc-plugin-factory/issues/876
2017-05-05 19:05:27 +08:00
Jimmy Berry
83aac77c6a stagingapi: project_status_requests(): provide filter function. 2017-05-04 15:00:04 -05:00
Jimmy Berry
ed1dc8b788 stagingapi: project_status_requests(): filter requests changed < 5 min ago. 2017-05-04 15:00:04 -05:00
Jimmy Berry
22ec112225 list & adi: share common stagingapi.ignore_format(). 2017-04-28 10:21:50 -05:00
Jimmy Berry
2c592bdb53 stagingapi: rebuild_broken(): utilize python argument expansion. 2017-04-27 16:29:21 -05:00
Jimmy Berry
4409304cb0 rebuild: colorize. 2017-04-27 16:29:21 -05:00
Jimmy Berry
448c88a56e supersede: include ignore and decline in output. 2017-04-27 15:35:26 -05:00
Jimmy Berry
ac031bb915 stagingapi: provide fileinfo_ext_all() and fileinfo_ext(). 2017-04-25 19:55:00 -05:00
Jimmy Berry
50166347e1 stagingapi: provide ring_archs() to return arch relevant to a ring. 2017-04-25 19:53:46 -05:00
Jimmy Berry
50f8042ba9 stagingapi: convert rebuild_broken to a generator for instant feedback.
Otherwise, the rebuild command does not print output until all the
rebuilds for a whole staging are completed. With this change each package
should be printed immediately.
2017-04-20 23:10:05 -05:00
Jimmy Berry
52d356db29 Merge pull request #834 from jberry-suse/supersede-command
supersede: separate command, feedback, and force supersede post source project check
2017-04-20 14:10:08 -05:00
Ludwig Nussel
0f9d4fc86a Merge pull request #832 from jberry-suse/simplify-project-status-walk
stagingapi: simplify project_status_build_sum() with a generator.
2017-04-20 12:05:38 +02:00
Jimmy Berry
cf3ce7435e stagingapi: bypass ignored list when supersede with target_requests. 2017-04-19 18:14:35 -05:00
Jimmy Berry
7e26435ee0 supersede: provide feedback about what requests were superseded. 2017-04-19 18:09:34 -05:00
Jimmy Berry
862ee547eb supersede: allow list of request IDs or packages. 2017-04-19 18:09:34 -05:00
Jimmy Berry
b2ba0730de stagingapi: enhance supersede target_pkgs to skip source project check.
This creates a facility for forcing a request, that was ignored due to
the source check, to supersede the existing one.
2017-04-19 18:09:25 -05:00
Jimmy Berry
567d6d7950 Merge pull request #831 from jberry-suse/obsolete-skip-superseded
unselect: filter superseded when using --cleanup.
2017-04-19 16:54:52 -05:00
Jimmy Berry
f79e35caeb stagingapi: correct project_status_build_percent() formula.
final: packages in final state (not final count ie total)
tobuild: packages remaining to build
2017-04-19 16:08:39 -05:00
Jimmy Berry
e156e1cede stagingapi: simplify project_status_build_sum() with a generator. 2017-04-19 15:23:49 -05:00
Jimmy Berry
9135f91620 unselect: filter superseded when using --cleanup. 2017-04-19 14:55:42 -05:00
Jimmy Berry
446a30dde0 request_splitter: switch from build percentage to staging age for merge.
Using build percentage is sub-optimal since many events can reset the
percentage which can result in additional requests being merged into the
staging. A better metric is the time since the first request was added to
the staging (the age of the staging). Unfortunately, this is not trivial to
determine especially given that the original request may be superseded or
unstaged entirely. As such the datetime at which the staging was activated
is stored in the staging pseudometa. A max age is then used to allow for
merging up until that point.
2017-04-14 17:11:30 -05:00
Jimmy Berry
06d93b7344 stagingapi: get_open_requests() provide query_extra option. 2017-04-12 17:32:43 -05:00
Jimmy Berry
8109772372 stagingapi: get_open_requests(): replace query string with dictionary. 2017-04-12 17:32:38 -05:00
Jimmy Berry
27c0db5a78 stagingapi: rebuild_broken(): ignore unresolvable packages. 2017-04-10 23:24:12 -05:00
Jimmy Berry
043dad76db stagingapi: correct supersede call to IgnoreCommand. 2017-04-06 16:27:11 -05:00
Ludwig Nussel
37499194ce Merge pull request #783 from jberry-suse/select-move-deactivate
osc-staging: handle `select --move` cleanup of empty source project.
2017-04-05 18:22:35 +02:00