Skip to content
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

Migrate to 3rd party Ansible Galaxy role dependencies #229

Open
peschmae opened this issue Jan 31, 2019 · 3 comments
Open

Migrate to 3rd party Ansible Galaxy role dependencies #229

peschmae opened this issue Jan 31, 2019 · 3 comments

Comments

@peschmae
Copy link

Currently this repository contains 14 roles (2 of them smoketest roles), of which 6 are for services/tools which have other commonly used Ansible roles available.

To decrease the complexity of maintaining this project, I like to propose to drop the following roles, and replace them with roles already in use by the Ansible community.

  • mongodb
  • nodejs
  • postgresql
  • rabbitmq
  • epel
  • nginx

Getting rid of these custom roles, would also help to make sure that settings for 3rd-party services (e.g. postgresql) are only used by reference from a variable, and not interacted with directly, which in turn allows easier integration into an existing Ansible platform for new users/customers.

I like to propose the following roles as a replacement.

All these roles provide at least the same os compatibility than the current stackstorm roles.
I'm not maintainer of any of these roles, but used all of them extensively across multiple distributions.

If this is a way you are interested in going forward with, I'm would create a pull request (or maybe one per role) to go forward with such a change.

@arm4b
Copy link
Member

arm4b commented Jan 31, 2019

It's arguable that moving to 3rd party instead of well-established existing roles will make support easier as we follow pretty simplified instructions of installing dependent services which are almost the same across many of our installations like https://docs.stackstorm.com/install/deb.html and https://github.com/StackStorm/st2-packages/blob/master/scripts/st2bootstrap-deb.sh. This way adding a change in one installation we know where to change in other installations as well. Another point is that all-purpose-roles will configure much more non-defaults than we expect. That might lead to diffs, not to forget about increased complexity and install runtime. In context of #190 one of the concerns would be to control the Ansible versioning requirements drift across all the dependencies vs in-house ST2 roles. We even tried to use a couple of Galaxy dependencies in the past but with time their upstream changes went incompatible with what we needed.

Anyway, thanks for the proposal. I think this is a good call!
Years ago when this repo was developed Ansible galaxy missed roles which would work on all 4 of our OS platforms. It's a good thing to reconsider and rely on 3rd party roles and a broader community.

We might not be able to accept this change immediately, but I agree it's a way forward for this repo in the future 👍

@arm4b arm4b changed the title Drop non-stackstorm roles Migrate to 3rd party Ansible Galaxy role dependencies Jan 31, 2019
@ytjohn
Copy link
Contributor

ytjohn commented Jan 31, 2019

Related #45

@arm4b
Copy link
Member

arm4b commented Jan 31, 2019

I think as a first step would be good to see 3rd party mongodb role integration as a PoC PR to get a feeling of it.

That might also help in future @cognifloyd's efforts with #75 improving mongo auth.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants