تخطَّ إلى المحتوى

شجرة البيئات

تنظم البيئات في تسلسل هرمي أب-ابن، مكونة بنية شجرية متجذرة في بيئة master. هذه الشجرة مفيدة لتصور النسب وفهم البيئات التي تم التفرع منها ومن أين، وتخطيط استراتيجيات merge.

بنية شجرة البيئات ودورة حياة الحالة


تحتوي كل عقدة بيئة على المعلومات التالية:

  • الاسم: معرف البيئة (مثل master أو staging أو feature-auth).
  • الحالة: حالة دورة الحياة الحالية (active أو branching أو merging أو error أو archived).
  • الأصل: البيئة التي تم إنشاء هذا الفرع منها.
  • وضع الفرع: ما إذا تم إنشاء الفرع كـ full (schema + بيانات) أو system (schema فقط).
  • وقت التفرع: الطابع الزمني عند إنشاء هذه البيئة.
  • الأبناء: قائمة البيئات التي تم التفرع منها من هذه البيئة.

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

لاسترداد قائمة مسطحة لجميع البيئات (بدون تداخل الشجرة):

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

الحالةالوصف
activeالبيئة تعمل بالكامل ومتاحة للاستخدام
branchingيتم إنشاء البيئة (استنساخ قاعدة البيانات قيد التقدم)
mergingيتم تطبيق عملية merge على هذه البيئة
errorفشلت عملية؛ قد تكون البيئة في حالة غير متسقة
archivedتم حذف البيئة بشكل منطقي ولكن تم الحفاظ على بياناتها