Folks
We have a custom deployment tool at the moment at work and we're evaluating replacing it with something non-proprietary like puppet.
One of the main things that it does for us at the moment is tokenization. For example in a a server.xml file in a tomcat deployment, we might deploy a file called server.xml.tokenzenized
with a line like the below
<Ajp12Connector port="@@TOMCAT.AJP.PORT@@" ajpidFile="conf/ajp12_2.id" />
and then have a tokens.xml
file that would have a line like
<TOKEN NAME='TOMCAT.AJP.PORT' value = '8080/>
our deployment process then scans server.xml.tokenized, and replaces the tokens, writing the file out to server.xml.
Can puppet do this for an arbitrary file - or for something like tomcat, would I have to download a plugin that understood how tomcat worked?
Secondly, from the reading I've done to-date, it seems like most people use the puppet agent to retrieve files from the master - does this have to be the case - can you have a script that uses the puppet modelling and infrastructure and then log into hosts to deploy software? - the rationale is that for various reasons, we have a bias against agents in our environment.
Cheers