Parece que o atributo catalina_base
está incorreto, ou seja, o CATALINA_HOME
foi definido em vez de CATALINA_BASE
. Altere-o para /var/lib/tomcat7
e execute o fantoche novamente.
Eu tenho o seguinte manifesto para configurar o Tomcat para usar a porta 8983:
include java
class { 'tomcat': install_from_source => false }
tomcat::instance {'default': package_name => 'tomcat7'} ->
tomcat::service {'default':
use_jsvc => false, use_init => true, service_name => 'tomcat7'
}->
tomcat::config::server { 'tomcat7':
catalina_base => '/usr/share/tomcat7',
port => 8983,
}
No entanto, quando executado, tenho os seguintes erros:
$ sudo puppet apply -vd tomcat-test.pp
debug: Augeas[server-/usr/share/tomcat7](provider=augeas): Augeas version 1.3.0 is installed
debug: Augeas[server-/usr/share/tomcat7](provider=augeas): sending command 'set' with params ["/files/usr/share/tomcat7/conf/server.xml/Server/#attribute/port", "8983"]
debug: Augeas[server-/usr/share/tomcat7](provider=augeas): Closed the augeas connection
err: /Stage[main]//Tomcat::Config::Server[tomcat7]/Augeas[server-/usr/share/tomcat7]: Could not evaluate: Save failed with return code false
O que indica que o Augeas está tentando modificar o arquivo errado ( /usr/share/tomcat7/conf/server.xml
) que está em /etc/tomcat7
.
No puppetlabs-tomcat GitHub , podemos ler:
tomcat::config::server: Configures attributes for the Server element in
$CATALINA_BASE/conf/server.xml
.
$catalina_base
Specifies the base directory for the Tomcat installation.
que sugerem que eu deveria ter conf
dir na pasta base do Tomcat ( CATALINA_BASE
), mas não está lá, pois todas as configurações estão armazenadas separadamente em /etc/tomcat7
.
Veja: documentação do Tomcat .
Existe alguma maneira pela qual puppetlabs-tomcat
module possa manipular adequadamente a instância padrão instalada do Tomcat? Ou eu deveria criar um link simbólico?