14.4. Étapes de validation pré-vol par module
Preflight effectue les validations suivantes sur chaque module KMM présent dans le cluster :
- Étape de validation de l'image
- Étape de validation de la construction
- Étape de validation du signe
14.4.1. Étape de validation de l'image Copier lienLien copié sur presse-papiers!
La validation de l'image est toujours la première étape de la validation du contrôle en amont à exécuter. Si la validation de l'image est réussie, aucune autre validation n'est exécutée sur ce module spécifique.
La validation de l'image se fait en deux étapes :
- Existence et accessibilité de l'image. Le code tente d'accéder à l'image définie pour le noyau mis à jour dans le module et d'obtenir ses manifestes.
-
Vérifiez la présence du module du noyau défini dans
Moduledans le chemin correct pour l'exécution future demodprobe. Le chemin correct est<dirname>/lib/modules/<upgraded_kernel>/.
Si cette validation est réussie, cela signifie probablement que le module du noyau a été compilé avec les bons en-têtes Linux.
14.4.2. Étape de validation de la construction Copier lienLien copié sur presse-papiers!
La validation de la compilation n'est exécutée que lorsque la validation de l'image a échoué et qu'il existe une section build dans le site Module qui est pertinente pour le noyau mis à niveau. La validation de la construction tente d'exécuter la tâche de construction et de valider qu'elle se termine avec succès.
Vous devez spécifier la version du noyau lorsque vous exécutez depmod, comme indiqué ici :
RUN depmod -b /opt ${KERNEL_VERSION}
$ RUN depmod -b /opt ${KERNEL_VERSION}
Si l'indicateur PushBuiltImage est défini dans la ressource personnalisée (CR) PreflightValidationOCP, il essaiera également de pousser l'image résultante dans son référentiel. Le nom de l'image résultante est tiré de la définition du champ containerImage de la CR Module.
Si la section sign est définie pour le noyau mis à niveau, l'image résultante ne sera pas le champ containerImage de la CR Module, mais un nom d'image temporaire, car l'image résultante doit être le produit du flux Sign.
14.4.3. Étape de validation du signe Copier lienLien copié sur presse-papiers!
La validation du signe n'est exécutée que lorsque la validation de l'image a échoué, qu'il existe une section sign dans le site Module qui est pertinente pour le noyau mis à niveau, et que la validation de la construction s'est terminée avec succès dans le cas où il existe une section build dans le site Module qui est pertinente pour le noyau mis à niveau. La validation de signature essaiera d'exécuter le travail de signature et de valider qu'il se termine avec succès.
Si l'indicateur PushBuiltImage est défini dans la CR PreflightValidationOCP, la validation du signe essaiera également de pousser l'image résultante vers son registre.
L'image résultante est toujours l'image définie dans le champ containerImage du formulaire Module. L'image d'entrée est soit la sortie de l'étape Build, soit une image définie dans le champ UnsignedImage.
S'il existe une section build, l'image d'entrée de la section sign est l'image de sortie de la section build. Par conséquent, pour que l'image d'entrée soit disponible pour la section sign, l'indicateur PushBuiltImage doit être défini dans le CR PreflightValidationOCP.