diff --git a/gns3server/db/models/templates.py b/gns3server/db/models/templates.py index c43642295..a7ababe13 100644 --- a/gns3server/db/models/templates.py +++ b/gns3server/db/models/templates.py @@ -36,6 +36,9 @@ class Template(BaseTable): builtin = Column(Boolean, default=False) usage = Column(String) template_type = Column(String) + vendor = Column(String) + model = Column(String) + netmiko_device_type = Column(String) compute_id = Column(String) images = relationship("Image", secondary=image_template_map, back_populates="templates") diff --git a/gns3server/schemas/controller/templates/__init__.py b/gns3server/schemas/controller/templates/__init__.py index 78cd9cc25..04b4b9bf8 100644 --- a/gns3server/schemas/controller/templates/__init__.py +++ b/gns3server/schemas/controller/templates/__init__.py @@ -48,6 +48,9 @@ class TemplateBase(BaseModel): template_type: Optional[NodeType] = None compute_id: Optional[str] = None usage: Optional[str] = "" + vendor: Optional[str] = Field(None, description="Device vendor (e.g., Cisco, Juniper, Huawei)") + model: Optional[str] = Field(None, description="Device model (e.g., ISR4451-X, MX204, NE40E)") + netmiko_device_type: Optional[str] = Field(None, description="Netmiko device type for automation (e.g., cisco_ios, juniper_junos, huawei)") class TemplateCreate(TemplateBase):