مواد پر جائیں

پائپ لائن رنز کی نگرانی کریں

یہ صفحہ اُس ہر چیز کے لیے ہے جو رن شروع ہونے کے بعد آتی ہے: اُسے ڈھونڈنا، یہ پڑھنا کہ ہر قدم نے کیا کیا اور کسی ناکام رن کو دوبارہ چلانا۔ کوئی رن شروع کرنے کے لیے پائپ لائن دستی طور پر چلائیں دیکھیں۔

  1. ورک اسپیس سائیڈبار میں پائپ لائنز پر کلک کریں۔ یہ اسکرین ورک اسپیس کی رن قطار ہے — ہر رن، نئے سے پرانے کی ترتیب میں۔
  2. فلٹر کرنے کے لیے بائیں ریل استعمال کریں۔ بالکل تین فلٹر ہیں، ہر ایک کے ساتھ براہِ راست گنتی: سب، چل رہا ہے، ناکام۔
  3. ٹیبل میں ↑/↓ (یا j/k) سے چلیں اور فوکس شدہ رن کھولنے کے لیے Enter دبائیں۔ کسی قطار پر کلک کرنے سے بھی یہی ہوتا ہے۔

ہر قطار ایک گلیف دکھاتی ہے جس سے پتہ چلتا ہے کہ رن کیسے شروع ہوا (دستی کے لیے پلے؛ کوڈ-گراف واچ کے لیے فائل گلیف؛ ورنہ خودکار ٹریگر)۔ ٹول ٹپ ٹریگر کا نام بتاتی ہے — دستی، PR شائع ہوا، فائل تبدیلی وغیرہ — اور کسی واچ رن کے لیے یہ بھی کہ کون سی فائلیں بدلیں۔ پھر پائپ لائن کا نام، ایک اسٹیٹس بیج، فعال مدت (یا queued رن کے لیے قطار میں پوزیشن) اور یہ کہ یہ کوشش کتنی دیر پہلے شروع ہوئی۔ فعال مدت میں بیکار سٹاپ-اور-ری اسٹارٹ وقفے شامل نہیں، اس لیے یہ گھڑی کے اصل وقت کے برابر نہیں ہوتی۔

مکمل، معطل یا منسوخ رنز کے لیے کوئی فلٹر نہیں، نہ فی ٹیمپلیٹ کوئی فلٹر، نہ کوئی ٹائم ونڈو اور نہ فی ٹیمپلیٹ رن ہسٹری ویو۔ ایک ہی ٹیمپلیٹ کے رنز کا موازنہ کرنے کا مطلب قطار میں اُس کا نام ڈھونڈنا ہے۔

کسی رن کے صفحے کے تین اوپر تلے حصے ہوتے ہیں۔

میٹا اسٹرپ میں آغاز کا وقت، فعال مدت، قدموں کی پیش رفت (“3 از 7 مراحل”)، ایک ناکامی خلاصہ جس میں وہ قدم اور وجہ بتائی جاتی ہے جو ٹوٹا، اور دوبارہ کوشش اور حذف کریں ایکشن شامل ہوتے ہیں۔

ٹائمنگ واٹر فال ہر قدم کے لیے ایک بار دیتا ہے، اُس کی مدت اور — ایجنٹ قدموں کے لیے — اُس کی لاگت سینٹ میں۔ جس قدم کو دوبارہ آزمایا گیا ہو اُس کی مدت کے بعد ×N لاحقہ آتا ہے؛ یہ لاحقہ ہی واحد جگہ ہے جہاں کوششوں کی گنتی سامنے آتی ہے۔

گراف کینوس ٹیمپلیٹ کو ہر نوڈ کی براہِ راست حالت کے ساتھ دکھاتا ہے۔ کسی نوڈ کو منتخب کرنے سے اُس کا قدم پینل کھل جاتا ہے۔

اسٹیٹس مطلب
زیرِ التوا بنایا گیا، ابھی شروع نہیں ہوا
قطار میں داخل ہو گیا مگر روکا گیا: اِس ٹیمپلیٹ کی زیادہ سے زیادہ متوازی حد بھری ہوئی ہے؛ ابھی تک کوئی قدم درج نہیں
چل رہا ہے زیرِ اجرا
معطل کسی بیرونی چیز کا انتظار — معمول، پھنسا ہوا نہیں
مکمل کامیابی سے ختم ہوا
ناکام کسی خرابی پر ختم ہوا
منسوخ کسی صارف یا سسٹم کی جانب سے روکا گیا

قدموں کے اسٹیٹس وہی ہوتے ہیں مگر قطار میں کے بغیر، اور اُس اضافے کے ساتھ چھوڑا گیا، اُس برانچ کے لیے جو روٹر نے نہ لی (اور اُس کے اب ناقابلِ رسائی زیرِیں نوڈز)۔

معطل ہی وہ حالت ہے جہاں ایجنٹ قدم اپنی زیادہ تر عمر گزارتا ہے: کوئی ڈسپیچ شدہ ایجنٹ یا منظوری گیٹ قدم کو اُس وقت تک روکے رکھتا ہے جب تک اُس کا کام مکمل نہ ہو جائے۔ انجن کے دو حفاظتی انتظامات جاری رکھنے کے بجائے پورا رن ناکام کر دیتے ہیں: 24 گھنٹے سے زیادہ معطل رہنے والا قدم (extras.awaitApproval — یعنی orchestration.awaitApproval باڈی — مستثنیٰ ہے؛ human.gate نہیں) اور وہ غیر idempotent قدم جو سرور کے رکنے کے وقت جاری تھا۔

کینوس پر کوئی نوڈ منتخب کریں۔ قدم پینل ترتیب وار یہ دکھاتا ہے:

  • جب قدم ناکام ہو تو ایک خرابی کال آؤٹ، یا جب وہ چھوڑا گیا ہو تو وجہ کے ساتھ ایک چھوڑا گیا کال آؤٹ۔
  • شروع ہوا، ختم ہوا اور مدت۔
  • برانچ — متوازی برانچوں کے لیے برانچ انڈیکس۔
  • گفتگو دیکھیں — اُس گفتگو پر جاتا ہے جس میں قدم چلا تھا۔ پائپ لائن کی گفتگوئیں سائیڈبار سے چھپی رہتی ہیں، اس لیے اندر جانے کا یہی واحد راستہ ہے۔
  • ان پٹ اور آؤٹ پٹ، سکیڑنے کے قابل JSON کے طور پر۔
  • ایجنٹ سرگرمی — قدم نے جو بھی ایجنٹ رن ڈسپیچ کیا اُس کے لیے ایک ٹائل، اُس کی اسٹیٹس، خلاصہ، مدت اور لاگت کے ساتھ۔

ایجنٹ قدم کے لیے آؤٹ پٹ وہ ساختی پے لوڈ ہے جو ایجنٹ نے submit_output کے ساتھ جمع کرایا، اُس کا نثر نہیں۔ استدلال کا ٹریس ایجنٹ سرگرمی میں اور گفتگو دیکھیں کے پیچھے موجود گفتگو میں رہتا ہے۔

bash قدم کے لیے آؤٹ پٹ وہ تراشیدہ stdout ہے جو اسکرپٹ نے exit 0 پر لکھا۔ غیر صفر exit قدم کو ناکام کر دیتا ہے اور stderr کا آخری حصہ خرابی کے پیغام کے طور پر آتا ہے۔

  1. میٹا اسٹرپ پر ناکامی کا خلاصہ پڑھیں؛ اُس میں ناکام ہونے والے قدم کا نام ہوتا ہے۔ پیغام قدم پینل کے خرابی کال آؤٹ میں ہے۔
  2. قدم کا ان پٹ چیک کریں — غائب یا غلط ہجے والی اسٹیٹ کلید سب سے عام وجہ ہے۔ پرامپٹ-ایجنٹ قدم فوراً ناکام ہو جاتا ہے اور غیر حل شدہ پلیس ہولڈرز کے نام بتاتا ہے؛ bash قدم اُنہیں خالی اسٹرنگز کے طور پر لگا کر بہرحال چل پڑتا ہے، جس کا اثر عام طور پر ایک قدم بعد ظاہر ہوتا ہے۔
  3. ایجنٹ قدم کے لیے گفتگو دیکھیں کھولیں اور پڑھیں کہ ایجنٹ نے اصل میں کیا کیا۔
  4. میٹا اسٹرپ پر دوبارہ کوشش دبائیں۔ مکمل اور چھوڑے گئے قدم اپنے آؤٹ پٹس برقرار رکھتے ہیں؛ باقی سب حذف ہو کر دوبارہ چلائے جاتے ہیں اور رن واپس چل رہا ہے پر چلا جاتا ہے۔ اِس کوشش کے لیے مدت کی گھڑی دوبارہ شروع ہو جاتی ہے۔

پہلے چیک کرنے کے قابل عام وجوہ:

  • ٹائم آؤٹ — قدم نے اپنا ٹائم آؤٹ (ms) تجاوز کر لیا۔ یاد رکھیں کہ یہ فیلڈ ملی سیکنڈز میں ہے۔
  • اسکرپٹ خرابی — bash کمانڈ غیر صفر کے ساتھ ختم ہوئی، یا bash سرور ہوسٹ کے PATH پر نہیں ہے۔
  • اسکیمہ کی توثیق — ایجنٹ کا submit_output پے لوڈ قدم کے آؤٹ پٹ اسکیمہ پر پورا نہیں اترا۔
  • غیر حل شدہ پلیس ہولڈر — کوئی {{key}} جس کا حوالہ پرامپٹ-ایجنٹ قدم نے دیا تھا، اوپر کبھی لکھا ہی نہیں گیا۔ خرابی ہر غیر حل شدہ کلید کا نام لیتی ہے۔
  • غیر رجسٹرڈ باڈی — وہ قدم جس کی باڈی کلید رجسٹرڈ نہ ہو، ٹیمپلیٹ لوڈ پر وارننگ دیتا ہے اور پھر کبھی چلتا ہی نہیں۔

چلتے ہوئے قدم کو منتخب کریں اور قدم پینل کے ہیڈر میں چلتے ہوئے ختم کریں بٹن دبائیں۔ یہ قدم کے پروسیس کو مار دیتا ہے، قدم کو ناکام نشان زد کرتا ہے اور اسی لیے پورا رن ناکام ہو جاتا ہے — ہر کھلی ہمشیرہ برانچ اُسی کے ساتھ بند کر دی جاتی ہے۔

اِس اسکرین پر رن منسوخ کرنے کا کوئی کنٹرول نہیں۔ pipeline.cancel بطور RPC آپریشن موجود ہے اور انجن اُسے نافذ کرتا ہے، مگر پائپ لائنز UI میں کوئی چیز اُسے کال نہیں کرتی؛ کسی قدم پر چلتے ہوئے ختم کریں، یا رن پر حذف کریں، ہی روکنے کے واحد دستیاب طریقے ہیں۔

لاگت فی قدم بتائی جاتی ہے، واٹر فال کے دائیں کالم میں اور ایجنٹ سرگرمی کے تحت ہر ٹائل پر۔ تفصیل کے صفحے پر رن کا کوئی مجموعہ نہیں اور رنز کی قطار میں لاگت کا کوئی کالم نہیں، اس لیے دو رنز کی لاگت کا موازنہ کرنے کا مطلب اُن کے قدموں کو جمع کرنا ہے۔