I decided to use Fabric as well, because then I could just use apt to install packages, which strikes me as a far superior way than building everything from source.
However, it took me days to complete the script and make it moderately reusable (and completely idempotent and able to handle different configurations), and it still doesn't do as much as I want it to. For example, I just noticed that Ansible[1] can tell whether a change needs to restart a service (e.g. if a config file changed) and only then do it.
That's pretty useful, but my script can't really handle it.
Comments
I decided to use Fabric as well, because then I could just use apt to install packages, which strikes me as a far superior way than building everything from source.
However, it took me days to complete the script and make it moderately reusable (and completely idempotent and able to handle different configurations), and it still doesn't do as much as I want it to. For example, I just noticed that Ansible[1] can tell whether a change needs to restart a service (e.g. if a config file changed) and only then do it.
That's pretty useful, but my script can't really handle it.
[1] http://ansible.github.com/examples.html