I have done some research on terraform, though it seems have all the features for proprietary clouds like google cloud, AWS and Azure. It lacks some features when it comes to OpenStack. Lets try some other tools as well and compare them.
My inclination is towards Ansible, just a thought.
Please assign urself to this issue, if you wish to contribute.