8.2. Déclenchement des ressources Kubernetes
Les ressources Kubernetes n'ont pas de champs pour le déclenchement, contrairement aux configurations de déploiement et de construction, qui incluent dans leur définition d'API un ensemble de champs pour contrôler les déclencheurs. Au lieu de cela, vous pouvez utiliser des annotations dans OpenShift Container Platform pour demander un déclenchement.
L'annotation est définie comme suit :
- 1
- Requis :
kindest la ressource à partir de laquelle le déclencheur doit êtreImageStreamTag. - 2
- Obligatoire :
namedoit être le nom d'une balise de flux d'images. - 3
- Facultatif :
namespaceindique par défaut l'espace de noms de l'objet. - 4
- Obligatoire :
fieldPathest le chemin JSON à modifier. Ce champ est limité et n'accepte qu'une expression de chemin JSON qui correspond précisément à un conteneur par ID ou index. Pour les pods, le chemin JSON est "spec.containers[ ?(@.name='web')].image". - 5
- Facultatif :
pausedindique si le déclencheur est mis en pause ou non, la valeur par défaut étantfalse. Définissezpausedàtruepour désactiver temporairement ce déclencheur.
Lorsqu'une des ressources principales de Kubernetes contient à la fois un modèle de pod et cette annotation, OpenShift Container Platform tente de mettre à jour l'objet en utilisant l'image actuellement associée à la balise de flux d'images qui est référencée par le déclencheur. La mise à jour est effectuée par rapport à l'adresse fieldPath spécifiée.
Voici quelques exemples de ressources de base de Kubernetes qui peuvent contenir à la fois un modèle de pod et une annotation :
-
CronJobs -
Deployments -
StatefulSets -
DaemonSets -
Jobs -
ReplicationControllers -
Pods