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

Split up the tasks into different tasks files #78

Open
aoyawale opened this issue Mar 10, 2018 · 8 comments
Open

Split up the tasks into different tasks files #78

aoyawale opened this issue Mar 10, 2018 · 8 comments

Comments

@aoyawale
Copy link

Looks like the main.yml it starting to get huge and hard to follow. We should break it down into roles and follow best practices.

@aoyawale
Copy link
Author

Same for the rest of the files now I looked more into it. I can start working on this and make it cleaner.

@aoyawale
Copy link
Author

For now the roles dir would be in this git project but, it would be better in the long run for each role to be its on project.

@aoyawale aoyawale changed the title Split up the tasks into roles Split up the tasks into different tasks files Mar 17, 2018
@aoyawale
Copy link
Author

aoyawale commented Mar 17, 2018

for the moment since we would need more projects to host the other roles. I'll convert this into tasks files instead. I'll still leave the roles area until that is decided.

@TheReal1604
Copy link

TheReal1604 commented Aug 1, 2018

@jlozadad @xenithorb I think the things should be split up in roles - the ansible way is little niche to install rocket.chat - maybe for bigger deployments which need more automation in an easy way. Would be cool to have that. I would fork that repo and try to split it up - what you think guys?

@aoyawale
Copy link
Author

aoyawale commented Aug 1, 2018

@TheReal1604 I agree that it should be roles but, since there's barely any activity and such, I was trying to commit things to what we have right now. If we do roles then we should create a git repo for each.

@xenithorb
Copy link
Collaborator

In my professional life I would do exactly that, split things into per-repository roles and make them as modular and decoupled as possible. That being said, this role has always been a rather opinionated take on how to deploy a single instance of rocketchat to debian, ubuntu, centos, etc.

In other words, the scope of the role was to get things up and running with your choice of operating system, without trying to be a showcase of modern ansible best practices (this role started way before me and I picked it up somewhere around version 1.8)

The other aspect to this is that, from my observation, RocketChat hasn't expressed any direct interest to me in improving this role and seem to be very solidified around the snap platform. I too have moved onto various other containerized platforms and I also question whether ansible is still a way forward for deploying this software. That being said, I still use it for my own instance.

At the risk of hating my own words, the main.yml is huge indeed but if it works why fix it? And if it doesn't work, is it because main.yml is lengthy? Are you looking at develop? I merged a huge set of changes last month. I may have already split certain things, I'm just terrible about merging them into master because I haven't been able to maintain testing reliably enough (I find vagrant very porcelain and travis is even worse in terms of things breaking over time) in order to stamp it for production.

@TheReal1604
Copy link

@xenithorb thanks for your sight.

At the risk of hating my own words, the main.yml is huge indeed but if it works why fix it? And if it doesn't work, is it because main.yml is lengthy? Are you looking at develop? I merged a huge set of changes last month. I may have already split certain things, I'm just terrible about merging them into master because I haven't been able to maintain testing reliably enough (I find vagrant very porcelain and travis is even worse in terms of things breaking over time) in order to stamp it for production.

Its just an improvement thing - make it more "future proof" or you need a complete rework at some point in the future. :) I use ansible also to administrate our docker-hosts, rocket-chat itself is deployed via docker, mongo also. Maybe this could also be a way to go? Do you have any specific improvements in deploying it directly with all the depencies?

Anyways - thanks for the great work, That playbook looks like very much time invested til now. 👍

@aoyawale
Copy link
Author

aoyawale commented Aug 2, 2018

whatever works its fine by me. Either update this role or create multiple roles or create something more into containers. Although I seen more areas use RC in containers, there's still the use of ansible with containers.

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

No branches or pull requests

3 participants