Mentions légales du service

Skip to content
Snippets Groups Projects

Fix #15882

Merged IMBERT Matthieu requested to merge kavlanng-channels-ssh-pattern into master

Cf. https://intranet.grid5000.fr/bugzilla/show_bug.cgi?id=15882

Sur les Aruba le nom des channels comporter un espace si on veut les référencer en ligne de commande ssh (utilisé par KavlanNG), pas d'espace si on veut les référencer dans une requête SNMP (utilisé par la supervision). Donc impossible de les nommer d'une façon qui convienne aux deux dans la refapi.

Solution que je propose:

  • Ajouter aux channels la possibilité d'avoir une propriété ssh_pattern, à l'instar des linecards. Par contre l'entrée linecards est un tableau, on peut donc avoir une propriété ssh_pattern par linecard. Dans le cas des channels, c'est directement un hash, on ne peut donc pas ajouter de propriété ssh_pattern dans l'entrée channels, on l'appelle donc channels_ssh_pattern et elle est au même niveau que channels
  • Ajouter dans le générateur KavlanNG la faculté d'interpoler (syntaxe standard ruby #{}) le contenu des ssh_pattern et channels_ssh_pattern. Cela permet de faire des manipulations de chaînes de caractères. Par exemple: pour ajouter l'espace dans le nom du channel ("lag1" -> "lag 1"), on peut écrire: channels_ssh_pattern: '#{/\D+/.match("%CHANNEL%")} #{/\d+/.match("%CHANNEL%")}'. Cela ne peut fonctionner que si le générateur KavlanNG est le seul à utiliser les propriétés ssh_pattern et channels_ssh_pattern, et il semble que ce soit bien le cas.

Point à discuter: le code d'interpolation est dans le générateur KavlanNG. Si dans le futur d'autres outils utilisent ssh_pattern et channels_ssh_pattern il faudra dupliquer ce code d'interpolation dans ces outils. C'est pas très souhaitable (d'autant plus si l'outil n'est pas en ruby). Une solution alternative serait que le générateur refapi fasse le travail d'interpolation, et génère des ssh_name pour chaque port / chaque channel, dont la linecard / le channel aurait un ssh_pattern / channels_ssh_pattern, à l'instar de ce qui est fait pour snmp_pattern.

Merge request reports

Pipeline #1025956 passed

Pipeline passed for 606be32b on kavlanng-channels-ssh-pattern

Approved by

Merged by IMBERT MatthieuIMBERT Matthieu 8 months ago (Aug 28, 2024 8:05am UTC)

Merge details

  • Changes merged into master with 18fd9b1b.
  • Deleted the source branch.

Pipeline #1025975 passed

Pipeline passed for 18fd9b1b on master

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
Please register or sign in to reply
Loading