Definition Schema v2.2

Información general

Schema v2.2 introduce soporte para anotaciones de usuario, con lo que se sobrescriben tipos de servicio y lenguajes detectados automáticamente y se asocian pipelines de CI con servicios.

Características principales

  • Anotaciones de usuario
  • Sobreescritura del tipo y los lenguajes detectados automáticamente en el servicio mediante type y languages.
  • Asociación del pipeline de CI a un servicio mediante el uso de ci-pipeline-fingerprints.
  • Lógica de validación menos restrictiva para contact.type y link.type.

Estructura del esquema

El esquema completo está disponible en GitHub.

Ejemplo de YAML

schema-version: v2.2
dd-service: shopping-cart
team: e-commerce
application: shopping-app
tier: "1"
type: web
languages:
  - go
  - python
contacts:
  - type: slack
    contact: https://yourorg.slack.com/archives/e-commerce
  - type: email
    contact: ecommerce@example.com
  - type: microsoft-teams
    contact: https://teams.microsoft.com/example
links:
  - name: Runbook
    type: runbook
    url: http://runbook/shopping-cart
  - name: Source
    type: repo
    provider: github
    url: https://github.com/shopping-cart
  - name: Deployment
    type: repo
    provider: github
    url: https://github.com/shopping-cart
  - name: Config
    type: repo
    provider: github
    url: https://github.com/consul-config/shopping-cart
  - name: E-Commerce Team
    type: doc
    provider: wiki
    url: https://wiki/ecommerce
  - name: Shopping Cart Architecture
    type: doc
    provider: wiki
    url: https://wiki/ecommerce/shopping-cart
  - name: Shopping Cart RFC
    type: doc
    provider: google doc
    url: https://doc.google.com/shopping-cart
tags:
  - business-unit:retail
  - cost-center:engineering
integrations:
  pagerduty:
    service-url: https://www.pagerduty.com/service-directory/PSHOPPINGCART
  opsgenie:
    service-url: "https://www.opsgenie.com/service/uuid"
    region: "US"
ci-pipeline-fingerprints:
  - id1
  - id2
extensions:
  additionalProperties:
    customField1: customValue1
    customField2: customValue2

Referencias adicionales