This PR is for work I've done to implement two new Standard Test Interface ansible roles for docker and RHTS.
Since this is my first foray into using ansible and my docker experience is still limited, I would appreciate a thorough review and constructive feedback from some ansible experts before this PR gets merged!
The standard-test-docker role is for invoking tests against a docker image test subject in a similar manner to that described for other test subjects as described at https://fedoraproject.org/wiki/Changes/InvokingTestsAnsible#Invocation.
The standard-test-rhts role is for running RHTS (Red Hat Test System) style tests. (For those unfamiliar with RHTS, it is basically an enhanced version of beakerlib. Many of the tests being open sourced as part of the "upstream first" effort are based on RHTS.) The role uses restraint to run the tests as tasks, since the restraint-rhts package specifically includes support for running RHTS tests.
You can do a trial run that uses both of these new roles by running the following commands on a Fedora development machine:
Note: the standard-test-roles package in merlinm's COPR repo contains the latest copy of the roles referenced by this PR.
The playbook will take a while to run--especially the first time, if the fedora image needs to be downloaded. If you wish to examine the docker container that is used to run the tests before it gets cleaned up, set the environment variable FEDORA_TEST_DIAGNOSE=1.
You can also choose to run the tests directly on a local system by running the test_local.yml playbook, but you would be wise to do so on a disposable VM:
Numerous additional examples of RHTS tests with test_local.yml and test_docker.yml playbooks can be found in many of the repos available at https://upstreamfirst.fedorainfracloud.org/browse/projects/.
This PR is for work I've done to implement two new Standard Test Interface ansible roles for docker and RHTS.
Since this is my first foray into using ansible and my docker experience is still limited, I would appreciate a thorough review and constructive feedback from some ansible experts before this PR gets merged!
The
standard-test-dockerrole is for invoking tests against a docker image test subject in a similar manner to that described for other test subjects as described at https://fedoraproject.org/wiki/Changes/InvokingTestsAnsible#Invocation.The
standard-test-rhtsrole is for running RHTS (Red Hat Test System) style tests. (For those unfamiliar with RHTS, it is basically an enhanced version of beakerlib. Many of the tests being open sourced as part of the "upstream first" effort are based on RHTS.) The role uses restraint to run the tests as tasks, since therestraint-rhtspackage specifically includes support for running RHTS tests.You can do a trial run that uses both of these new roles by running the following commands on a Fedora development machine:
Note: the
standard-test-rolespackage in merlinm's COPR repo contains the latest copy of the roles referenced by this PR.The playbook will take a while to run--especially the first time, if the fedora image needs to be downloaded. If you wish to examine the docker container that is used to run the tests before it gets cleaned up, set the environment variable FEDORA_TEST_DIAGNOSE=1.
You can also choose to run the tests directly on a local system by running the
test_local.ymlplaybook, but you would be wise to do so on a disposable VM:Numerous additional examples of RHTS tests with
test_local.ymlandtest_docker.ymlplaybooks can be found in many of the repos available at https://upstreamfirst.fedorainfracloud.org/browse/projects/.