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.
openSUSE-release-tools
Everything denoted with a cloud is largely in this repository while the rest is the open-build-service (OBS).
Installation
For non-development usage just install the package.
zypper in openSUSE-release-tools
Many sub-packages are provided which can be found either by searching or looking on the build service.
zypper se openSUSE-release-tools osc-plugin
If CI builds are needed add the appropriate openSUSE:Tools
repository.
Usage
All tools provide help documentation accessible via --help
.
For osc
plugins include the plugin name after osc
like the following.
osc staging --help
For other tools execute the tool directly.
osrt-repo-checker --help
See the docs directory or a specific tool directory for specific tool documentation outside of --help
. The wiki also contains some additional documentation.
Development
git clone https://github.com/openSUSE/openSUSE-release-tools.git
If working on an osc
plugin create symlinks for the plugin and osclib
in either ~/.osc-plugins
or /usr/lib/osc-plugins
. For example to install the staging plugin do the following.
ln -sr ./osc-staging.py ./osclib ~/.osc-plugins
A containerized OBS can be started via one command. The default credentials are Admin
and opensuse
on 0.0.0.0:3000.
./dist/ci/docker-compose-obs
An osc
alias is automatically configured as local
.
osc -A local api /about
A facsimile of openSUSE:Factory
in the form of a subset of the related data can be quickly created in a local OBS instance using the obs_clone
tool.
./obs_clone.py --debug --apiurl-target local
Some tests will attempt to run against the local OBS, but not all.
nosetests