In the process of porting many improvements and bug fixes were added. Usage follows the standard ReviewBot format and allows for new execution styles, but the following examples replicate previous usage. # Review all requests assigned to factory-auto. ./check_source.py --group factory-auto review # Review request 13370. ./check_source.py --group factory-auto id 13370 # --project translates to project command. # No longer automatically includes $project:NonFree. ./check_source.py --group factory-auto project openSUSE:Factory New options available are: --ignore-devel ignore devel projects for target package --devel-whitelist=FILE file containing whitelisted projects (one per line) --review-team=GROUP review team group added to requests with > 8 diff --repo-checker=USER repo checker user added after accepted review Note that --ignore-devel used to be provided as env[IGNORE_DEVEL_PROJECTS]. Some highlights about what was cleaned up: - cryptic variable names replaced - replaced custom osc queries with osc.core calls where applicable - removed the need to load package information for all packages within target project which cuts runtime in half for single review - removed extraneous code that performed extra steps for no reason os.path.dirname(os.path.realpath(__file__.replace('.pyc', '.py'))) os.path.dirname(os.path.realpath(__file__)) and _checker_prepare_dir() which needlessly chdir() twice. - one logic branch failed to cleanup checkout directory - new flags provide additional flexibility
Factory workflow plugins ======================== image:https://travis-ci.org/openSUSE/osc-plugin-factory.png?branch=master["Build Status", link="https://travis-ci.org/openSUSE/osc-plugin-factory"] image:https://coveralls.io/repos/openSUSE/osc-plugin-factory/badge.png?branch=master["Coverage Status", link="https://coveralls.io/r/openSUSE/osc-plugin-factory"] This repository contains various OSC plugins and scripts used for the maintenance of openSUSE distributions like Factory. Scripts ------- * *link:docs/staging.asciidoc[Staging].* Plugin used to manage the different staging projects and to assign different group of packages (requests) to different staging projects. * *link:docs/checkrepo.asciidoc[CheckRepo].* This OSC plugin check continuously for usual mistakes or problems in requests like, for example, new dependency cycles or errors in the binary RPM. * *link:docs/checksource.asciidoc[CheckSource].* This plugin checks for usual mistakes and problems in the source packages submitted by the users. * *link:docs/totest.asciidoc[ToTest].* A plugin that checks if Factory is ready to be released as Tumbleweed. * *link:docs/checkdups.asciidoc[CheckDups].* Plugin to detect superseded or duplicated requests. * *link:docs/factory-source.asciidoc[factory-source].* script that checks if the submitted sources of a request are already accepted in Factory * *link:docs/maintbot.asciidoc[maintbot].* script that checks maintenance incidents to make sure the Factory maintainer submitted the package. * *link:checknewer[checknewer].* script compares version numbers in repos to make sure all packages e.g. in a new distro are newer Installation ------------ Clone this repository: ------------------------------------------------------------------------------- git clone https://github.com/openSUSE/osc-plugin-factory.git ------------------------------------------------------------------------------- Create links for the different plugins that you want to install in +~/.osc-plugins+ or +/var/lib/osc-plugins+. For example, to install the staging plugin: ------------------------------------------------------------------------------- cd osc-plugin-factory ln -sr ./osc-staging.py ./osclib ~/.osc-plugins ------------------------------------------------------------------------------- Now you are done and all that is left is start using plugin, see help in regards of what you can do: ------------------------------------------------------------------------------- osc help staging ------------------------------------------------------------------------------- or ------------------------------------------------------------------------------- osc staging --help ------------------------------------------------------------------------------- Testing ------- Covering all functionality with test suite is currently work in progress. In general new functionality should be covered by tests in order to make sure we don't break it in future. Before refactoring, functions has to be covered by tests as well to ensure we don't break them. How to work with test suite is better described in link:docs/testing.asciidoc[testing] file in link:docs[docs] directory.
Languages
Python
88.4%
HTML
4.2%
Shell
3.9%
PHP
1.5%
Perl
1.4%
Other
0.6%