7.3. Déployer votre plugin sur un cluster
Vous pouvez déployer le plugin sur un cluster OpenShift Container Platform.
7.3.1. Construire une image avec Docker
Pour déployer votre plugin sur un cluster, vous devez construire une image et la pousser vers un registre d'images.
Procédure
Créez l'image à l'aide de la commande suivante :
$ docker build -t quay.io/my-repositroy/my-plugin:latest .
Facultatif : si vous souhaitez tester votre image, exécutez la commande suivante :
$ docker run -it --rm -d -p 9001:80 quay.io/my-repository/my-plugin:latest
Poussez l'image en exécutant la commande suivante :
$ docker push quay.io/my-repository/my-plugin:latest
7.3.2. Déployer votre plugin sur un cluster
Après avoir transféré une image contenant vos modifications dans un registre, vous pouvez déployer le plugin dans un cluster.
Procédure
Pour déployer votre plugin sur un cluster, installez un graphique Helm avec le nom du plugin comme nom de version Helm dans un nouvel espace de noms ou un espace de noms existant comme spécifié par l'option de ligne de commande
-n
. Indiquez l'emplacement de l'image dans le paramètreplugin.image
en utilisant la commande suivante :$ helm upgrade -i my-plugin charts/openshift-console-plugin -n my-plugin-namespace --create-namespace --set plugin.image=my-plugin-image-location
Où ?
n <my-plugin-namespace>
- Spécifie un espace de noms existant dans lequel déployer votre plugin.
--create-namespace
- Facultatif : si le déploiement se fait dans un nouvel espace de noms, utilisez ce paramètre.
--set plugin.image=my-plugin-image-location
-
Spécifie l'emplacement de l'image dans le paramètre
plugin.image
.
-
Facultatif : vous pouvez spécifier des paramètres supplémentaires en utilisant l'ensemble des paramètres pris en charge dans le fichier
charts/openshift-console-plugin/values.yaml
.
plugin: name: "" description: "" image: "" imagePullPolicy: IfNotPresent replicas: 2 port: 9443 securityContext: enabled: true podSecurityContext: enabled: true runAsNonRoot: true seccompProfile: type: RuntimeDefault containerSecurityContext: enabled: true allowPrivilegeEscalation: false capabilities: drop: - ALL resources: requests: cpu: 10m memory: 50Mi basePath: / certificateSecretName: "" serviceAccount: create: true annotations: {} name: "" patcherServiceAccount: create: true annotations: {} name: "" jobs: patchConsoles: enabled: true image: "registry.redhat.io/openshift4/ose-tools-rhel8@sha256:e44074f21e0cca6464e50cb6ff934747e0bd11162ea01d522433a1a1ae116103" podSecurityContext: enabled: true runAsNonRoot: true seccompProfile: type: RuntimeDefault containerSecurityContext: enabled: true allowPrivilegeEscalation: false capabilities: drop: - ALL resources: requests: cpu: 10m memory: 50Mi
Vérification
Vous pouvez consulter la liste des plugins activés sur la page Overview ou en naviguant à partir de Administration operator.openshift.io
Il peut s'écouler quelques minutes avant que la nouvelle configuration du plugin n'apparaisse. Si vous ne voyez pas votre plugin, il se peut que vous deviez rafraîchir votre navigateur si le plugin a été récemment activé. Si vous recevez des erreurs lors de l'exécution, vérifiez la console JS dans les outils de développement du navigateur pour rechercher d'éventuelles erreurs dans le code de votre plugin.
7.3.3. Désactiver votre plugin dans le navigateur
Les utilisateurs de la console peuvent utiliser le paramètre de requête disable-plugins
pour désactiver certains ou tous les plugins dynamiques qui seraient normalement chargés au moment de l'exécution.
Procédure
- Pour désactiver un ou plusieurs plugins spécifiques, supprimez le plugin que vous souhaitez désactiver de la liste des noms de plugins séparés par des virgules.
-
Pour désactiver tous les plugins, laissez une chaîne vide dans le paramètre de requête
disable-plugins
.
Les administrateurs de clusters peuvent désactiver les plugins dans la page Cluster Settings de la console web