Vous pouvez mettre à jour le fichier de script packageTest.sh pour lancer des collecteurs personnalisés sur les systèmes UNIX.
Avant de commencer
Assurez-vous que vous connaissez les noms des collecteurs associés avec des propriétés de prérequis
comme indiqué dans la section Collecteurs prédéfinis pour les systèmes UNIX.
Certains collecteurs
ont besoin d'un ou de plusieurs paramètres en entrée. Paramètres d'entrée possibles :
- La valeur attendue pour la propriété de prérequis.
Ainsi, os.pageSizeEnabled
est le collecteur permettant de vérifier si la taille de page est activée en fonction d'un segment spécifique,
utilisé par la propriété de prérequis os.pageSizeEnabled. Pour vérifier que la taille de page 64 KB est activée, la valeur attendue medium
est transmise au collecteur os.pageSizeEnabled.
- Application, utilitaire ou sous-type de service, représenté par l'identificateur de suffixe
[suffix_identifier] dans le nom de la propriété de prérequis,
par exemple [prefix_identifier.]property_name.[suffix_identifier].
Ainsi, os.filepath est le collecteur commun qui vérifie l'existence de valeurs
binaires, utilisé par la propriété de prérequis os.file.binary_name. Pour vérifier que la valeur binaire bash existe, son nom est transmis
au collecteur os.filepath.
Procédure
- A l'aide d'un éditeur, ouvrez le script ips_root/UNIX_Linux/packageTest.sh.
- Ajoutez le code pour lire la propriété personnalisée depuis le fichier de configuration, par exemple :
res=`echo $line | grep '[prefix_identifier.]property_name`
Par exemple, pour lire la propriété de prérequis personnalisée env.path.jar et vérifier si l'environnement d'exécution Java est défini dans la variable PATH :
res=`echo $line | grep env.path.jar`
- Ajoutez une instruction if pour gérer l'appel du collecteur si la propriété de prérequis
existe, par exemple :
if {$res !=""] ; then
fi
- Analysez le fichier de configuration pour trouver la valeur attendue pour la propriété de prérequis, par exemple :
ExpValue=`echo $res | cut -d "=" -f2`
- Si nécessaire, déclarez les paramètres d'entrée à transmettre au collecteur. Appelez le collecteur et renvoyez la propriété de prérequis avec sa valeur réelle au fichier
$TMP_DIR/prs.check.
- Appel du collecteur personnalisé pour une propriété de prérequis sans paramètre d'entrée
echo "ss=\`./[prefix_identifier.]property_name\`" >>/$TMP_DIR/prs.check
echo "echo \"[prefix_identifier.]property_name=\$ss\"" >>/$TMP_DIR/prs.check echo
Dans l'exemple :
echo "ss=\`./env.path.jar\`" >>/$TMP_DIR/prs.check
echo "echo \"env.path.jar=\$ss\"" >>/$TMP_DIR/prs.check
- Appel du collecteur personnalisé pour une propriété de prérequis avec la valeur attendue en tant que paramètre d'entrée
prod=`echo "$line" |cut -d"=" -f2`
echo "ss=\`./[prefix_identifier.]property_name "$prod"\`" >>/$TMP_DIR/prs.check
echo "echo \"[prefix_identifier.]property_name=\$ss\"" >>/$TMP_DIR/prs.check
Par
exemple, la déclaration et l'appel du collecteur os.pageSizeEnabled :
prod=`echo "$line" |cut -d"=" -f2`
echo "ss=\`./os.pageSizeEnabled "$prod"\`" >>/$TMP_DIR/prs.check
echo "echo \"os.pageSizeEnabled=\$ss\"" >>/$TMP_DIR/prs.check
- Appel du collecteur personnalisé pour une propriété de prérequis avec sous-type en tant que paramètre d'entrée
prod=`echo $line |cut -d"=" -f1 |cut -d"." -f3-last_field | sed 's/ //g'`
echo "ss=\`./os.filepath "$prod"\`" >>/$TMP_DIR/prs.check
echo "echo \"os.file."$prod"=\$ss\"" >>/$TMP_DIR/prs.check
Par
exemple, la déclaration et l'appel du collecteur os.filepath :
prod=`echo $line |cut -d"=" -f1 |cut -d"." -f3-7 | sed 's/ //g'`
echo "ss=\`./os.filepath "$prod"\`" >>/$TMP_DIR/prs.check
echo "echo \"os.file."$prod"=\$ss\"" >>/$TMP_DIR/prs.check
- Répétez les étapes 2 à 5 pour chaque appel du collecteur pour une propriété de prérequis personnalisée.