Modelado de CI con YAML en el sistema de tickets OTOBO
Modelado de CI con YAML en el sistema de tickets OTOBO
Sección titulada «Modelado de CI con YAML en el sistema de tickets OTOBO»Este capítulo muestra cómo definir y ampliar sus Configuration Items (CIs) en el sistema de tickets OTOBO mediante YAML, desde la estructura de páginas y Layout hasta los campos dinámicos y tipos de campo.
1. Estructura de las definiciones de CI
Sección titulada «1. Estructura de las definiciones de CI»Cada definición de CI en OTOBO consta de varios componentes principales:
- Class: Name: <Clase-CI> Categories: - All - <Otras categorías> NumberModule: AutoIncrement PermissionGroup: itsm-configitem VersionStringModule: Incremental Definition: | Pages: - Name: Summary Layout: Columns: 3 ColumnWidth: 1fr 1fr 1fr Interfaces: - Agent - Customer Content: - Section: General Fields::General Information RowStart: 1 ColumnStart: 1 - Section: ITSM Model::Model RowStart: 1 ColumnStart: 2 - Section: CMDB Description::Description RowStart: 2 ColumnStart: 1 ColumnSpan: 2 DynamicFields: { … }1.1 Pages
Sección titulada «1.1 Pages»- Name: Nombre de la pestaña en el Zoom del Agent.
- Interfaces: Controla quién ve la pestaña (Agent, Customer, …).
- Content: Lista de secciones, con posición (RowStart, ColumnStart, dado el caso Span).
1.2 Layout
Sección titulada «1.2 Layout»- Columns: Número de columnas en la pestaña.
- ColumnWidth: Especificaciones de ancho proporcional (p. ej.,
1fr 2fr 1fr).
1.3 Roles (Roles)
Sección titulada «1.3 Roles (Roles)»Los roles definen secciones y listas de campos reutilizables:
- Definition: | Sections: General Information: Content: - Header: Información general - DF: System-Name - DF: System-Version Relations: Type: ConfigItemLinks Header: Relaciones RoleName: CMDB General Fields- RoleName: Nombre único del rol.
- Sections: Contiene una o varias secciones con referencias a campos (
DF:).
2. Campos dinámicos (DynamicFields) y tipos de campo
Sección titulada «2. Campos dinámicos (DynamicFields) y tipos de campo»Con DynamicFields puede ampliar sus clases de CI con atributos individuales. Cada campo recibe un nombre, tipo y configuración:
DynamicFields: DynamicFieldName: FieldType: Text Label: My Label Name: System-Name ObjectType: ITSMConfigItem Config: DefaultValue: 'demo' MultiValue: '0' PossibleNone: '1' Tooltip: ''
System-LifecycleStatus: FieldType: Dropdown Label: Lifecycle status of system Name: System-LifecycleStatus ObjectType: ITSMConfigItem Config: DefaultValue: '' MultiValue: '0' PossibleNone: '1' PossibleValues: demo: demo productive: productive Tooltip: ''2.1 Tipos de campo importantes
Sección titulada «2.1 Tipos de campo importantes»| FieldType | Descripción |
|---|---|
| Text | Campo simple de una línea |
| TextArea | Campo de texto libre multilínea |
| Date | Campo de fecha (con restricciones vía YearsInPast/...) |
| Dropdown | Campo de selección (Single/Multi vía MultiValue) |
| Agent | Búsqueda de usuario/agente LDAP |
| ConfigItem | Enlace a otro CI (tipo de relación definible) |
| ScriptTemplateToolkit | Campo calculado vía plantilla (p. ej., sumas) |
2.2 Opciones de configuración
Sección titulada «2.2 Opciones de configuración»- DefaultValue: Valor predeterminado al crear uno nuevo.
- MultiValue:
'0'(selección única) o'1'(múltiple). - PossibleNone:
'1'para permitir una selección vacía. - PossibleValues: Pares clave-valor para campos Dropdown.
- EditFieldMode: p. ej.,
Dropdown,AutoComplete. - ReferenceFilterList, ReferencedObjectType: Para campos de búsqueda (lookup).
3. Ejemplo
Sección titulada «3. Ejemplo»- Class: Name: CIName Categories: - All - IT NumberModule: AutoIncrement PermissionGroup: itsm-configitem VersionStringModule: Incremental Definition: | Pages: - Name: Intro Layout: Columns: 2 ColumnWidth: 1fr 1fr Interfaces: - Agent Content: - Section: CMDB General Fields::Information RowStart: 1 ColumnStart: 1 - Section: CMDB General Fields::Risks RowStart: 2 ColumnStart: 1 - Name: Details Layout: Columns: 1 ColumnWidth: 1fr Interfaces: - Agent Content: - Section: CMDB General Fields::Software RowStart: 1 ColumnStart: 1 DynamicFields: System-Name: { … } System-Version: { … } System-LifecycleStatus: { … }4. Consejos y mejores prácticas
Sección titulada «4. Consejos y mejores prácticas»- Modularidad: Utilice roles para secciones recurrentes.
- Claridad: Agrupe los campos relacionados en sus propias Pages.
- Documentación: Comente sus archivos YAML y mantenga los disparadores de versión.
- Testing: Valide los nuevos campos primero en una instancia de prueba.
Con esta estructura, puede adaptar la CMDB de OTOBO de forma flexible a los requisitos de su organización y mantenerla siempre transparente.