StackStorm / ansible-st2

Ansible Roles and Playbooks to deploy StackStorm
https://galaxy.ansible.com/StackStorm/stackstorm/
Apache License 2.0
100 stars 75 forks source link

Add support for CentOS / RHEL 8 #248

Closed nmaludy closed 4 years ago

nmaludy commented 5 years ago

To go along with StackStorm/st2#4761

Once this is done and there are CentOS 8 packages available, we can work to get this implemented in Ansible.

Things to handle:

Updates for EL8:

See https://github.com/StackStorm/st2docs/pull/955 more differences from EL7 -> EL8.

amanda11 commented 4 years ago

ansible reports the default package manager as dnf for Centos 8. As part of this issue would you want to: 1) use dnf install rather than yum install (and therefore create mongodb_dnf.yml etc...) OR 2) continue to use yum install, and therefore detect that if ansible_facts.pkg_mgr is dnf - still use yum?

arm4b commented 4 years ago

@amanda11 Thanks for raising this!

For consistency reasons with st2 installation documentation, scripted installer and less diff in ansible-st2 codebase I'd prefer to rely on older yum when adding EL8 support.

amanda11 commented 4 years ago

Are you looking for someone to take this on?

punkrokk commented 4 years ago

@amanda11 Happy to work with you/help you get this done. At the moment we are working on releasing ST2 3.2 which will include beta support for EL8.

FWIW - regarding yum and dnf it's my understanding that dnf is backwards compatible with yum and the yum is an alias to dnf.

Once the EL8 packages are released we can start a list of what needs to be addressed.

amanda11 commented 4 years ago

@punkrokk Sounds good. I had a quick play the other-day with ansible and Centos 8, and the first thing it failed on was the fact that it tries looking for files like mongodb_dnf.yml as the ansible facts package mgr reports it as dnf rather than yum (hence the inquiry).

amanda11 commented 4 years ago

@punkrokk I have some free time to start looking at this if its worth starting. I was first going to take a look at the one line installer to see the differences it does for EL8. Currentlly just applying the differences between the el7 and el8 bootstrap scripts to see differences and building into playbooks.

amanda11 commented 4 years ago

On a fork I have playbook changes that successfully install on Centos8 from the ansible playbook and pass the smoke tests. Need to tidy up, and re-test with EWC and Centos 7 (and Ubuntu if known version of Ubuntu the playbooks work on...)

Are the smoke-tests in the ansible-playbook sufficient for checking that its installed correctly or is there more recommended?

punkrokk commented 4 years ago

@amanda11 That was fast :) I was going to recommend checking the diff between ST2 3.1 and 3.2 one line install.

That being said, I think the things to look for are:

Once that is done, create a PR from your fork & branch so we can compare and provide more feedback.

Thanks for your help on this one!

amanda11 commented 4 years ago

Initial PR up https://github.com/StackStorm/ansible-st2/pull/261

arm4b commented 4 years ago

The task breakdown put together here and description of scope was super helpful. Thanks @nmaludy!