د CI رنر VPN: ایا ټنل له بیلډ څخه اوږد ژوند کوي؟
شریک CI رنر د کارونو تر منځ لارې او پروسې ساتي. د VPN حالتونه د کار دمخه، په جریان کې او وروسته پلان کړئ، او یوازې هغه اړیکه پاکه کړئ چې کار یې مالک دی.
د ځای پرځای کولو کار نښلول کیږي، خپل آرټیفیکټ کاپي کوي او بریالیتوب راپور ورکوي. هغه ټنل چې خلاص کړی یې دی کېدای شي بیا هم فعال وي کله چې بل کار پیل شي، او هغه لاره چې بدله کړې ټول هوسټ پورې اړه لري. د بیلډ پایله د کمانډ بیانوي، نه هغه حالت چې پرېښی یې دی. VPN ته د ژوند لرونکي سرچینې په توګه وګورئ، نه د یوې مرحلې په پیل کې د یوې کرښې په توګه.
په دې هوسټ کې بل څه ځي
د Jenkins یو نوډ کولای شي په یو وخت کې څو اجرا کوونکي وچلوي، او هغه کار چې د هوسټ لارې، د resolver تنظیمات یا سیسټم پراخه اړیکه بدلوي، هغه د ټولو لپاره بدلوي. ایا بل کار به دا وګوري که نه، دا د لارې او فلټر کولو پالیسي پورې اړه لري، نه د VPN په اړه عمومي قاعده پورې. د زېرمې لاسرسی، د آرټیفیکټ لاسرسی او کنټرول چینل هغه جلا اړتیاوې دي چې رنر ته لا هم اړینې دي. د بشپړ ټنل له غوره کولو دمخه هغه د ځای پرځای کولو منزلونو لیست ته اضافه کړئ.
که کنټرول چینل دې ټنل تیر کړي، ډیزاین باید دا په قصد سره ووایي. د بیرته راګرځولو په جریان کې دا کشفول پلان نه دی. دوه لیستونه ولیکئ: کار باید په شخصي ډول چیرته ورسیږي، او رنر باید هرومرو چیرته ورسیږي.
ایا دا کار په بشپړ ډول شخصي لاسرسي ته اړتیا لري؟
د ټنل د اضافه کولو دمخه وپوښتئ چې ایا د بیلډ مرحلې ته اړتیا لري. یو شخصي ځای پرځای کوونکی استازی کولای شي تصویب شوی آرټیفیکټ راوړي او ځای پرځای کول ترسره کړي، چې عمومي بیلډ مرحله له شخصي شبکې بهر ساتي. دا ویش معمولا له دې ارزانه دی چې هر بیلډ ګام ته د ټنل له لارې تګ ور زده کړئ.
پوله له عادت څخه نه، بلکې له کاري جریان څخه وټاکئ. که ځواب نه وي، دې پاڼې پاتې برخه غیر ضروري ده، او دا تر ټولو غوره شته نتیجه ده.
هغه حالت چې بل کار یې میراث اخلي
تشریح کړئ چې د کار دمخه، د شخصي لاسرسي په وخت کې او د پای ته رسیدو وروسته، د لغوه کولو په ګډون، څه باید ریښتیا وي. پای حالت هغه دی چې ډیر ځله ناڅرګند پریښودل کیږي، او هماغه دی چې بل کار یې میراث اخلي. هغه د چا په یاد کې د پرېښودو پرځای د pipeline ترڅنګ ولیکئ.
| Moment | What proves it | What leaks if it is skipped |
|---|---|---|
| Job start: pre-flight route check | The route table shows no tunnel from an earlier job, and the profile list is empty | A stale route sends deployment traffic into a dead tunnel |
| Job end: disconnect and shred | The profile is down and the temporary key file is gone | The next job inherits an open tunnel and a usable credential |
| Cancelled job: reboot or disposal | The host is replaced or rebooted before the next job starts | A killed process leaves the tunnel up with no owner |
ځانګړی یا یو ځلي استازی دا پولې پلي کول اسانه کوي. کانټینر یا نوم ځای یوازې هغه وخت مرسته کوي چې د هغه شبکه او امتیازي ترتیبات واقعیا بدلون جلا کوي.
اړیکه ودرئ، نه پروګرام
د دې کار پیل شوې اړیکه تړلو او د هغې لنډمهاله اعتبارنامې لرې کولو لپاره د pipeline د پای لاره وکاروئ. په هغه هوسټ کې چې نور کارونه یې کاروي پروسې د پروګرام نوم له مخې مه سره نښلوئ؛ پرځای یې هغه ځانګړې اړیکه ودروئ. لاندې دوه کمانډونه ټول پاکوالی دی، او هیڅ یو یې د پروسې موندلو ته اړ نه دی.
vpn-cli disconnect --profile "$PROFILE"
rm -f "$RUNNER_TEMP/client.key"
پای ته رسیدل جلاوالی نه دی: مړه کوونکی رنر خپل خلاص ټنل ساتي، او په زور ودرول شوې پروسه بلاک په بشپړه توګه پرېږدي. له همدې امله یوازې د پاکولو کمانډ نشي کولای ټول ډیزاین وي. په عمل کې دا داسې ناکامه کیږي: د ځای پرځای کولو کار د کاپي په ګام کې لغوه کیږي، د پای بلاک هیڅکله نه ځي، او په همدې هوسټ بل کار د ژوندي ټنل او هغه شبکې ته د اشارې کوونکې لارې سره پیل کیږي چې هغه ته نه شي رسیدلای. ناکامي په راتلونکي بیلډ کې د 'DNS' ستونزې په څیر ښکاري، هغه کار چې لامل یې شو د پای ته رسیدو څخه ساعتونه وروسته.
د کار په تولید کې د پروفایل نوم او د اعتبارنامې لاره ثبت کړئ. د پیژندونکي پرته بربنډه قطع کول کمانډ وروسته audit کول ستونزمن دي. د لاګ کرښه هماغه ده چې ثابته کوي بلاک ځغلی و، کله چې وروسته پلټنه یې غواړي.
کار ته هغه هوسټ ورکړئ چې بل څوک نه کاروي
د یو ځل کارېدونکی زیربنا د میراث ستونزه له منځه وړي، نه یې اداره کوي. د هر کار لپاره نوی استازی له لارې، پروفایل او نورو اعتبارنامو پرته پیل کیږي، او د هغه ویجاړول هغه څه پاکوي چې کار پرېښي دي. دا په هر بیلډ کې ډیر لګښت لري، او دا د هغې پولې صادقه بیه ده چې د پاکولو کوډ پورې تړلې نه ده. د هغو کارونو لپاره چې تولیدي شبکو ته لاس ورکوي، معمولا دا ارزانه انتخاب دی کله چې پیښې وشمېرل شي.
چیرې چې شریک رنر باید پاتې شي، ناکامي او لغوه کول هغومره په احتیاط سره وازموئ څومره بریالۍ کاپي. ازموینه باید وښیي چې که دا کار په نیمایي کې لغوه شوی وی بل کار به څه وویني. کار هغه وخت بشپړ دی چې لاسرسی او لنډمهاله حالت یې پای ته رسیدلی وي، نه هغه وخت چې د کاپي کمانډ صفر بیرته راګرځوي.