Tenemos una aplicación de servidor Linux que se compone de una serie de herramientas de código abierto, así como de programas que hemos escrito nosotros mismos. Idealmente, nos gustaría poder instalar esta aplicación en cualquier distribución común de Linux.¿Cuál es el mejor enfoque para escribir un instalador genérico para una aplicación Linux?
En el pasado, hemos escrito scripts Perl para automatizar las instalaciones de esta aplicación. Desafortunadamente, debido a la idiosincrasia de diferentes distribuciones de Linux, la lógica dentro de estos scripts de instalación se vuelve terriblemente compleja y puede cambiar a medida que se lanzan nuevas versiones de cada distribución soportada. ¡Mantener el instalador se convierte así en una de las partes del proyecto que requieren más tiempo!
Estoy buscando asistencia, ya sea un marco, documentación, muestras de código, que pueden hacer que este proceso sea menos doloroso. Estos son los tipos de cosas que nuestro instalador tiene que hacer:
Crear usuario/grupo representa
Crear árboles de directorios con la propiedad específica y permisos
Instalar aplicaciones de código abierto, lo que podría compilar desde la fuente durante la instalación
Insertar binarios, scripts, archivos de configuración y documentos precompilados en directorios específicos
Registro de tipo init scripts de inicio y cierre
generar claves de cifrado
verificar la conectividad a un servidor central