Hello folks, we made some significant change to the integration tests to experiment with the new packaging workflow, this mail is a recap of what has been done regarding to the build_image script.
Historically, the script was not re-entrant, because some components were manually copied in place and one way changes were made, such as the edeploy yum hook. The image had to be rebuilt from scratch each time because there is no easy way to check if a component needed to be upgraded or not. Thus we created an image cache that was only built when required, and a final image that was constructed before the test. With the new packaging workflow it's a good time to cleanup that convoluted step1/step2 process. So we fast-tracked a change to consolidate the build_image.sh into a re-entrant single step. Here is what it changes: * There is no more sf-centos7 cache, only the image * The image is not wiped on rebuild, the install tasks just run again on top, updating only when needed. That means things are not automatically removed, please have a look at the "remove_obsolete" function. Otherwise, removing the /var/lib/sf/role directory will make sure the image isn't dirty. * The edeploy yum hook are no longer setup. * The koji and testing repo are now included. To test locally built package, the zuul-rpm-build directory need to be present in /var/lib/sf/. Lastly, if only managesf/cauth/ansible/... is modified, you can use "SKIP_BUILD=1" environment variable to skip the build_image script. Long story short, this let us run integration test on freshly built packages, and it should go much faster (6 minutes) than it used to be (about 1 hour). This should get better and better as components get packaged, though some bug may have slip through this refactor, so be extra careful until the process stabilized. Cheers, -Tristan
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Softwarefactory-dev mailing list [email protected] https://www.redhat.com/mailman/listinfo/softwarefactory-dev
