feat(hypervisor1*): using LACP/802.3ad bonding #738
No reviewers
Labels
No labels
awaiting
awaiting-author
awaiting
awaiting-reviewer
bot
deployed
Silenced alert
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
DGNum/infrastructure!738
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "hypervisor-LACP"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
1b98a2a8ff211dfc122b211dfc122b4bba7f78bfeb366430cdebbd2db906sur le style des usage de builtins car je sais pas comment on veux le deal dans l'infra... avant je les mettait dans les inherit de lib, mais depuis que nixd dit qu'il aime pas, je pense que tout passe en mode
let inherit (builtins) ...;serai le mieux, mais c'est une affaire de style générale, pas a traité ici, ptet garder le fait de mettre dans le inherit lib le temps d'y réfléchir@ -0,0 +27,4 @@type = nullOr (submodule {options = {device-count = mkOption {type = int;au vue de l'incident qu'on a déjà connu, mettre un type qui enforce >0 me paraîtrait pas mal (genre
ints.positive)@ -198,2 +289,4 @@'';};aggregated-ether-options = mkOption {type = nullOr (submodule aggregated-ether-options);idem ici, met un enable ptet ?
si je comprends bien, tu veux que je mette une enable option dans le submodule aggregated-ether-options?
bah ducoup t'aurais même pas besoin de submodule, mais oui c'est l'idée. En mode "enable aggregated interface special configuration" ou smth like this
@ -200,0 +296,4 @@'';};ether-options = mkOption {type = nullOr (submodule ether-options);ce type me semble bizarre... genre si on a d'autres ether-options qui apparaissent ça fait des trucs chelou, adapte plutôt le xml de ether-options (donc mettre le nullOr plutôt sur ieee8023ad ou même bundle)
@ -25,0 +25,4 @@"ge-0/0/3" = "hypervisor12";"ge-0/0/5" = "hypervisor13";};configuration.ethernet-switching = {La config est exactement la même que pour idrac juste en dessous, ptet plutôt merge les deux ?
@ -41,2 +48,4 @@defaultText = ''config.inet.enable || config.inet6.enable || config.ethernet-switching.enable'';};aggregated-links = mkOption {type = nullOr (listOf str);ça a un sens différent
nullet[ ](autres que d'exploser un truc quelque part) ? si non lenullOrsert à rien et filtre plutôt sur[ ]dans la suite@ -165,0 +190,4 @@// (optionalAttrs (intf.aggregated-links != null) {aggregated-ether-options = {minimum-links = builtins.length intf.aggregated-links;link-speed = if hasPrefix "xe" (builtins.head intf.aggregated-links) then "10g" else "1g";demande plutôt l'info dans le module (quitte à mettre un défaut), je pense pas que s'appuyer sur des heuristique soit une super idée
@ -165,0 +194,4 @@};})) cfg)// (concatMapAttrs (mkMergeplutot que//, comme ça si une intf est config et agrégé en même temps il y aura une erreurebbd2db906c8a3917ceec8a3917cee510e45ab48tu aime vraiment les submodules toi, sinon all good
@ -0,0 +24,4 @@options = {chassis = {aggregated-devices = mkOption {type = nullOr (submodule {(déso de pas avoir vu avant) Comme pour d'autres chose plutôt : pourquoi nullOr submodule ?
ici on a même pas besoin de pas mettre l'option, si ? Si il faut effectivement pas la mettre, actuellement tu l'as suppr pas sur le switch quand tu apply
mmmmh, ça se comporte mal à cause du operation="replace" si je peux pas avoir un truc qui ne set pas le XML (avec nullOr): sinon je mets un nullOr sur device-count et si c'est non null je set le XML
chassisouaggregated-devices?mais pourquoi tu veut pas set le XML ? c'est ça que je comprend pas, et comme dit précédement, actuellement t'as un mauvais comportement si tu set l'option, apply et unset, le unset se fait pas
je ne comprends pas ce que tu dis
là t'as fix, mais avant tu avant pas de replace, donc l'option persistait, juste parce que tu voulait absolument pas écrire de xml quand t'écrit pas de valeur
@ -198,2 +294,4 @@'';};aggregated-ether-options = mkOption {type = submodule aggregated-ether-options;plus besoin du submodule
ducoup on peut pas avoir un déport des options et on est obligé de surcharger le submodule interface qu'on a déjà
oui mais si c'est bien orga c'est pas bien grave
@ -200,0 +301,4 @@'';};ether-options = mkOption {type = submodule ether-options;plus besoin du submodule
@lbailly wrote in #738 (comment):
de manière générale, les seuls usages des submodules pour moi c'est pour décrire un type qui est un attrs un peu particulier, donc pour attrsOf/listOf, ou quand tu va devoir l'écrire à plein d'endroit
510e45ab484d2327cf834d2327cf8363f9d2647aNew commits pushed, approval review dismissed automatically according to repository settings
63f9d2647a51c9a3f52a51c9a3f52a8de873ebd7