اتصال گیت لب رانر gitlab-runner

اجرای CI-CD بر روی گیت لب
اجرای CI-CD بر روی گیت لب

رانر به عنوان ایجنت اجرای فرآیند های CI-CD به صورت پیشفرض درون gitlab.com به صورت اشتراکی گذاشته شده و برای اجرای فرآیند های مختلف می توان از آن ها استفاده نمود، ولی بعضی زمان ها سرعت بیلد و اختصاصی بودن رانر ها برای ما مهم میشه، در این جور مواقع بهتر هستش که رانر اختصاصی خودمون را راه بندازیم:

اول از همه داخل گیت خودمون میریم و در بخش CI/CD توکن لازم برای اجرای رانر در اختیار بگیریم:

رفتن به بخش CI/CD قسمت رانر
رفتن به بخش CI/CD قسمت رانر
کپی کردن آدرس گیت لب و توکن
کپی کردن آدرس گیت لب و توکن

پیشنهاد من استفاده از گیت لب رانر بر بستر داکر هستش که میتونیم به راحتی فرآیند نصب و اجرا را ادامه بدیم:

docker run -d --name gitlab-runner --restart always \ -v /srv/gitlab-runner/config:/etc/gitlab-runner \ -v /var/run/docker.sock:/var/run/docker.sock \     gitlab/gitlab-runner:latest

با این دستور یک کانتینر گیت لب رانر اجرا می کنیم و سپس باید رانر را به گیت لب متصل کنیم:

docker run --rm -it -v /srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner register

با اجرای این دستور به صورت تعاملی چندین سوال از شما پرسیده می شود، مانند URL ( به http/https دقت شود!) و Secret Token که در قسمت قبل کپی کرده ایم و نام رانر و اگر تگ خاصی برای اجرای آن مد نظر دارید نام گذاری کنید. با وارد کردن این اطلاعات، گیت لب رانر شما به صورت موفقیت آمیز به گیت لب شما متصل شده و در قسمت CI/CD runner اضافه خواهد شد:

پاسخ به سوالات نصب رانر
پاسخ به سوالات نصب رانر

برای تکمیل کار به تنظیمات گیت لب بخش تنظیمات رانر میریم:

کلیک بر روی تنظیمات رانر
کلیک بر روی تنظیمات رانر
چک مارک ها
چک مارک ها


در بخش تنظیمات ریپوزیتوری shared runner رو غیر فعال کنیم و در نهایت به ریپوزیتوری بریم و یک فایل جدید درست کنیم و از گزینه های بالا گزینه template برای فایل پایپلاین خودمون انتخاب کنیم و برای شروع تست خودمون ی فایل پایپلاین bash می سازیم:

فایل پایپلاین .gitlab-ci.yml
فایل پایپلاین .gitlab-ci.yml

به صورت پیش فرض با پوش کردن این فایل چون تغییری بر روی برنچ مستر اتفاق میوفته، سیستم autodevops گیت لب با استفاده از رانری که در دسترس داره شروع به بیلد پروژه می کنه و اگر شما روی علامت running کلیک کنید، لاگ رانر را خواهید دید:

اگر با پیام passed رو به رو شدید، تبریک می گم :)) شما گیت لب رانر به گیت خودتون به طور موفقیت آمیزی متصل کردید :)