ඔබට VPN හරහා Jenkins විවෘත කළ හැකි අතර එසේ වුවත් GitHub අසාර්ථක webhook එකක් වාර්තා කරන ආකාරය දැකිය හැක, මන්ද මේවා වෙනස් හිමිකරුවන් දෙදෙනෙකුගේ වෙනස් සම්බන්ධතා දෙකකි. බ්‍රවුසරය ඔබේ ලැප්ටොප් එක සාකච්ඡා කළ උමගක් හරහා ගමන් කරයි; GitHub හි බෙදාහැරීමේ සේවාව පොදු අන්තර්ජාලයෙන් ආරම්භ වන අතර පෞද්ගලික ජාලයට කිසිදු මාර්ගයක් නැත. ගබඩාවට ප්‍රවේශය එය වෙනස් නොකරයි, Jenkins තමන්ම එම ගබඩාවෙන් ගැටලුවකින් තොරව ලබා ගත හැකි වුවත්. ඇතුළු වීමක්, රිලේ එකක් හෝ මත විමසුමක් තෝරා, පසුව සිදුවීම ඇත්තටම යන මාර්ගය පරීක්ෂා කරන්න.

බ්‍රවුසර සැසියක් ඔප්පු කරන්නේ එක් දිශාවක් පමණි

VPN සම්බන්ධතාවයක් එක් ප්‍රශ්නයකට පිළිතුරු දෙයි: මෙම ලැප්ටොප් එකට අභ්‍යන්තර සත්කාරකයට ළඟා විය හැකිද. webhook බෙදාහැරීම වෙනත් දෙයක් අසයි: බාහිර සේවාවකට එම සත්කාරකයට සම්බන්ධතාවයක් විවෘත කළ හැකිද. Jenkins ගබඩාවකින් ලබා ගැනීම පිටවන රථවාහනයක් වන අතර ඇතුළු වන ප්‍රවේශ්‍යතාවය ගැන කිසිවක් නොකියයි. ඔබේ රූප සටහනේ දිශා දෙකම වෙන වෙනම පේළිවල තබන්න, කුමන පැත්ත කුමක් ආරම්භ කරයිද යන්නද ඇතුළත් කරන්න.

යමක් වෙනස් කිරීමට පෙර බෙදාහැරීමේ වාර්තාව කියවන්න. කාලය ඉකුත් වීම, සම්බන්ධතාවය නැවත සැකසීම සහ කිසිදු කාර්යයකට නොගැළපුණු පිළිගත් ඉල්ලීම යන ඒවාට වෙනස් හිමිකරුවන් තිදෙනෙකි: ජාලය, ප්‍රොක්සිය සහ ට්‍රිගර් වින්‍යාසය.

විකල්පය A: පටු අන්ත ලක්ෂ්‍යයක් විවෘත කරන්න

සංවිධානය දැනටමත් අනුමත ඇතුළු වීමක් ප්‍රකාශයට පත් කරන්නේ නම්, උපකරණ පුවරුව වෙනුවට webhook මාර්ගය විවෘත කරන්න. සාමාන්‍යයෙන් එයින් අදහස් වන්නේ කොක්ක URL එකට POST පිළිගෙන ඒවා Jenkins වෙත යවන ප්‍රතිලෝම ප්‍රොක්සි රීතියකි, පරිපාලන අතුරුමුහුණත බාහිරින් නොළඟා වන ලෙසම පවතින අතරතුර.

curl -sS -o /dev/null -w "%{http_code}\n" -X POST https://jenkins.example.com/github-webhook/

එම පරීක්ෂණය VPN ප්‍රවේශයක් නොමැති ජාලයකින් ක්‍රියාත්මක කරන්න, මන්ද උමග තුළින් ලැබෙන සාර්ථකත්වය කිසිවක් ඔප්පු නොකරයි. අන්ත ලක්ෂ්‍යය GitHub අත්සන් ශීර්ෂයක් ලෙස එවන හවුල් රහස නොමැති ඉල්ලීම් ප්‍රතික්ෂේප කළ යුතු අතර, ඔබ ප්‍රකාශයට පත් කළ එකම මාර්ගය සහ ක්‍රමය පමණක් පිළිගත යුතුය. පොදු Jenkins කොන්සෝලය webhook නිවැරදි කිරීමක් නොවේ; එය ඊළඟ ස්කෑනරය එනතුරු බලා සිටින සිදුවීමකි. ඉතිරි යෙදුමට එහි පෙර ප්‍රවේශ පාලන තබා ගැනීමට රීතිය ප්‍රමාණවත් ලෙස තද කරන්න.

විකල්පය B: රිලේ එකකින් දිශාව හරවන්න

ඇතුළු වන නිරාවරණය අනුමත නොවන තැන, ජාලය තුළ ඇති කුඩා සේවාදායකයකට රිලේ එකකට පිටවන සම්බන්ධතාවයක් තබා ගත හැක සහ යවන ලද සිදුවීම් ලබා ගත හැක. එවිට රිලේ බෙදාහැරීමේ මාර්ගයේ කොටසක් බවට පත්වේ, එබැවින් එහි ලබා ගත හැකි බව සහ සත්‍යාපනය ගොඩනැගීමේ කාර්යය තරම්ම වැදගත් වේ.

ssh -N -R 9000:localhost:8080 relay.example.net

ගිනිපවුරු පිටුපස webhook ගැන Jenkins හි මාර්ගෝපදේශය මෙම හැඩය විස්තර කරයි, ඔබේම යවන්නෙකු ලිවීමට පෙර එය කියවීම වටී. රිලේ එකේ TLS අවසන් කරන්න, සිදුවීම කාර්යයට ළඟා වීමට පෙර අත්සන සත්‍යාපනය කරන්න, පිටවන සබැඳිය අධීක්ෂණය කරන්න, මන්ද වැටුණු උමගක් කිසිදා නොයැවූ සිදුවීමක් මෙන්ම පෙනේ. රිලේ ඉල්ලීමේ ප්‍රධාන කොටස බයිට් බයිට් ලෙස සුරකින බවද තහවුරු කරන්න, මන්ද මාර්ගයේ විග්‍රහ කර නැවත කේතනය කළ JSON මත අත්සන් පරීක්ෂණ අසාර්ථක වේ.

විකල්පය C: ඒ වෙනුවට ගබඩාව මත විමසන්න

මත විමසුම ප්‍රමාදය සරල බව සමඟ මාරු කරන අතර ඇතුළු වන මාර්ගයක් කිසිසේත් අවශ්‍ය නොවේ. Jenkins කාලසටහනකට අනුව මත විමසිය හැක, නැතහොත් කුඩා කාර්යයකට API එකෙන් අසා නුහුරු සංශෝධනයක් දුටු විට ගොඩනැගීමක් ආරම්භ කළ හැක.

curl -sS -u "$USER:$TOKEN" "https://api.github.com/repos/OWNER/REPO/commits?per_page=1"

සෑම මත විමසුමක්ම API ඇමතුම් වැය කරන අතර push සහ ගොඩනැගීම අතර ප්‍රමාදයක් එකතු කරයි, එය කාර්යබහුල ගබඩා සහ හවුල් වේග සීමා මත පෙනේ. මත විමසන්නා ක්‍රියාත්මක වන තැන ගබඩා කළ සත්‍යාපන දත්තද අවශ්‍ය වේ, එබැවින් ටෝකනය ගබඩාවට කියවීමට පමණක් ප්‍රවේශයට සීමා කර වෙනත් ඕනෑම රහසක් මෙන් කරකවන්න. සිදුවීම් ප්‍රමාණය අඩු විට හෝ කිසිදා ඇතුළු වීමක් අනුමත නොවන විට මෙය තෝරන්න, ගොඩනැගීම් පසුබට වන්නේ ඇයිද යන්න පසුව කිසිවෙකු පුදුම නොවන පරිදි කාර්ය විස්තරයේ එය සඳහන් කරන්න.

පිටු පූරණයක් නොව සැබෑ බෙදාහැරීමක් පිළිගන්න

ඔබ තෝරාගත් විකල්පය කුමක් වුවත්, පිළිගැනීමේ පරීක්ෂණය යනු මූලාශ්‍ර වේදිකාව එවන සිදුවීමකි, වරප්‍රසාද ලත් ලැප්ටොප් එකකින් විවෘත කළ බ්‍රවුසර ටැබයක් නොවේ. කෙටුම්පත් ශාඛාවකට හිස් commit එකක් push කර, බෙදාහැරීමේ ප්‍රතිචාර කේතය, රිලේ ලොගය හෝ මත විමසුම් කාර්යයේ ප්‍රතිදානය එම අනුපිළිවෙලින් කියවන්න. අන්ත ලක්ෂ්‍යයෙන් 200 ලැබී ගොඩනැගීමක් නොමැති නම් ට්‍රිගර් පෙරහන වැරදිය; කාලය ඉකුත් වීම නම් මාර්ගය තවමත් වැසී ඇත. තුනෙන් කුමන නිර්මාණය භාවිත වේද යන්න සටහන් කරන්න, එසේ නොමැති නම් ඊළඟ නිදොස් කරන්නා බ්‍රවුසර පරීක්ෂණය නැවත කර එම අවසන් මාර්ගයටම පැමිණේ.

ගෙවීම් ආපසු ඇමතුම් සහ අනෙකුත් බාහිර දැනුම්දීම් සඳහාද එම තර්කයම යොදන්න: සෑම පුද්ගලයෙකුට දැනටමත් VPN සැසියක් තිබුණත් එක් එක් අයට පෞද්ගලික යෙදුමට තමන්ගේම මාර්ගයක් අවශ්‍ය වේ. බෙදාහැරීමේ මාර්ගය යෙදුමේ නිර්මාණයට අයත් වේ, ජාලකරණය පිළිබඳ පාද සටහනකට නොවේ.

අදාළ ලිපි