-
-
Notifications
You must be signed in to change notification settings - Fork 72
Ansible-playbooks to install on Centos8 #261
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…d on Centos8 from translating from st2-packages/scripts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for working on adding EL8 support to Ansible! 👍
Yes, per discussion it would be best to use _yum.yml
files instead of _dnf.yml
to benefit from the common codebase and avoid code duplication. I also left pointers about other files to touch for full EL8 support.
- StackStorm.st2repo | ||
- StackStorm.st2 | ||
- StackStorm.st2mistral | ||
- role: StackStorm.st2mistral | ||
when: not (ansible_facts.os_family == 'RedHat' and ansible_facts.distribution_major_version == '8') |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
I need to fix 5 'changed' tasks on the idempotent. Trying to figure out if there is a yum module where you can specify the stream, so that it doesn't get altered. Just doing some research on this to fix the travis idempotency errors reported. |
I still have 2 idempotent fixes to do on the yum module enable/disable. But wanted to push to get the travis jobs to run to confirm that its the only problem after the last refactor. Other thoughts:
|
@armab thanks for feedback, will |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@amanda11 Looks really good. Thanks a lot for the hard work and additional changes!
I'll try to spend a few more cycles and run the playbooks in a couple of days for any possible corner cases and may provide more feedback.
One of the things that looks excessive are tasks related to "AppStream for RH8". Wondering if we could just pin the required repo name during the nodejs install via --disablerepo
vs --enablerepo
to make sure nodejs is only installed from the official nodeseource repo. This is a good thing to do anyway.
Thanks. I believe if I disable / enable on the yum install itself then the problem is any later yum update would then take from AppStream and not nodejs. So you do have to do disable the stream separately for the module. |
Yes, right.
So while we're on the safe side already, I'm good to keep it as an additional safety net because I found similar logic in the official nodesource script
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would recommend we now test this on CentOS 8.2, since it got released yesterday and this work is fresh in everyone's mind. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Going to run myself quickly. Give me an hour. |
Great job @amanda11 |
The new EL8 support feature should be now available as |
Closes #248
I have tested this on Centos8/7/Xenial with EWC licenses.
Some comments / queries on implementation:
Many roles do an import based on package manager, therefore expect to find a _dnf.yml file. I have included those files. The alternative would be to change the imports so that if the package manager was dnf it still imported the yum version.
Do we want to have dnf and yum files?
Where the RH8 versus 6/7 differ then it omits the need for checks on RH version in the _yum variant, but it also means in some cases the dnf and yum files are identical.
I didn't manage to test the firewall-cmd as on my Centos8 not enabled. But have used same logic as single node install.
I created a mongodb4 variable. You can't have conditional defaults so if just have the one default mongodb_version then for installing on RH8 then it would default to 3.4.
An alternative might have been to have some conditional logic that if the mongodb version is < 4 then to set to the default mongodb4 version instead?
In the mongodb dependencies then for RH8 I have removed the dependency on python-ndg_httpsclient. It isn't available on the RH8 manual install. All other python imports are changed to their python3 one.