general design question

Hello All,

We are in the process of transitioning our config management to Ansible and I have a general question. Our initial effort involves creating a soup-to-nuts reference implementation of our platform. We envision a complex, multi-server platform provisioned via Cloudfront and configured via Ansible, that functions when Ansible is done doing its work.

A feature we’d like to support is clean extension points that allow both extending existing roles and sprinkling in new roles that are specific to whomever is running the platform. We’d like this to be clean and easy so that folks don’t end up forking the core.

Any suggestions about the best way to achieve this with Ansible? Has anyone done anything similar?

Best,

Ed.

Hi Ed,

I like nuts, but I have never been a fan of soup. That all being said, sure thing.

By clean extension points and extensions, do you mean people that are consuming the edX configuration project?

What I would probably recommend is distributing a collection of roles with a sample playbook, and let people write their own playbooks for when they wish to customize.

–Michael