Ir al contenido

Árbol de entornos

Los entornos se organizan en una jerarquía padre-hijo, formando una estructura de árbol enraizada en el entorno master. Este árbol es útil para visualizar el linaje, entender de dónde se ramificaron los entornos y planificar estrategias de merge.

Estructura del árbol de entornos y ciclo de vida de estado


Cada nodo de entorno contiene la siguiente información:

  • Nombre: El identificador del entorno (ej: master, staging, feature-auth).
  • Estado: El estado actual del ciclo de vida (active, branching, merging, error, archived).
  • Padre: El entorno desde el cual se creó esta rama.
  • Modo de rama: Si la rama se creó como full (esquema + datos) o system (solo esquema).
  • Rama creada en: La marca de tiempo cuando se creó este entorno.
  • Hijos: Lista de entornos que se ramificaron desde este.

query EnvironmentTree($projectId: String!) {
environmentTree(projectId: $projectId) {
success
message
tree {
environment {
id
name
status
parentName
branchMode
branchedAt
}
children {
environment {
id
name
status
parentName
branchMode
branchedAt
}
children {
environment {
id
name
status
}
}
}
}
}
}

Para obtener una lista plana de todos los entornos (sin anidamiento de árbol):

query GetProjectEnvironments($projectId: String!) {
projectEnvironments(projectId: $projectId) {
success
message
environments {
id
name
parentId
parentName
branchMode
branchedAt
status
createdAt
updatedAt
}
}
}

EstadoDescripción
activeEl entorno está completamente operativo y disponible para usar
branchingEl entorno se está creando (clonación de base de datos en progreso)
mergingSe está aplicando una operación de merge a este entorno
errorUna operación falló; el entorno puede estar en un estado inconsistente
archivedEl entorno ha sido eliminado de forma lógica pero sus datos se preservan