998 Commits

Author SHA1 Message Date
Stephan Kulow
2a9183f2b8
Merge pull request #1777 from coolo/dont_cache_attributes
Reduce cache time of attributes
2018-11-10 11:13:24 +01:00
Stephan Kulow
fa1c5c56e2 Caching attributes is not worth it and creates problems
Especially caching the lockedby attribute makes it basically
impossible to work with multiple persons
2018-11-10 10:06:13 +01:00
Stephan Kulow
3310ec0c63
Merge pull request #1780 from jberry-suse/staging-report
openqa-comments: rework openQA report as status check report (and thus rename as well)
2018-11-10 08:35:35 +01:00
Jimmy Berry
e1fac3e900 osclib/comments: force encoding to ascii to avoid OBS 400 errors. 2018-11-09 16:09:25 -06:00
Stephan Kulow
3aae284ff2
Merge pull request #1778 from coolo/fix_untracked_in_adi
adi: Fix format for untracked requests
2018-11-09 08:50:52 +01:00
Stephan Kulow
7ad0bb5e06 adi: Fix format for untracked requests
Fixes #1776
2018-11-09 08:28:35 +01:00
Stephan Kulow
e97be1a445 Remove map_ring_package_to_subject - it always return project
(this was more advanced when we had more subprojects)
2018-11-08 17:30:12 +01:00
Stephan Kulow
7a3b86fed1 No longer build disable on selecting non-ring packages to letter prjs
This is no longer needed as we only have one subproject per staging
2018-11-08 17:28:18 +01:00
Jimmy Berry
52eb890d76 osclib/request_splitter: provide stageable option and make default True.
Without this, the relative rarer types of requests seen in projects with
staging and handled by list command will be included in staging proposal.
However, since they are not stageable the select operation will fail. This
change ensures that a filter is always present when stageable is True to
exclude non-stableable requests. The list command sets stageable to false
in order to list out the non-stageable requests of interest.

This was not observed in openSUSE since the main non-stageable request was
change_devel and that was exluded in StrategyNone. That filter could be
replaced with the stageable filter, but having an always on filter seems to
make more sense since generally operating in one of two modes.
2018-11-01 09:21:28 -05:00
Jimmy Berry
0d9cde5a90
Merge pull request #1756 from jberry-suse/repo_checker-x86_64-published-dependent-on-i586
osclib/core: repository_published() make x86_64 dependent on i586.
2018-10-31 15:13:12 -05:00
Jimmy Berry
6ad58c8ceb osclib/core: repository_published() make x86_64 dependent on i586. 2018-10-30 15:09:17 -05:00
Jimmy Berry
fa84030142 osclib/select: only check filter-from logic if argument was passed. 2018-10-29 16:00:09 -05:00
Jimmy Berry
5558473999
Merge pull request #1748 from jberry-suse/repo_checker-arch-filter-state-queries
repo_checker: filter repository state and published checks by relevant architectures.
2018-10-25 13:44:10 -05:00
Jimmy Berry
83688cf0ed osclib/core: provide archs filter for repository state and published queries. 2018-10-24 17:50:19 -05:00
Jimmy Berry
4c8ade1a93 flake8: utilize raw strings to avoid invalid escape character warnings. 2018-10-24 16:34:16 -05:00
Stephan Kulow
14837b3657
Merge pull request #1738 from jberry-suse/staging-filter-from
osc-staging: select: replace --from with --filter-from.
2018-10-21 16:48:02 +02:00
Jimmy Berry
7d58952ad8
Merge pull request #1737 from jberry-suse/nonfree-config-staging-workflow
repo_checker: utilize 'staging' config option for instantiating StagingAPI (and related)
2018-10-19 09:43:23 -05:00
b184670d7c
Merge pull request #1736 from jberry-suse/nonfree-config
osclib/conf: include NonFree subproject in openSUSE patterns.
2018-10-19 16:59:06 +08:00
Jimmy Berry
ef9ff661bb osc-staging: select: replace --from with --filter-from.
--from no longer serves a purpose since requests should never live in
more than one staging (apparent from linking).
2018-10-18 17:24:59 -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
35594e5f05 osclib/conf: include NonFree subproject in openSUSE patterns.
Intentionally left outside of <project> group so that the NonFree
subproject still uses the main Staging subproject.
2018-10-18 15:55:41 -05:00
Jimmy Berry
8ec1e1777b osclib/conf: remove Ports subprojects as they no longer exist. 2018-10-18 15:54:20 -05:00
Stephan Kulow
ff84b79171 We need the images repo published to have a status check
We can't generally assume ISOs can be fetched from backend (we can't
have this on IBS), so publish it - and disable the actual publishing
on the staging backend of OBS
2018-10-12 13:00:18 +02:00
Stephan Kulow
e6bf5ccb7b Do no longer CC submitters in request comments
Submitters complain more and more about the spam they're getting from
staging projects - and we rather leave that weapon for actual feedback.

One especially annoying case is if a package is added to one staging project
and then later moved to another, the submitter will receive notifications
of all kind of bots and actions for both staging projects.
2018-10-04 09:52:49 +02:00
Stephan Kulow
c4fa49aef2 Refactor conditional_PUT as core function
Introduce source_file_ensure in osclib.core following review in #1717
2018-10-03 07:36:42 +02:00
Stephan Kulow
4539190af7 Optimize repository_state
The _result view checks way more things than we need, so just iterate
through the architectures of a repository and check the binaryversions
per arch. And combine the sha1sums to one sha1 per repository
2018-09-28 08:05:15 +02:00
Jimmy Berry
2deda1a5f1
Merge pull request #1710 from jberry-suse/osclib-core-repository-state
osclib/core: repository_state(): rework to utilize binarylist view.
2018-09-27 08:24:24 -05:00
Jimmy Berry
ea94191d21
Merge pull request #1688 from jberry-suse/kubernetes
[WIP] dist/kubernetes: provide basic ksonnet setup for heroes cluster including check-source and repo-checker modules
2018-09-26 17:27:55 -05:00
Jimmy Berry
73edfb8121 osclib/core: repository_state(): rework to utilize binarylist view.
For whatever reason the state hash only includes the overall publish states
and not the binaries within the repository. As such, rebuilding state
before a  rebuild and after may be the same.
2018-09-26 17:11:45 -05:00
Jimmy Berry
1fc5232c5e osclib/core: project_pseudometa_file_ensure(): correct comparison logic.
Previously, ends up comparing the wrong package, but saving to the correct
one. This ends up with extra blank commits. :(
2018-09-17 17:25:00 -05:00
Jimmy Berry
d74c1c69ff osclib/cache_manager: rework base directory handling.
Ensure the returned directory is always created and while continuing to
handle test mode.
2018-09-13 20:26:08 -05:00
Jimmy Berry
3b8ae3174c osclib/cache: provide mechanism to init multiple times.
Useful for staging plugin to cache the remote config before StagingAPI
is initialized.
2018-09-04 15:19:02 -05:00
Jimmy Berry
c47bb4c902 Utilize CacheManager for all existing caches. 2018-09-04 15:19:02 -05:00
Jimmy Berry
27cba7e26c osclib/cache_manager: provide general cache manager for all tools. 2018-09-04 15:18:55 -05:00
Jimmy Berry
f49b8d1149 osclib/common: provide project name and version constants.
Not specific to staging plugin, but previously only place to provide
version.
2018-09-04 15:04:33 -05:00
Jimmy Berry
6069245350 Remove SUSE copyright, warranty, and license headers.
Distinct copyrights were left as I do not wish to track down commit
history to ensure it properly documents the copyright holders. Also left
non-GPLv2 licenses and left bs_copy untouched as a mirror from OBS.

Already have a mix of with and without headers and even OBS does not place
on majority of files. If SUSE lawyers have an issue it will come up in
legal review for Factory.
2018-08-23 19:18:06 -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
dbfafe8e85 osclib/conf: utilize repo_checker-project-skip for OBS SLE projects. 2018-08-23 00:13:30 -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
a8cfd74f1f osclib/core: repository_path_expand(): skip adding duplicate path. 2018-08-21 21:37:48 -05:00
Jimmy Berry
af0d74a2df StagingAPI: drop inferior expanded_repos() implementation for osclib.core. 2018-08-21 20:49:31 -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
341301fd0d osclib/util: provide sha1_short() adapted from repo_checker. 2018-08-21 20:47:37 -05:00
Jimmy Berry
7cb40bbe21 osclib/core: provide project_meta_revision() adapted from repo_checker. 2018-08-21 20:47:37 -05:00
Jimmy Berry
9f89eaad04 osclib/core: provide repository state and published functions. 2018-08-21 20:47:37 -05:00
Jimmy Berry
6e28fc4ec8 osclib/core: provide repository_path_search(). 2018-08-21 20:47:37 -05:00
Jimmy Berry
37540add5f osclib/core: provide repository_path_expand() adapted from StagingAPI. 2018-08-21 20:47:37 -05:00
Jimmy Berry
b6ab577a7f osclib/core: target_archs(): expose repository argument. 2018-08-21 20:47:37 -05:00
Jimmy Berry
6f9a81ff73 osclib/conf: drop main-repo default for all projects. 2018-08-21 20:47:37 -05:00
Jimmy Berry
6d60708b59 osclib/core: source_file_save(): always include host in message. 2018-08-17 23:19:28 -05:00