Este producto no es compatible con el sitio Datadog seleccionado. ().

Descripción general

Utilice esta guía cuando un trabajo de CI inicie el proceso de prueba en un contenedor separado con un comando como docker run o docker-compose. Reenvíe las variables de entorno de su proveedor de CI al contenedor de prueba para que el SDK de Datadog pueda detectar la información de compilación.

El ejecutor basado en Docker integrado de un proveedor de CI es el entorno de ejecución principal del trabajo. Esta guía no se aplica a menos que un comando en ese trabajo inicie las pruebas en otro contenedor. Tampoco se aplica cuando los contenedores proporcionan solo servicios de soporte, como una base de datos.

Reenvíe todas las variables requeridas por las instrucciones de instrumentación de prueba por lenguaje. Esto incluye:

  • Configuración del SDK, como DD_SERVICE, DD_ENV y una DD_TRACE_AGENT_URL válida a la que el contenedor pueda acceder
  • Variables de inyección en tiempo de ejecución, como RUBYOPT, NODE_OPTIONS u opciones de herramientas de Java

Las variables establecidas en el trabajo de CI o exportadas por un paso de instrumentación automática no están disponibles automáticamente dentro de un contenedor iniciado por ese trabajo.

Elija un método de instrumentación

La instrumentación automática se ejecuta en el ejecutor de CI y no pasa automáticamente a un contenedor de prueba iniciado por separado.

  • Imagen creada en el trabajo de CI actual: Ejecute la instrumentación automática antes de la creación de la imagen. Utilice este método solo si la compilación copia los artefactos del rastreador o los cambios de dependencia producidos por la integración y usted reenvía sus variables de tiempo de ejecución. De lo contrario, utilice la instrumentación manual.
  • Imagen precompilada: Si el trabajo solo extrae o hace referencia a una etiqueta o resumen de imagen, utilice la instrumentación manual. Un Dockerfile en el repositorio no cuenta a menos que el trabajo lo utilice para crear la imagen de prueba.

Administrar variables de entorno

Esta tabla proporciona una lista no exhaustiva de las variables de entorno disponibles para configurar el SDK:

Variable de entornoDescripción
APPVEYORIndica si la compilación se está ejecutando en el entorno de AppVeyor. Establecido en True (o true en la imagen de Ubuntu).
APPVEYOR_BUILD_IDUn identificador único para la compilación de AppVeyor.
APPVEYOR_BUILD_NUMBEREl número de compilación asignado por AppVeyor, el cual se incrementa con cada nueva compilación.
APPVEYOR_BUILD_FOLDERLa ruta al directorio donde se clona el repositorio.
APPVEYOR_REPO_PROVIDEREspecifica el proveedor de control de fuente para el repositorio, como github, bitbucket o kiln.
APPVEYOR_REPO_NAMEEl nombre del repositorio en el formato owner-name/repo-name.
APPVEYOR_REPO_BRANCHLa rama del repositorio que se está compilando. Para las solicitudes de extracción (pull requests), es la rama base en la que se fusiona la PR.
APPVEYOR_REPO_COMMITEl ID de confirmación (SHA) de la compilación actual.
APPVEYOR_REPO_TAG_NAMEEl nombre de la etiqueta para las compilaciones iniciadas por una etiqueta. Esta variable no está definida si la compilación no es activada por una etiqueta.
APPVEYOR_PULL_REQUEST_HEAD_REPO_BRANCHLa rama del repositorio desde la cual se originó la solicitud de extracción.
APPVEYOR_REPO_COMMIT_MESSAGEEl mensaje de confirmación asociado con la compilación actual.
APPVEYOR_REPO_COMMIT_MESSAGE_EXTENDEDEl mensaje de confirmación extendido, incluyendo cualquier texto después del primer salto de línea.
APPVEYOR_REPO_COMMIT_AUTHOREl nombre del autor de la confirmación.
APPVEYOR_REPO_COMMIT_AUTHOR_EMAILLa dirección de correo electrónico del autor de la confirmación.

Para obtener una lista completa de las variables de entorno establecidas por AppVeyor para cada compilación, consulte la documentación oficial de AppVeyor.

Variable de entornoDescripción
TF_BUILDIndica que la compilación se está ejecutando en Azure Pipelines.
BUILD_DEFINITIONNAMEEl nombre del pipeline de compilación.
BUILD_BUILDIDEl ID del registro para la compilación completada.
BUILD_SOURCESDIRECTORYLa ruta local en el agente donde se descargan los archivos de su código fuente.
BUILD_REPOSITORY_URILa URL del repositorio desencadenante.
BUILD_SOURCEBRANCHLa rama del repositorio desencadenante para la cual se ha puesto en cola la compilación.
BUILD_SOURCEVERSIONEl último cambio de control de versiones del repositorio desencadenante que se incluye en esta compilación.
BUILD_SOURCEVERSIONMESSAGEEl comentario de la confirmación o conjunto de cambios para el repositorio desencadenante.
BUILD_REQUESTEDFORIDEl ID del usuario que desencadenó la compilación.
BUILD_REQUESTEDFOREMAILEl correo electrónico del usuario que desencadenó la compilación.
SYSTEM_TEAMFOUNDATIONSERVERURIEl URI de la cuenta de Team Foundation Server o Azure DevOps Services.
SYSTEM_TEAMPROJECTIDEl ID del proyecto de equipo para la compilación.
SYSTEM_JOBIDEl ID del trabajo que se está ejecutando.
SYSTEM_TASKINSTANCEIDEl ID de la instancia de tarea dentro del trabajo.
SYSTEM_PULLREQUEST_SOURCEREPOSITORYURILa URL del repositorio fuente para la solicitud de extracción.
SYSTEM_PULLREQUEST_SOURCEBRANCHLa rama fuente de la solicitud de extracción.
SYSTEM_PULLREQUEST_SOURCECOMMITIDEl ID de confirmación de la rama fuente en la solicitud de extracción.
SYSTEM_STAGEDISPLAYNAMEEl nombre para mostrar de la etapa en el pipeline.
SYSTEM_JOBDISPLAYNAMEEl nombre para mostrar del trabajo en el pipeline.

Para obtener una lista de las variables de entorno establecidas por Azure DevOps Pipelines para cada compilación, consulte la documentación oficial de Azure.

Variable de entornoDescripción
BITBUCKET_PIPELINE_UUIDEl UUID del pipeline.
BITBUCKET_BUILD_NUMBEREl identificador único para una compilación. Se incrementa con cada compilación y puede utilizarse para crear nombres de artefactos únicos.
BITBUCKET_CLONE_DIRLa ruta absoluta del directorio en el que se clona el repositorio dentro del contenedor Docker.
BITBUCKET_REPO_FULL_NAMEEl nombre completo del repositorio (todo lo que aparece después de http://bitbucket.org/).
BITBUCKET_GIT_SSH_ORIGINSu origen SSH, por ejemplo: git@bitbucket.org:/<workspace>/<repo>.git.
BITBUCKET_COMMITEl hash de confirmación de una confirmación que inició la compilación.
BITBUCKET_BRANCHLa rama fuente. Este valor solo está disponible en ramas. No disponible para compilaciones de etiquetas o Pipelines personalizadas.
BITBUCKET_TAGLa etiqueta de una confirmación que inició la compilación. Este valor solo está disponible en etiquetas. No disponible para compilaciones de ramas.

Para obtener una lista de las variables de entorno configuradas por Bitbucket para cada compilación, consulte la documentación oficial de Bitbucket.

Variable de entornoDescripción
BITRISE_BUILD_SLUGEl slug que identifica de forma única una compilación en bitrise.io. Es parte de la URL de la compilación.
BITRISE_TRIGGERED_WORKFLOW_IDEl ID del flujo de trabajo que se activó, expuesto independientemente de si el flujo de trabajo se activó manual o automáticamente.
BITRISE_BUILD_NUMBERNúmero de compilación de la compilación en bitrise.io.
BITRISE_BUILD_URLLa URL de la compilación en bitrise.io.
BITRISE_SOURCE_DIRRuta al directorio de trabajo base. De forma predeterminada, es el directorio donde se ejecuta Bitrise, a menos que proporcione un valor diferente.
GIT_REPOSITORY_URLLa URL del repositorio de Git que aloja su aplicación.
BITRISE_GIT_COMMITEl hash de confirmación (commit) de Git que activó la compilación, cuando corresponda.
GIT_CLONE_COMMIT_HASHEl hash de la confirmación (commit) que utiliza la compilación (la confirmación clonada).
BITRISEIO_GIT_BRANCH_DESTLa rama de destino o de llegada de la solicitud de extracción (pull request) que activó la compilación, utilizada solo con compilaciones activadas por solicitudes de extracción.
BITRISE_GIT_BRANCHLa rama de Git que compila Bitrise, por ejemplo, main.
BITRISE_GIT_TAGSi una compilación es activada por una etiqueta (tag) de Git, esta variable de entorno almacena la etiqueta utilizada.
BITRISE_GIT_MESSAGEEl mensaje de confirmación (commit), el título de la solicitud de extracción o el mensaje que especificó si activó la compilación manualmente.
BITRISE_APP_TITLEEl título de su aplicación en bitrise.io.
GIT_CLONE_COMMIT_MESSAGE_SUBJECTEl asunto del mensaje de confirmación (commit) de la confirmación clonada.
GIT_CLONE_COMMIT_MESSAGE_BODYEl cuerpo (contenido) del mensaje de confirmación del commit clonado.
GIT_CLONE_COMMIT_AUTHOR_NAMEEl nombre del autor del commit clonado.
GIT_CLONE_COMMIT_AUTHOR_EMAILEl correo electrónico del autor del commit clonado.
GIT_CLONE_COMMIT_COMMITER_NAMEEl nombre del autor de la confirmación del commit clonado.
GIT_CLONE_COMMIT_COMMITER_EMAILEl correo electrónico del autor de la confirmación del commit clonado.

Para obtener una lista completa de las variables de entorno establecidas por Bitrise para cada compilación, consulte la documentación oficial de Bitrise.

Variable de entornoDescripción
BUILDKITESiempre verdadero.
BUILDKITE_PIPELINE_SLUGEl slug de la canalización en Buildkite tal como se utiliza en las URL.
BUILDKITE_JOB_IDEl UUID interno que utiliza Buildkite para este trabajo.
BUILDKITE_BUILD_IDEl UUID de la compilación.
BUILDKITE_BUILD_NUMBEREl número de compilación. Este número aumenta con cada compilación y es único dentro de cada canalización.
BUILDKITE_BUILD_URLLa URL de esta compilación en Buildkite.
BUILDKITE_BUILD_CHECKOUT_PATHLa ruta donde el agente ha extraído su código para esta compilación.
BUILDKITE_REPOEl repositorio de su canalización.
BUILDKITE_COMMITEl objeto de commit de Git de la compilación.
BUILDKITE_BRANCHLa rama que se está compilando.
BUILDKITE_TAGEl nombre de la etiqueta que se está compilando, si esta compilación se activó desde una etiqueta.
BUILDKITE_MESSAGEEl mensaje asociado con la compilación, generalmente el mensaje de confirmación (commit).
BUILDKITE_BUILD_AUTHOREl nombre del usuario que creó la confirmación (commit) que se está compilando.
BUILDKITE_BUILD_AUTHOR_EMAILEl correo electrónico de notificación del usuario que creó la confirmación (commit) que se está compilando.
BUILDKITE_BUILD_CREATOREl nombre del usuario que creó la compilación.
BUILDKITE_BUILD_CREATOR_EMAILEl correo electrónico de notificación del usuario que creó la compilación.
BUILDKITE_AGENT_IDEl UUID del agente.
BUILDKITE_AGENT_META_DATA_*El valor de cada etiqueta de agente. El nombre de la etiqueta se añade al final del nombre de la variable.

Para obtener una lista completa de las variables de entorno configuradas por Buildkite para cada compilación, consulte la documentación oficial de Buildkite.

Variable de entornoDescripción
CIRCLECIIndica si la compilación se está ejecutando en CircleCI. Siempre configurado en true.
CIRCLE_PROJECT_REPONAMEEl nombre del repositorio que se está compilando.
CIRCLE_BUILD_NUMEl número del trabajo actual. Los números de trabajo son únicos para cada trabajo.
CIRCLE_BUILD_URLLa URL del trabajo actual en CircleCI.
CIRCLE_WORKFLOW_IDUn identificador único para la instancia de flujo de trabajo del trabajo actual.
CIRCLE_WORKING_DIRECTORYLa ruta al directorio de trabajo donde se extrae el código.
CIRCLE_REPOSITORY_URLLa URL del repositorio que se está compilando.
CIRCLE_SHA1El hash SHA1 de la última confirmación de la compilación actual.
CIRCLE_BRANCHLa rama del repositorio que se está compilando.
CIRCLE_TAGEl nombre de la etiqueta si la compilación actual se activa mediante una etiqueta; de lo contrario, está vacío.
CIRCLE_JOBEl nombre del trabajo actual.

Para obtener una lista de las variables de entorno establecidas por CircleCI para cada compilación, consulte la documentación oficial de CircleCI.

Variable de entornoDescripción
CF_BUILD_IDEl ID único de la compilación.
CF_PIPELINE_NAMELa ruta completa de la canalización, incluido el proyecto al que está asignada, si corresponde.
CF_BUILD_URLLa URL de la compilación en Codefresh.
CF_STEP_NAMEEl nombre del paso, por ejemplo, “MyUnitTests”.
CF_BRANCHEl nombre de la rama o etiqueta del repositorio Git asociado con la canalización principal en el momento de la ejecución.
CF_REVISIONLa revisión del repositorio Git de la canalización principal, en el momento de la ejecución.

Para obtener una lista de las variables de entorno establecidas por Codefresh para cada compilación, consulte la documentación oficial de Codefresh.

Variable de entornoDescripción
GITHUB_ACTIONEl nombre de la acción que se está ejecutando actualmente, o el ID de un paso. Por ejemplo: repo-owner_name-of-action-repo.
GITHUB_SERVER_URLLa URL del servidor de GitHub. Por ejemplo: https://github.com.
GITHUB_RUN_IDUn número único para cada ejecución de flujo de trabajo dentro de un repositorio. Por ejemplo: 1658821493.
GITHUB_RUN_NUMBERUn número único para cada ejecución de un flujo de trabajo en particular en un repositorio. Por ejemplo: 3.
GITHUB_RUN_ATTEMPTUn número único para cada intento de una ejecución de flujo de trabajo en particular. Por ejemplo: 3.
GITHUB_WORKFLOWEl nombre del flujo de trabajo. Por ejemplo: My test workflow.
GITHUB_WORKSPACEEl directorio de trabajo predeterminado en el ejecutor para los pasos. Por ejemplo: /home/runner/work/my-repo-name/my-repo-name.
GITHUB_REPOSITORYEl propietario y el nombre del repositorio. Por ejemplo: octocat/Hello-World.
GITHUB_SHAEl SHA de confirmación que activó el flujo de trabajo. Por ejemplo: ffac537e6cbbf934b08745a378932722df287a53.
GITHUB_HEAD_REFLa referencia principal o rama fuente de la solicitud de extracción (solo se establece para eventos pull_request o pull_request_target). Por ejemplo: feature-branch-1.
GITHUB_REFLa referencia completa de la rama o etiqueta que activó el flujo de trabajo. Por ejemplo: refs/heads/feature-branch-1.
GITHUB_JOBEl ID del trabajo actual. Por ejemplo: greeting_job.
JOB_CHECK_RUN_IDEl ID de ejecución de verificación del trabajo actual. La acción de GitHub de Datadog Test Optimization exporta esta variable para los pasos subsiguientes. Para instrumentación manual, establezca JOB_CHECK_RUN_ID: ${{ job.check_run_id }}.

Para obtener una lista completa de las variables de entorno establecidas por GitHub Actions para cada compilación, consulte la documentación oficial de GitHub.

Variable de entornoDescripción
GITLAB_CIDisponible para todos los trabajos ejecutados en CI/CD. true cuando esté disponible.
CI_PIPELINE_IDEl ID a nivel de instancia de la canalización actual. Este ID es único en todos los proyectos de la instancia de GitLab.
CI_PIPELINE_URLLa URL para los detalles de la canalización.
CI_PIPELINE_IIDEl IID (ID interno) a nivel de proyecto de la canalización actual. Único solo dentro del proyecto actual.
CI_PROJECT_PATHEl espacio de nombres del proyecto con el nombre del proyecto incluido.
CI_PROJECT_URLLa dirección HTTP(S) del proyecto.
CI_PROJECT_DIRLa ruta completa donde se clona el repositorio y desde donde se ejecuta el trabajo.
CI_JOB_STAGEEl nombre de la etapa del trabajo.
CI_JOB_NAMEEl nombre del trabajo.
CI_JOB_URLLa URL de los detalles del trabajo.
CI_JOB_IDEl ID interno del trabajo, único en todos los trabajos de la instancia de GitLab.
CI_RUNNER_IDEl ID único del ejecutor que se está utilizando.
CI_RUNNER_TAGSUna lista separada por comas de las etiquetas del ejecutor.
CI_REPOSITORY_URLLa ruta completa para clonar (HTTP) el repositorio con un token de trabajo de CI/CD.
CI_COMMIT_SHALa revisión de confirmación para la que se compila el proyecto.
CI_COMMIT_REF_NAMEEl nombre de la rama o etiqueta para la que se compila el proyecto.
CI_COMMIT_BRANCHEl nombre de la rama de confirmación. Disponible en canalizaciones de rama.
CI_COMMIT_TAGEl nombre de la etiqueta de confirmación. Disponible solo en canalizaciones para etiquetas.
CI_COMMIT_AUTHOREl autor de la confirmación en formato Nombre .
CI_COMMIT_MESSAGEEl mensaje completo de la confirmación.
CI_COMMIT_TIMESTAMPLa marca de tiempo de la confirmación en formato ISO 8601. Por ejemplo, 2022-01-31T16:47:55Z. UTC de forma predeterminada.

Para obtener una lista de las variables de entorno establecidas por GitLab CI para cada compilación, consulte la documentación oficial de GitLab.

Variable de entornoDescripción
JENKINS_URLLa URL del maestro de Jenkins que está ejecutando la compilación.
BUILD_TAGUna cadena con el formato jenkins-${JOB_NAME}-${BUILD_NUMBER} para facilitar la identificación.
BUILD_NUMBEREl número de compilación actual, como "153".
BUILD_URLLa URL donde se pueden encontrar los resultados de esta compilación (como http://buildserver/jenkins/job/MyJobName/666/).
WORKSPACELa ruta absoluta del espacio de trabajo.
JOB_NAMEEl nombre del proyecto para esta compilación.
JOB_URLLa URL para los detalles del trabajo.
GIT_URLLa URL de Git utilizada para el repositorio (como git@github.com:user/repo.git o https://github.com/user/repo.git).
GIT_URL_1La URL del primer repositorio Git si hay varios repositorios configurados.
GIT_COMMITEl hash de Git de la confirmación (commit) extraída para la compilación.
GIT_BRANCHLa rama de Git que se extrajo para la compilación.
NODE_NAMEEl nombre del nodo en el que se está ejecutando la compilación. Es igual a ‘master’ para el nodo maestro.
NODE_LABELSUna lista separada por comas de las etiquetas asignadas al nodo.
DD_CUSTOM_TRACE_IDVariable personalizada establecida por el complemento Datadog de Jenkins para los ID de traza.
DD_CUSTOM_PARENT_IDVariable personalizada establecida por el complemento Datadog de Jenkins para los ID principales.

Para obtener una lista de las variables de entorno establecidas por Jenkins para cada compilación, consulte la documentación oficial de Jenkins.

Variable de entornoDescripción
TEAMCITY_VERSIONLa versión del servidor de TeamCity.
TEAMCITY_BUILDCONF_NAMEEl nombre de la configuración de compilación a la que pertenece la compilación actual.
BUILD_URLEl enlace a la compilación actual.
DATADOG_BUILD_IDVariable personalizada establecida por la Integración de Datadog con TeamCity.

Para obtener una lista de las variables de entorno establecidas por TeamCity para cada compilación, consulte la documentación oficial de TeamCity.

Variable de entornoDescripción
TRAVISSiempre establecido en true para indicar que la compilación se está ejecutando en Travis CI.
TRAVIS_BUILD_IDEl ID de la compilación actual utilizado internamente por Travis CI.
TRAVIS_BUILD_NUMBEREl número de la compilación actual. Por ejemplo: 4.
TRAVIS_BUILD_WEB_URLURL del registro de la compilación.
TRAVIS_BUILD_DIRLa ruta absoluta al directorio donde se ha copiado el repositorio que se está compilando en el trabajador.
TRAVIS_JOB_WEB_URLURL del registro del trabajo.
TRAVIS_REPO_SLUGEl slug (en formato: owner_name/repo_name) del repositorio que se está compilando actualmente.
TRAVIS_COMMITLa confirmación (commit) que la compilación actual está probando.
TRAVIS_BRANCHPara compilaciones de tipo push, el nombre de la rama. Para compilaciones de tipo PR, el nombre de la rama a la que apunta la PR.
TRAVIS_TAGSi la compilación actual es para una etiqueta de Git, esta variable se establece en el nombre de la etiqueta; de lo contrario, está vacía.
TRAVIS_PULL_REQUEST_SLUGSi el trabajo actual es una solicitud de extracción (pull request), el slug del repositorio del cual se originó la PR.
TRAVIS_PULL_REQUEST_BRANCHSi el trabajo actual es una solicitud de extracción (pull request), el nombre de la rama de la cual se originó la PR.
TRAVIS_COMMIT_MESSAGEEl asunto y el cuerpo de la confirmación (commit), sin ajustar.

Para obtener una lista completa de las variables de entorno establecidas por Travis CI para cada compilación, consulte la documentación oficial de Travis CI.

Variable de entornoDescripción
BUDDYRepresenta si el entorno actual es un entorno de Buddy. Por ejemplo: true.
BUDDY_SCM_URLLa URL del repositorio sincronizado con el proyecto. Por ejemplo: https://github.com/githubaccount/repository.
BUDDY_EXECUTION_REVISIONEl hash SHA1 de la confirmación (commit) de la ejecución actual de la canalización. Por ejemplo: 46c360492d6372e5335300776806af412755871.
BUDDY_EXECUTION_BRANCHEl nombre de la rama de Git de la ejecución actual de la canalización. Por ejemplo: main.
BUDDY_EXECUTION_TAGEl nombre de la etiqueta de Git de la ejecución actual de la canalización (si está etiquetada). Por ejemplo: v1.0.1.
BUDDY_PIPELINE_IDEl ID de la canalización de ejecución. Por ejemplo: 1.
BUDDY_EXECUTION_IDEl ID de la ejecución actual de la canalización. Por ejemplo: 1.
BUDDY_PIPELINE_NAMEEl nombre de la canalización de ejecución. Por ejemplo: Deploy to Production.
BUDDY_EXECUTION_URLLa URL de la ejecución actual de la canalización. Por ejemplo: https://app.buddy.works/my-workspace/my-project/pipelines/pipeline/1.
BUDDY_EXECUTION_REVISION_MESSAGEEl mensaje de confirmación (commit) de la revisión que se está ejecutando actualmente. Por ejemplo: we need to write unit tests!.
BUDDY_EXECUTION_REVISION_COMMITTER_NAMEEl nombre de la persona que realizó la confirmación de la revisión que se está ejecutando actualmente. Por ejemplo: Mike Benson.
BUDDY_EXECUTION_REVISION_COMMITTER_EMAILLa dirección de correo electrónico de la persona que realizó la confirmación de la revisión que se está ejecutando actualmente. Por ejemplo: mike.benson@buddy.works.

Para obtener una lista completa de las variables de entorno establecidas por Buddy CI para cada compilación, consulte la documentación oficial de Buddy CI.

Lecturas adicionales

Documentación, enlaces y artículos útiles adicionales: