[5cfec97] | 1 | #!/bin/bash |
---|
[b0c7586] | 2 | #/** |
---|
[5cfec97] | 3 | #@file registeredsoftware |
---|
| 4 | #@brief Lista el software instalado en una imagen de sistema. |
---|
[b0c7586] | 5 | #@usage registeredsoftware Image |
---|
| 6 | #@param Image Nombre canónico de la imagen. |
---|
[5cfec97] | 7 | #@return Líneas con el formato: programa versión |
---|
| 8 | #@version 1.0 - Creación del script. |
---|
| 9 | #@author Ramón Gómez - Univ. Sevilla |
---|
| 10 | #@date 2014-02-27 |
---|
[9e4fa8e] | 11 | #@version 1.1.0 - Incluir sistema operativo. |
---|
| 12 | #@author Ramón Gómez - Univ. Sevilla |
---|
| 13 | #@date 2016-06-08 |
---|
[b0c7586] | 14 | #**/ |
---|
[5cfec97] | 15 | |
---|
| 16 | |
---|
| 17 | # Variables. |
---|
| 18 | OPENGNSYS=${OPENGNSYS:-"/opt/opengnsys"} |
---|
| 19 | SERVERCONF=$OPENGNSYS/etc/ogAdmServer.cfg |
---|
| 20 | |
---|
[b0c7586] | 21 | source $OPENGNSYS/lib/ogfunctions.sh || exit 1 |
---|
| 22 | |
---|
| 23 | # Mostrar ayuda o número de versión. |
---|
| 24 | [ "$*" == "help" ] && help |
---|
| 25 | [ "$*" == "version" ] && version |
---|
[5cfec97] | 26 | |
---|
| 27 | # Control básico de errores. |
---|
[b0c7586] | 28 | [ $# -eq 1 ] || raiseError usage |
---|
| 29 | [ "$USER" != "root" ] && raiseError access "Need to be root" |
---|
| 30 | source $SERVERCONF 2>/dev/null || raiseError access "Sin acceso a fichero de configuración" |
---|
[5cfec97] | 31 | |
---|
| 32 | # Sustituir caracteres ' por \' para evitar inyección SQL. |
---|
[b0c7586] | 33 | RESOURCE="${1//\'/\\\'}" |
---|
[5cfec97] | 34 | |
---|
| 35 | # Obtener lista de componentes del perfil de software asociado a la imagen. |
---|
[b0c7586] | 36 | dbexec "SELECT descr |
---|
| 37 | FROM ((SELECT 1 AS orden, nombresos.nombreso AS descr |
---|
[9e4fa8e] | 38 | FROM perfilessoft |
---|
| 39 | JOIN imagenes USING(idperfilsoft) |
---|
| 40 | JOIN nombresos USING(idnombreso) |
---|
| 41 | WHERE imagenes.nombreca='$RESOURCE') |
---|
| 42 | UNION |
---|
| 43 | (SELECT 2, softwares.descripcion |
---|
[5cfec97] | 44 | FROM perfilessoft |
---|
[9e4fa8e] | 45 | JOIN perfilessoft_softwares USING(idperfilsoft) |
---|
| 46 | JOIN softwares USING(idsoftware) |
---|
| 47 | JOIN imagenes USING(idperfilsoft) |
---|
| 48 | WHERE imagenes.nombreca='$RESOURCE')) AS unidas |
---|
[b0c7586] | 49 | ORDER BY orden ASC, descr ASC;" |
---|
[5cfec97] | 50 | |
---|