2.5. Extension du CLI OpenShift avec des plugins
Il est possible d’écrire et d’installer des plugins pour construire sur les commandes oc par défaut, ce qui vous permet d’effectuer de nouvelles tâches plus complexes avec OpenShift CLI.
2.5.1. Ecrire des plugins CLI Copier lienLien copié sur presse-papiers!
Il est possible d’écrire un plugin pour OpenShift CLI dans n’importe quel langage de programmation ou script qui vous permet d’écrire des commandes en ligne de commande. Il est à noter que vous ne pouvez pas utiliser un plugin pour écraser une commande oc existante.
Procédure
Cette procédure crée un plugin Bash simple qui imprime un message vers le terminal lorsque la commande oc foo est émise.
Créez un fichier appelé oc-foo.
Lorsque vous nommez votre fichier plugin, gardez à l’esprit ce qui suit:
- Le fichier doit commencer par oc- ou kubectl- pour être reconnu comme un plugin.
- Le nom du fichier détermine la commande qui invoque le plugin. À titre d’exemple, un plugin avec le nom de fichier oc-foo-bar peut être invoqué par une commande de oc foo bar. Il est également possible d’utiliser des accents si vous souhaitez que la commande contienne des tirets. À titre d’exemple, un plugin avec le nom de fichier oc-foo_bar peut être invoqué par une commande d’oc foo-bar.
Ajoutez le contenu suivant au fichier.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Après avoir installé ce plugin pour OpenShift CLI, il peut être invoqué à l’aide de la commande oc foo.
2.5.2. Installation et utilisation de plugins CLI Copier lienLien copié sur presse-papiers!
Après avoir écrit un plugin personnalisé pour OpenShift CLI, vous devez installer le plugin avant utilisation.
Conditions préalables
- L’outil oc CLI doit être installé.
- Il faut avoir un fichier de plugin CLI qui commence par oc- ou kubectl-.
Procédure
Au besoin, mettre à jour le fichier plugin pour être exécutable.
chmod +x <plugin_file>
$ chmod +x <plugin_file>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Déposez le fichier n’importe où dans votre PATH, comme /usr/local/bin/.
sudo mv <plugin_file> /usr/local/bin/.
$ sudo mv <plugin_file> /usr/local/bin/.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exécutez la liste des plugins oc pour vous assurer que le plugin est listé.
oc plugin list
$ oc plugin list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Exemple de sortie
The following compatible plugins are available: /usr/local/bin/<plugin_file>
The following compatible plugins are available: /usr/local/bin/<plugin_file>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Dans le cas où votre plugin n’est pas listé ici, vérifiez que le fichier commence par oc- ou kubectl-, qu’il est exécutable et qu’il est sur votre PATH.
Invoquez la nouvelle commande ou option introduite par le plugin.
Ainsi, si vous avez construit et installé le plugin kubectl-ns à partir du référentiel du plugin Sample, vous pouvez utiliser la commande suivante pour afficher l’espace de noms actuel.
oc ns
$ oc ns
Copy to Clipboard Copied! Toggle word wrap Toggle overflow A noter que la commande d’invoquer le plugin dépend du nom du fichier du plugin. À titre d’exemple, un plugin avec le nom de fichier d’oc-foo-bar est invoqué par la commande oc foo bar.