منصوبے کے بارے میں
یہ پروجیکٹ ان منظرناموں کے لیے ہے جہاں مسلسل اور بروقت ماحولیاتی ڈیٹا جمع کرنے کی ضرورت ہوتی ہے، اور GitHub Actions پر مبنی ایک خودکار کرالنگ اور آرکائیونگ حل فراہم کرتا ہے۔ README بتاتا ہے کہ اس کا تصور HeQinWill/CNEMC سے لیا گیا ہے، اور شیڈولنگ کے طریقے اور استحکام میں بہتری لائی گئی ہے۔ فی الحال یہ بنیادی طور پر CNEMC ریئل ٹائم ماحولیاتی مانیٹرنگ ڈیٹا اپ ڈیٹس کی حمایت کرتا ہے، اور منصوبہ بند خصوصیات میں 10 منٹ کے وقفے سے Himawari سیٹلائٹ شارٹ ویو ریڈی ایشن (SWR) ڈیٹا شامل ہے۔
پروجیکٹ کرالنگ کے نتائج کو تاریخ کے لحاظ سے CSV کے طور پر آرکائیو کرتا ہے، صارفین raw.githubusercontent لنکس کے ذریعے گھنٹہ وار ڈیٹا تیزی سے لوڈ کر سکتے ہیں، یا GitHub Contents API کے ذریعے کسی خاص دن کی فائلوں کی فہرست حاصل کر سکتے ہیں۔ بنیادی مقاصد میں سے ایک GitHub Actions کے مقامی cron میں ممکنہ تاخیر یا ٹرگر مس ہونے کے مسائل سے بچنا ہے، اس لیے بیرونی ٹائمر ٹرگرز کی سفارش کی جاتی ہے: ایک کلاؤڈ فنکشن کے ذریعے باقاعدگی سے GitHub کے آفیشل Workflow Dispatch انٹرفیس کو کال کیا جاتا ہے تاکہ مخصوص workflow کو ریموٹ طور پر ٹرگر کیا جا سکے۔
کنفیگریشن کے حوالے سے، پروجیکٹ ریپوزٹری میں Actions secret سیٹ کرنا ضروری ہے: نام GTOKEN اور ویلیو پرسنل ایکسیس ٹوکن (Personal Access Token)۔ ٹوکن classic قسم کا ہونا چاہیے اور repo اور workflow کی اجازتیں منتخب ہونی چاہئیں؛ اگر workflow کی اجازت موجود نہیں ہے، تو API کے ذریعے workflow_dispatch کو ٹرگر نہیں کیا جا سکے گا۔ کلاؤڈ فنکشن پلیٹ فارم کے بارے میں README بتاتا ہے کہ Tencent Cloud Function SCF کی تصدیق ہو چکی ہے، اور نظریاتی طور پر کوئی بھی پلیٹ فارم جو HTTP درخواستوں اور ٹائمر ٹرگرز کی حمایت کرتا ہے، اس طرح کے حل کو نافذ کر سکتا ہے۔ تعیناتی کے دوران، repo_owner، repo_name، اور workflow_name جیسے اہم پیرامیٹرز کو براہ راست سٹرنگ کانسٹنٹ کے طور پر لکھنے کی سفارش کی جاتی ہے تاکہ پیرامیٹرز کے گم ہونے، انوائرمنٹ ویری ایبلز کی پارسنگ میں ناکامی یا غیر معمولی صورتحال سے بچا جا سکے۔ نمونہ کوڈ GitHub API کو POST درخواست بھیجنے کے لیے requests کا استعمال کرتا ہے، جس کا پے لوڈ ref=main ہے اور کامیابی کا اسٹیٹس کوڈ 204 ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.