Uso puppet para instalar un JDK y un tomcat actuales.
package {
[ "openjdk-6-jdk", "openjdk-6-doc", "openjdk-6-jre",
"tomcat6", "tomcat6-admin", "tomcat6-common", "tomcat6-docs",
"tomcat6-user" ]:
ensure => present,
}
Ahora me gustaría agregar
JAVA_HOME="/usr/lib/java"
export JAVA_HOME
a /etc/profile
, solo para sacar esto del camino. Todavía no he encontrado una respuesta directa en los documentos. ¿Hay alguna forma recomendada de hacer esto?
En general, ¿cómo le digo a Puppet que coloque este archivo allí o que lo modifique? Estoy usando Puppet para un solo nodo (en modo independiente) solo para probarlo y para mantener un registro de la configuración del servidor .
Respuestas:
Agregue un archivo
/etc/profile.d/
con el sufijo.sh
. Se obtendrá como parte de / etc / profile en Red Hat y Debian y derivados, no puedo decir en otras distribuciones. En términos generales, si es posible, es mejor agregar fragmentos en lugar de reemplazar archivos distribuidos, ya que tiende a ser más seguro en el futuro.Entonces, en títeres, lo siguiente haría:
¿Esto es lo que estás buscando o necesitas más detalles?
fuente
.pp
fuente.La solución de Mark es la mejor para agregar cosas al perfil de todos, pero si alguna vez necesita asegurarse de que algunas líneas están en un archivo, Puppet Labs tiene un gran módulo llamado stdlib que incluye file_line que hará lo que necesita. Anteriormente he usado echo y grep en el tipo de ejecución para hacer esto, pero file_line es mucho más fácil y limpio.
Aquí está la ayuda para ello:
fuente