Container matrix to run fedpkg tests

Introduction

Make it easier to run fedpkg tests in Fedora 24, EL6 and EL7. If you are interested in rpkg developmet, feel free to have a try with this tool. I'm happy to see it is useful for you.

Features

Build package. Build packages are built in https://copr.fedorainfracloud.org/coprs/cqi/fedpkg/. The package build happens in a Fedora 25 docker container.

Run integration tests. Integration tests run fedpkg from command line directly, currently without any mock. Now, enabled tests are to test commands that do not need remote dependency, e.g. Koji, except Lookaside. Tests run in a Fedora 25 Vagrant box.

Limitation

Automated tests for all commands. First, an authenticated clone does not work. Second, cannot build, either normal build or scratch build, in Koji, that is because the request must be authenticated by Fedora Kerberos, but I don't have a usable keytab so far.

Usage

  1. Build images

    launch.py build-images
    
  2. Run tests

    launch.py run --path /path/to/fedpkg/repo
    
  3. Select in which distribution to run tests, e.g. run tests in EL6

    launch.py --dist el6 run --path /path/to/fedpkg/repo
    
  4. By default, tests run with released version of pyrpkg. However, you can also run tests with latest master branch of rpkg.

    launch.py --dist el6 run --path /path/to/fedpkg/repo --with-dev-pyrpkg
    
  5. Build package.

    Before building package, ensure to put your copr config file in packager and name it copr-config.

    cd packager
    ./build.sh
    
  6. Run integration tests.

    cd tests/integration
    ./runtests.sh
    

Vagrant

Vagrant is used to test this tool, not for fedpkg development.