Stephan Kulow
aa9f55cf6b
Fix whitelist handling of repo checker in python3
2019-05-27 14:11:50 +02:00
Stephan Kulow
e971d711a2
Convert stdout of repo checker perl part to string
2019-05-16 13:43:36 +02:00
Stephan Kulow
6f83acfae4
Run source and repo checker in python3
2019-05-16 06:39:28 +02:00
Stephan Kulow
fec762e5a4
Avoid warning on using .warn (python3)
2019-05-11 14:25:02 +02:00
Stephan Kulow
3cd79db206
repo_checker: Simplify cycle check
...
No longer compare against the target project's cycle, but just against
a configured list of package names. This way we're not bound to
refreezing stagings if we reduced cycles and it's clearer to the
operator what happens and how to react to it.
2019-02-11 09:02:29 +01:00
Stephan Kulow
5d70263e89
Fix arch-whitelist to apply to staging projects
...
It was read from 'project', which was the staging project - which doesn't
have remote config
2019-02-06 10:55:48 +01:00
Stephan Kulow
730ea82927
Filter the repositories_pairs depending on the target archs
2019-02-06 09:54:34 +01:00
Stephan Kulow
0c73225f3d
Don't try to filter staging archs
...
Now that we no longer wait for the target repo to be published, we
can simplify the handling
2019-02-06 08:00:13 +01:00
Stephan Kulow
48b7d5b094
Calculcate the whitelist for letter stagings purely on config
2019-02-06 07:51:36 +01:00
Stephan Kulow
3b3ccab783
Expand all repositories but ignore archs with 404
2019-02-06 06:30:51 +01:00
Jimmy Berry
516d4e94de
repo_checker: remove explicit target project repository layer for letter stagings.
...
Keep the rings as non-leaky as possible and use
repo_checker-binary-whitelist-ring for everything else.
2019-02-05 12:45:21 -06:00
Jimmy Berry
4e30d10318
repo_checker: provide repo_checker-binary-whitelist-ring config option.
2019-02-05 12:45:14 -06:00
Jimmy Berry
1e34a8f47e
repo_checker: filter repository published check by arch.
2018-10-24 18:00:09 -05:00
Jimmy Berry
30a42af6ca
repo_checker: repository_state_last(): switch to simulate_merge as arg.
...
For the sake of consistency now that repository_state() also requires it.
2018-10-24 17:59:40 -05:00
Jimmy Berry
12c9819614
repo_checker: repository_state(): limit meta revision to simulate merge.
...
Only staging projects are allowed to have psuedometa that makes it relevant
to include the project meta revision.
2018-10-24 17:56:49 -05:00
Jimmy Berry
ff722f03b8
repo_checker: repository_state(): filter by relevant archs.
2018-10-24 17:55:04 -05:00
Jimmy Berry
dc91518b0a
repo_checker: extract arch determination as target_archs_from_prairs().
2018-10-24 17:52:18 -05:00
Jimmy Berry
616281e75f
repo_checker: utilize 'staging' config option for instantiating StagingAPI.
2018-10-18 16:20:30 -05:00
Jimmy Berry
c74e40ba70
osclib/cycle: remove need for StagingApi instance in favor of apiurl.
2018-10-18 16:20:30 -05:00
Jimmy Berry
a0de4c5b94
repo_checker: re-instate staging build failure check after generic rework.
2018-09-28 17:27:04 -05:00
Jimmy Berry
406fc41a85
ReviewBots: utilize delete_package check where it was already assumed.
2018-09-17 17:15:23 -05:00
Jimmy Berry
c47bb4c902
Utilize CacheManager for all existing caches.
2018-09-04 15:19:02 -05:00
Jimmy Berry
9641379679
Revert "repo_checker: change build to state in comment info."
...
Works, but overrides the base state properly which is not desired.
This reverts commit 3db3a182855510c0b016e83888693e03e227e000.
2018-08-23 11:26:13 -05:00
Jimmy Berry
db50e7918b
Merge pull request #1669 from jberry-suse/repo_checker-multi-repository-request
...
repo_checker: include repository as bot name suffix for staging and direct package comments.
2018-08-23 08:01:15 -05:00
Jimmy Berry
3bdcad9ead
Merge pull request #1667 from jberry-suse/repo_checker-build-to-state
...
repo_checker: change build to state in comment info.
2018-08-23 08:00:52 -05:00
Jimmy Berry
ec3c1d1b6e
Merge pull request #1668 from jberry-suse/repo_checker-project-skip
...
repo_checker: provide repo_checker-project-skip option (and utilize for OBS SLE projects)
2018-08-23 08:00:05 -05:00
Jimmy Berry
108e0a2bf4
repo_checker: include repository as bot name suffix in direct package comment.
...
This allows for multiple project_only runs with a different main-repo set.
It is very unlikely this feature will be used, but will handle it properly
to be consistent with pseudometa file name.
2018-08-23 00:39:06 -05:00
Jimmy Berry
da507a4147
repo_checker: include repository as bot name suffix for staging comments.
...
This becomes necessary for multi-action requests like those seen in
maintenance where there may be multiple repositories reviewed for a single
request. The result is multiple comments made on the staging project which
would override each other. This treats them separately just as devel
project comments do with target project.
2018-08-23 00:38:56 -05:00
Jimmy Berry
bf69419996
repo_checker: provide repo_checker-project-skip option.
...
Allows for skipping review of an action based on the target project config.
2018-08-22 23:56:46 -05:00
Jimmy Berry
3db3a18285
repo_checker: change build to state in comment info.
...
The more accurately reflects what the hash represents since it grew to
include the staging project meta revision and may end up including more.
2018-08-22 23:39:33 -05:00
Jimmy Berry
cdef5bf129
repo_checker: change package comment default to be direct instead of devel.
...
Since the tool has been expanded to work on any repository, there are more
repositories that would want direct comments than devel. Set the value
to be devel for the openSUSE products which are the places where that is
desirable.
2018-08-22 21:43:47 -05:00
Jimmy Berry
a7f08f656c
repo_checker: repository_check(): drop left over development comment.
2018-08-22 20:49:57 -05:00
Jimmy Berry
2931e9aedb
repo_checker: rework install_check() to use target project consistently.
...
Removes the need for the odd parse argument behavior.
2018-08-22 20:49:23 -05:00
Jimmy Berry
730ea38464
repo_checker: project_only: hook up --post-comments flag.
...
The code is all there, but in the rework missed wiring it up.
2018-08-21 21:48:50 -05:00
Jimmy Berry
a57fe7ba4e
repo_checker: complete rework to handle arbitrary repos and maintenance.
...
The rework includes a variety of changes:
- multiple actions per request supported
- automatically detecting "main" repo (useful for devel/home projects)
- full layered repository path state and published taken into account
- arbitrary repository name (ie. not just standard) supported
- intermediate results (used for staging) no longer accept (even if no
problems detected) until all layers are published
- no longer tied to staging process, but still supports staging workflow
- robust handling of repository state changes during review cycle
- multiple repositories supported for project_only output (ie. file name)
- project_only run supports any OBS project instead of only products
- maintenance_release requests supported with alternate staging approach
2018-08-21 20:49:26 -05:00
Jimmy Berry
536e17cb79
osclib/stagingapi: rename dashboard_content_* methods to pseudometa_file_*.
...
No need to be confusing and use the deprecated dashboard name.
2018-08-17 23:19:24 -05:00
Jimmy Berry
24b15d6b0b
Replace relevant 'dashboard' package references with pseudometa lookup.
...
Skipping some of the broader once which have no tangible impact, but are
expensive to change.
2018-08-17 23:18:32 -05:00
Jimmy Berry
8cffc2e553
repo_checker: use osclib.conf.str2bool() instead of bool().
2018-08-17 10:16:47 -05:00
Jimmy Berry
1012b62830
ReviewBots: utilize Config.get() instead of self.staging_config.
2018-08-17 10:16:47 -05:00
Jimmy Berry
2809f3934a
repo_checker: drop whitelist_clean sub-command.
...
No longer needed since the whitelist is no longer managed manually.
2018-08-15 16:43:48 -05:00
Jimmy Berry
9fdea5fbee
repo_checker: determine existing problems based on project_only output.
...
The project level whitelist stored in config is no longer utilized, but
staging level overrides are still available.
2018-08-15 16:43:00 -05:00
Jimmy Berry
eed6ddecbe
Merge pull request #1640 from jberry-suse/repo_checker-layering
...
repo_checker: properly support multi-layer projects
2018-08-15 16:41:49 -05:00
Jimmy Berry
07bc6c031a
repo_checker: whitelist_clean(): correct attribute_value_save().
...
coolo decided to miss this the first time around then "fix" it without
running even once. Wrong number of arguments.
2018-08-14 18:56:37 -05:00
Jimmy Berry
a1cf089572
repo_checker: support multi-layer projects during project_only run.
...
Include problems from all the layers instead of just the top layer as this
is effectively what the end-user would see.
2018-08-14 18:45:13 -05:00
Jimmy Berry
9e862efeb7
repo_checker: properly support multi-layer projects during request mode.
...
Previously, the additional layers supported added by coolo treated them
like staging projects which meant that everything except the bottom
override the bottom. Obviously, for SLE service packs this is not correct.
This rewrorks the underlying perl script to support a stack of directories
where the second directory is assumed the be the target project for the
purposes of the toignore (-f) argument and the top layer is the only
one for which problems are reported.
2018-08-14 18:45:10 -05:00
Stephan Kulow
4f275a5af8
Move expanded_repos into staging api
...
and make pkglistgen and repo_checker use it. We will have more
cases in the future of tools requiring it :)
2018-07-19 09:14:30 +02:00
Stephan Kulow
94e2127dd8
repo_checker: Expand repositories of target project
...
For Factory, Leap and SLE15 it doesn't matter as they are self contained.
But for Service Packs we use layering, so we need to mirror and check them
too
2018-07-19 09:04:40 +02:00
Stephan Kulow
44f93dfa7c
repo_checker: Fix the review loop
...
The break on openQA failures is a left over from 93ee829260a6abf094cbbc31e26eb21bf45e8f15
where we stopped the loop over subprojects. We don't want to break out of
the review loop on openQA failures
2018-07-19 08:44:59 +02:00
71763873e3
stagingapi: remove staging_walk() function
...
DVD subproject has been obsoleted, no need to check :DVD anymore.
2018-07-04 21:27:19 +08:00
93ee829260
stagingapi: remove project_status_walk() function
...
subprojects method has been removed from dashboard,
project_status_walk() is not needed anymore.
2018-07-04 21:24:24 +08:00