Case

    Relación entre ASMS y DevOps

    Para realizar la integración es necesario relacionar los campos del ticket de Aranda ASMS con los campos del WorkItem de DevOps por medio de la sección “case” del archivo de configuración.

    Estructura del json

    {
      "case": [
        {
        "reference": "",
        "definition": {
          "subject": {
            "type": "",
            "key": ""
          },
          "description": {
            "type": "",
            "key": ""
          },
          "responsible": {
            "type": "",
            "key": "",
            "searchBy": [ "Email" ],
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          },
          "responsibleGroup": {
            "key": "",
            "type": "",
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          },
          "client": {
            "type": "",
            "key": "",
            "searchBy": [ "Email" ],
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          },
          "company": {
            "type": "",
            "key": "",
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          },
          "applicant": {
            "type": "",
            "key": "",
            "searchBy": [ "Email" ],
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          },
          "typeRegister": {
            "type": "",
            "key": "",
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          },
          "ci": {
            "type": "",
            "key": "",
            "defaultValue": {
              "id": 0,
              "value": ""
            }
          }
        }
      }
      ]
    }
    

    Propiedades :

    Propiedades Descripción
    reference Identificador único para crear una relación entre los conceptos project > category, itemType, typeRegister, applicant, responsibleGroup, responsible, company, client ver
    definition Permite relacionar los campos del caso de ASMS con los campos del WorkItem en DevOps

    definition

    Para realizar la integración es necesario relacionar los campos del caso en Aranda ASMS con el WorkItem de DevOps mediante la sección “definition” del archivo de configuración, estas propiedades en ASMS se pueden asociar con campos de tipo lista o string en DevOps, excluyendo la propiedad subject y description.

    Propiedades:

    Propiedades Descripción  
    subject Representa el campo Subject del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps, se recomienda usar el campo System.Title.  
    description Representa el campo Description del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps.  
    typeRegister Representa el campo Tipo de registro del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps. Propiedades internas
    responsibleGroup Representa el campo Grupo responsable del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps. Propiedades internas
    responsible Representa el campo Responsable del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps. Propiedades internas
    applicant Representa el campo Solicitante del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps. Propiedades internas
    company Representa el campo Compañía del caso en Aranda, permite relacionar este campo con otro campo equivalente del WorkItem en DevOps. Propiedades internas
    client Representa el campo Cliente del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps. Propiedades internas
    ci Representa el campo CI del caso en Aranda y permite relacionar este campo con un campo equivalente del WorkItem en DevOps. Propiedades internas


    Caso en ASMS: Ilustración de referencia, información del cliente de los casos en la plataforma ASMS


    Caso en ASMS parte 2: Ilustración de referencia, información básica de los casos en la plataforma ASMS


    WorkItem DevOps: Ilustración de referencia, información básica de los tickets en la plataforma DevOps


    Propiedades internas

    {
      "key": "",
      "type": "",
      "searchBy": ["Email"],
      "defaultValue": {
        "id": 0,
        "value": ""
      }
    }
    


    Donde:

    Propiedades Descripción  
    type Tipo de asociación, los tipos soportados son Value, Mapper, FieldValue. FieldValue, Value, Mapper.
    key Nombre o identificador del campo en DevOps donde se buscará y actualizará la información. Propiedades en DevOps
    searchBy Propiedad de búsqueda del campo, solo aplica para los campos de tipo “User” (responsible, applicant, client) Ver
    defaultValue Permite agregar un valor por defecto. Ver


    Propiedad “defaultValue”

    1. La propiedad defaultValue permite agregar valores por defecto, si agrega esta propiedad con el valor de defaultValue.id para el caso en Aranda o defaultValue.value para el WorkItem en DevOps, el sistema agrega el valor por defecto a la plataforma que estableció el valor.

    2. Para los campos “subject, description”, no se puede agregar un valor por defecto porque son valores escritos por el usuario y no se admite una relación de valores.

    3. Sólo podrá agregar un valor por defecto si el tipo de mapeo es “Mapper” o “FieldValue”.

    Ejemplo:

    1. Asigne el valor “incident” en la propiedad reference.
    2. En la definición del case tome la propiedad Responsable (responsible).
    3. “type”: Asigne el tipo de asociación como FieldValue.
    4. “key”: Asigne el nombre de la propiedad en DevOps como assigned_to (Propiedades en DevOps).
    5. “defaultValue”: Asigne la propiedad defaultValue.
    {
      "case": [
        {
          "reference": "incident",
          "definition": {
            "responsible": {
              "key": "assigned_to",
              "type": "FieldValue",
              "defaultValue": {
                 "id": 222,
                 "value": "id_usuario_devops"
              }
            }
          }
        }
      ]
    }
    


    Propiedad de búsqueda

    La propiedad searchBy es OPCIONAL, solo es valida para el type “FieldValue” y para los campos responsible, applicant y client.

    Esta etiqueta permite definir la propiedad por la cual se realizará la búsqueda de usuarios en las plataformas ASMS y DevOps; la propiedad admitida es “Email” y por defecto buscará por la propiedad “name” si no se agrega la etiqueta “searchBy”.

    Caso de uso

    Para el uso adecuado de la propiedad de búsqueda “Email”, los usuarios de las dos plataformas deben tener el mismo correo por usuario. A continuación se describe un ejemplo de la propiedad applicant con la opción de búsqueda por “Email”.

    {
      "applicant": {
          "type": "FieldValue",
          "key": "Custom.applicant",
          "searchBy": [ "Email" ]
          }
    }
    


    Tipos de relación o asociación de campos
    Los siguientes tipos de asociación determinan como se obtendrán los valores de las propiedades del ticket.

    Nombre Descripción Ejemplo
    Value Permite asignar un valor al campo seleccionado a través del archivo de configuración. Se requiere que el valor se encuentre dentro de las propiedades de relación de valores ver ejemplo
    Mapper Busca asociar y/o relacionar los valores del caso de Aranda con los valores del WorkItem de DevOps el campo indicado en la propiedad key en DevOps, la relación de valores se hace 1 a 1, no se admite que la asignación se repita ver ejemplo
    FieldValue Los valores de las propiedades se envían directamente entre plataformas sin ningún tipo de asociación/relación ver ejemplo


    Ejemplo tipo Value

    1. Asigne el valor “incident” en la propiedad reference.
    2. En la definición del case tome la propiedad Solicitante (applicant) y asigne el tipo de asociación como Value.
      {
       "case": [
           {
             "reference": "incident",
             "definition": {
               "applicant": {
                 "type": "Value"
               }
             }
           }
        ]
      }
      
    3. La relación implica que debe asignarse un valor de forma común para todos los casos, esto se logra mediante la propiedad “applicant”, como se muestra a continuación:
    {
        "case": [
            {
              "reference": "incident",
              "definition": {          
                "applicant": {
                  "type": "Value"
                }
              }
            }
      ],
      "applicant": [
            {
                "reference": "",
                "id": 10
            }
      ]
    }
    
    1. Asigne un valor a la propiedad “applicant.reference”:
      {
       "case": [
           {
             "reference": "incident",
             "definition": {          
               "applicant": {
                 "type": "Value"
               }
             }
           }
        ],
        "applicant": [
           {
               "reference": "incident",
               "id": 10
           }
        ]
      }
      


    Nota: Los casos asociados al “reference” “incident”, en ASMS se les asignará el solicitante con Id 10.***


    Ejemplo tipo Mapper

    1. Asigne el valor “incident” en la propiedad reference.
    2. En la definición del case tome la propiedad Solicitante (applicant).
    3. “type”: Asigne el tipo de asociación como Mapper.
    4. “key”: Asigne el nombre de la propiedad en DevOps como applicant_id_devops (Propiedades en DevOps).
    {
        "case": [
            {
              "reference": "incident",
              "definition": {
                
                "applicant": {
                  "type": "Mapper",
                  "key": "applicant_id_devops"
                }
              }
            }
      ]
    }
    
    1. La relación implica que debe asociarse los solicitantes de la mesa de Aranda (ASMS) con los solicitantes de DevOps, se recomienda escribir el id del solicitante a relacionar , como se muestra a continuación:
    {
        "case": [
            {
              "reference": "incident",
              "definition": {
                
                "applicant": {
                  "type": "Mapper"
                }
              }
            }
      ],
      "applicant": [
            {
                "reference": "incident",
                "mapping": [
                    {
                        "id":5,
                        "value": "id_solicitante_devops"
                    }
                ]
            }
      ]
    }
    


    Nota: Se relaciona el solicitante con Id “5” de la mesa de Aranda (ASMS) con el solicitante “id_solicitante_devops” en DevOps***


    Ejemplo tipo FieldValue

    1. Asigne el valor “incident” en la propiedad table.
    2. En la definición del case tome la propiedad Solicitante (applicant).
    3. “type”: Asigne el tipo de asociación como FieldValue.
    4. “key”: Asigne el nombre de la propiedad en DevOps como applicant_id_devops (Propiedades en DevOps).
    {
        "case": [
            {
              "reference": "incident",
              "definition": {
                "applicant": {
                  "type": "FieldValue",
                  "key": "applicant_id_devops"
                }
              }
            }
      ]
    }
    


    ↩ Volver a la configuración