About Majic Ansible Roles ========================= Majic Ansible Roles is a collection of Ansible roles that are used on regular basis for deployment and maintenance of Majic infrastructure. The roles are kept as a separate project in hope of making them potentially useful to wider audience, and for reference purposes. Roles cover different aspects of infrastructure, such as mail servers, web servers, web applications etc. The roles are mainly well-suited for smaller installations. Why were these roles created? ----------------------------- For a long time I have had a couple of Internet-facing servers where I hosted all the IT infrastructure I needed for my day-to-day life. This started off with some basic services, like mail and XMPP server, and in time extended to include a web server, code repository etc. As the number of services I used grew, I found it more difficult to track updates and upgrades, let alone test them in reliable way. The biggest problem in particular was lack of time to properly document all the different things I've set-up. Being familiar with some Puppet-based deployments, I've started looking into the possibility of using a configuration management system. Ansible emerged as something that I thought would be easy to use, due to its agent-less nature. Once I passed some basic tutorials and got to know the system a bit, I decided to start my journey on implementing the different roles, in the way I want them, that would let me easily set-up my servers (and reinstall them, amongst other things). The roles you see within this repository are the fruit of this labour. I hope you find them useful. Features --------