Aller au contenu

Modélisation CI avec YAML dans le système de tickets OTOBO

Modélisation CI avec YAML dans le système de tickets OTOBO

Section intitulée « Modélisation CI avec YAML dans le système de tickets OTOBO »

Ce chapitre montre comment définir et étendre vos Configuration Items (CI) dans le système de tickets OTOBO via YAML – de la structure des pages et du layout aux champs dynamiques et types de champs.


Chaque définition de CI dans OTOBO se compose de plusieurs éléments principaux :

- Class:
Name: <Classe CI>
Categories:
- All
- <Autres catégories>
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: { }
  • Name : Désignation de l’onglet dans le zoom Agent.
  • Interfaces : Contrôle de la visibilité de l’onglet (Agent, Customer, …).
  • Content : Liste de sections, avec position (RowStart, ColumnStart, éventuellement Span).
  • Columns : Nombre de colonnes dans l’onglet.
  • ColumnWidth : Indications de largeur proportionnelle (par ex. 1fr 2fr 1fr).

Les rôles définissent des sections et des listes de champs réutilisables :

- Definition: |
Sections:
General Information:
Content:
- Header: Allgemeine Informationen
- DF: System-Name
- DF: System-Version
Relations:
Type: ConfigItemLinks
Header: Beziehungen
RoleName: CMDB General Fields
  • RoleName : Nom unique du rôle.
  • Sections : Contient une ou plusieurs sections avec des références de champs (DF:).

2. Champs dynamiques (DynamicFields) et types de champs

Section intitulée « 2. Champs dynamiques (DynamicFields) et types de champs »

Avec les DynamicFields, vous étendez vos classes CI avec des attributs individuels. Chaque champ reçoit un nom, un type et une configuration :

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: ''
FieldTypeDescription
TextChamp simple sur une ligne
TextAreaChamp de texte libre sur plusieurs lignes
DateChamp de date (avec restrictions via YearsInPast/...)
DropdownChamp de sélection (Single/Multi via MultiValue)
AgentRecherche d’utilisateur LDAP/Agent
ConfigItemLien vers un autre CI (type de relation définissable)
ScriptTemplateToolkitChamp calculé via template (par ex. sommes)
  • DefaultValue : Valeur par défaut lors de la création.
  • MultiValue : '0' (sélection unique) ou '1' (sélection multiple).
  • PossibleNone : '1' pour autoriser une sélection vide.
  • PossibleValues : Paires clé-valeur pour les champs Dropdown.
  • EditFieldMode : par ex. Dropdown, AutoComplete.
  • ReferenceFilterList, ReferencedObjectType : Pour les champs de recherche (Lookup).

- 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: { }

  • Modularité : Utilisez des rôles pour les sections récurrentes.
  • Clarté : Regroupez les champs associés dans des pages dédiées.
  • Documentation : Commentez vos fichiers YAML et maintenez les déclencheurs de version.
  • Testing : Validez les nouveaux champs d’abord dans une instance de test.

Grâce à cette structure, vous pouvez adapter la CMDB d’OTOBO de manière flexible aux exigences de votre organisation et maintenir une transparence constante.