On Mon, 17 Nov 2014, Griffin Boyce wrote:
Hello all,
So as some of you know, I've been working on installers for hidden services, to ideally make very common services (such as blogs and plain websites) easy to deploy and automatically update. This is a very rough version of the one-click hidden service installer, but I'd love to get feedback on places where it breaks and where it could use a major structural change.
Here is an idea for a major structural change. That's probably too much changes if you're planning to have a first version soon, but maybe for a future 2.0 version if this change looks like a good idea.
After looking at the scripts, it looks quite similar to configuration that is usually done with tools such as ansible, puppet, saltstack, etc ...
So I am thinking that an other way to do it could be to write a few ansible modules (or modules for your favorite configuration management tool) for the various tasks currently done by the script (installing nginx, installing a blog software, setup a hidden service, configure the firewall, etc ...), or take existing modules if they do what is needed. Then write a GUI program that will ask some questions, and when you click on the "setup" button generate an ansible variables file containing the answers to those questions (variables which are used by the ansible modules), and run ansible to apply the changes on the system.
Normal users would only use the GUI and click "setup", but expert users would be able to take the modules and include them in their own ansible setup without the GUI.