Top posting to summarize things:
I'm OK with doing a 'POC' of using Ansible with mailman 3 in order to move forward with this migration and release linode server which we pay money for it
on a regular basis while we could use this for other usage.
This is what I suggest:
1. Create a VM in PHX called '
mail.phx.ovirt.org' - anyone from the team can do it - if no one is doing it by the end of this week, I'll do it.
2. You should get access to that VM (please send you ssh public key to infra list so we can add you and you'll get access to the VM).
3. Using the Ansible playbook to install the new service (hyperkitty) on the new VM.
4. Documenting the current configuration we have on
lists.ovirt.org (existing mailman) and applying it to the new server. ( adapting the Ansible playbook to include our configuration )
5. Pushing the Ansible code into a repo (we might need to create a new git repo for it)
6. Migrating the server ( with a rollback option )
Up until now this didn't include managing Ansible via foreman and only refers to migrating existing mailman to new server using Ansible.
The second part is more tricky:
1. Install new foreman VM on PHX ( that's a pending task we need prioritze regarless of the mailman migration and we'll do it soon after jenkins migrated )
2. Check if its possible manage Ansible via foreman or what does it mean to do it
3. If we'll see that its not correlate to how we manage the infra right now and takes a big toll on management, we will decide the POC is a fail and we will need to write puppet classes to the new installed mailman.
As you can understand this approach has a "risk" of doing some duplicate work, but I think its the best way to go because it will allow us to:
- Migrate the quickest way, saving money on hosting we don't need
- Testing Ansible support, which is something we can't ignore, as we see more and more Ansible adoption and I believe we should evaluate it.
- We will be able to open bugs to foreman if we'll hit any issues which is blocking us
- If we will end up writing puppet manifest, we would have not wasted too much time on Ansible since most of the code is already available.
Lets move forward with this.
Eyal.