Uyuni is the upstream community project from which the very popular SUSE Manager is derived. It uses its own QE test suite wirtten in Cucumber and Ruby. Currently the Uyuni test suite runs with Ruby 2.5.9 which is EOL since 2021. This is because the most current Ruby version for openSUSE Leap 15.4, which the test suite controller runs on, is still Ruby 2.5.9. Updating the Ruby version allows us to modernize the test suite code base and to use more recent Ruby gems that do not support the old Ruby version anymore.
After talking to Lubos about using a more recent Ruby version on Leap 15.4, he recommended to use the ones from devel:languages:ruby built in the OBS.
Goal for this Hackweek
- update Ruby on the Uyuni test suite controller to version 3.1/3.2
- adapt the test suite code to work with the new Ruby version
- update all used Ruby gems step by step
- adapt the test suite code to work with the updated gems. Major ones are Capybara, Cucumber and Selenium Webdriver
- Fix new RuboCop issues when removing the TODO file
- Add code coverage support for the test suite code
- Test suite: https://github.com/uyuni-project/uyuni/tree/master/testsuite
- OBS Ruby builds: https://build.opensuse.org/project/show/devel:languages:ruby
- Ruby issue: https://github.com/SUSE/spacewalk/issues/17431
- RuboCop issue: https://github.com/SUSE/spacewalk/issues/14192
- Code Coverage issue: https://github.com/SUSE/spacewalk/issues/8583
This project is part of:
Hack Week 22