As most people on this list are doubtlessly aware, the rolekit project has been in maintenance mode for some time now while other, better solutions are worked on. It's definitely becoming more hassle than it is worth to continue maintaining it in Fedora, so I'd like to start discussing a timeframe by which we can remove it entirely.
It is important to note that this has direct impact on Fedora milestone acceptance testing. Alpha, Beta and Final release criteria all include requirements that we be able to install FreeIPA and PostgreSQL through rolekit.
These requirements *should not* go away. There is still considerable value in ensuring that we deliver something that can provide these two critical services. Work is ongoing to implement new, Ansible-based approaches for deploying our Server Roles, but it is not expected to be ready in time for Fedora 26 Beta. In Fedora 27, we hopefully will have both Ansible and Cockpit support for deploying an NFS server and a FreeIPA server, but this is a ways away.
I see two likely approaches for killing off rolekit:
1) I orphan and retire rolekit for F26 and Rawhide. I then rewrite the QA testing pages for how to manually test FreeIPA and PostgreSQL.
2) I orphan and retire rolekit only for Rawhide and hold off on rewriting the QA testing pages until we have made additional progress on the Ansible/Cockpit solutions.
Adam, I'm aware that this is going to cause issues with your automated testing, so I won't kill it off until we discuss how to update those tests. A pointer to whatever repository in which that resides would be helpful. I'll see if I can send a pull-request so that doesn't fall on you.
On Fri, 2017-03-31 at 09:08 -0400, Stephen Gallagher wrote:
As most people on this list are doubtlessly aware, the rolekit project has been in maintenance mode for some time now while other, better solutions are worked on. It's definitely becoming more hassle than it is worth to continue maintaining it in Fedora, so I'd like to start discussing a timeframe by which we can remove it entirely.
It is important to note that this has direct impact on Fedora milestone acceptance testing. Alpha, Beta and Final release criteria all include requirements that we be able to install FreeIPA and PostgreSQL through rolekit.
These requirements *should not* go away. There is still considerable value in ensuring that we deliver something that can provide these two critical services. Work is ongoing to implement new, Ansible-based approaches for deploying our Server Roles, but it is not expected to be ready in time for Fedora 26 Beta. In Fedora 27, we hopefully will have both Ansible and Cockpit support for deploying an NFS server and a FreeIPA server, but this is a ways away.
I see two likely approaches for killing off rolekit:
- I orphan and retire rolekit for F26 and Rawhide. I then rewrite the QA
testing pages for how to manually test FreeIPA and PostgreSQL.
- I orphan and retire rolekit only for Rawhide and hold off on rewriting the QA
testing pages until we have made additional progress on the Ansible/Cockpit solutions.
Adam, I'm aware that this is going to cause issues with your automated testing, so I won't kill it off until we discuss how to update those tests. A pointer to whatever repository in which that resides would be helpful. I'll see if I can send a pull-request so that doesn't fall on you.
https://pagure.io/fedora-qa/os-autoinst-distri-fedora
Specifically, you'll need to adjust:
https://pagure.io/fedora-qa/os-autoinst-distri-fedora/blob/master/f/tests/ro... https://pagure.io/fedora-qa/os-autoinst-distri-fedora/blob/master/f/tests/ro...
If you make sure the servers are deployed with the same accounts, passwords etc., then other tests shouldn't need changing.
Both tests basically just run a bunch of commands. 'assert_script_run' just runs the command and expects it to return 0; just remember perl's quoting rules (variables within strings using *double* quotes are expanded, variables within strings using *single* quotes are not, being an important one). 'validate_script_output' runs a command and asserts that what's basically a lambda function given the output of the script as its argument returns something truth-y. As you can see, 99% of the time we use it for doing a text match on the output, either a straight up equality test ('eq') or a regex match ('=~').
server@lists.fedoraproject.org