Web UI — Tableau de bord Netbox → Agent #44
Labels
No labels
bug fix
feature implementation
new feature
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
syonad/two#44
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
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?
Contexte et décisions
Interface web pour déployer/surveiller les ressources (VPCs, subnets, VMs) depuis Netbox vers l'agent two.
Remplace le script
scripts/sync.sh(trop peu évolutif pour un usage multi-personnes).Architecture retenue : micro-frontend Web Components, zero dépendance
cmd/orchd) — seulcore/config.jschange côté frontPrérequis Phase 1 :
Access-Control-Allow-Origin: *sur les handlers HTTP de l'agentStructure fichiers :
Contrat inter-composants (pour les autres équipes) :
manifest.jsonpar composant (tag name, version)import { config } from '../../core/config.js'customElements.define('mon-tag', MaClasse)à la fin du fichiergit clonedanscomponents/+ ligne danscomponents.jsonMapping Netbox → agent (déjà implémenté dans scripts/sync.sh, à porter en JS) :
container= VPC CIDR)active→ Subnet (VLAN VID=0 → bridge, >0 → vxlan)host_gateway→ interface_ip du subnetcustom_fields.default_route,custom_fields.iface_typesur Prefixcustom_fields.uefisur VirtualMachineÉtapes
Access-Control-Allow-Origin: *dans les handlers agent (internal/api/agent/server.go)web/config.json: structure de configweb/core/config.js: ES module qui fetch et expose configweb/core/registry.js: charge les composants listés dans components.jsonweb/components.json: liste initiale des composantsweb/components/vpc-panel/: Web Component (liste VPCs, panneau latéral droit, deploy/destroy)web/components/subnet-card/: idem subnetsweb/components/vm-card/: idem VMsweb/index.html: shell principal