سورس هاتون رو ببرید روی سرور اختصاصی Gitlab خودتون که CI/CD

سورس هاتون رو ببرید روی سرور اختصاصی Gitlab خودتون که CI/CD داشته باشید. و امکانات دیگه مثل بورد و ویکی و ایشوترکر و غیره داشته باشید که در این پست توضیح شون میدم.فرض کنید یک تیم دارید متشکل از تیم برنامه نویسی کراس پلت فرم و یک تیم طراحی وب سایت با وردپرس و یک تیم بک اند که وب سرویس ها رو روی دات نت core یا جنگو یا لاراول دارن طراحی میکنند.یک استارت آپ که میخواد اپلیکیشن اندروید و اپل داشته باشه و یک وب سایت ساده با وردپرس و یک سری وب سرویسمعمار نرم افزار شما تصمیم گرفته برای اینکه هزینه ها پایین بیاد و سرعت بالا بره یک وب سایت ساده با وردپرس داشته باشید https://pos.app مثل این سایت و در گام دوم کاربران سایت شما بیان و اپلیکیشن شما رو از اپ استور اینجا دانلود کنند. در گام سوم وقتی میخوان عضو سایت شما بشوند با جنگو یا لاراول یا دات نت core روی سرویس های ابری یک محیط برای عضویت و ورود ایجاد کنید که توکن jwt صادر کند.در گام چهارم کل سورس های شما روی گیت لب قرار داره و میخواهید هر نسخه ی جدید که تست میشه براحتی پروسه بیلد رو مدیریت کنید و سپس براحتی توسط fastlane روی گوگل پلی عکس های برنامه تون رو بروز کنه و نسخه رو ساین کنه و روی سرور کافه بازار و گوگل پلی و اپ استور قرار بده.خب گام اول که وردپرس بود میتونید براحتی توی لپ تاپ توسعه دهندگان تون از سرویس های ابری مثل liara.ir استفاده کنید و با یک دستور liara deploy پروژه تون رو روی ابر روی ماشین اول در اختیار تیم تست قرار بدید و روی سرور مجازی دوم تون روی لیارا در آدرس دلخواه تون روی سایت خودتون پابلیش کنیدعکس زیر رو نگاه کنید این صفحه ی ادمین لیارای منه/اولین گزینه گیت لب هستش که با دو تا کلیک میتونید بسازید و میشه سورس کنترل شماکافیه برید روی گزینه ی ایجاد پروژه کلیک کنید مثل شکل زیرروی برنامه آماده کلیک کنید گیت لب رو انتخاب کنید و تمامبه همین راحتی میتونید کل سورس هاتون رو ببرید روی گیت لب و همه جور امکانات مدیریت پروژه داشته باشید.حالا اگر سورس هاتون روی بیت باکت هستش کافیه مراحل زیر رو طی کنید که بتونید پروژه هاتون رو از بیت باکت بیارید روی سرور خودتون.اینجا سرور بیت باکت ماست که تقریبا 5 برنامه نویس شش ماه کار کردند و حالا بیت باکت میگه برای نفر ششم و هفتم پول پرداخت کنمن رفتم در قسمت پرایس و قیمت ها و دیدم که برای 8 نفر باید ماهی دو دلار پرداخت کنیم میشه 16 دلار و میشه ماهی دویست هزار تومان. حالا حساب کنید بشید 15 نفر یا اینکه اگر دلار گرون هم نشه نه ویکی خواهید داشت و نه برای ثبت مستندات تیمی و نه ایشوترکر دارید و نه CI/CD و نه بورد کارها ... اجازه بدید دونه دونه توضیح بدم که چه مزیت هایی داره گیت لب.امکانات بیت باکت:فقط سورس کنترل خوبی استامکانات گیت لب:سورس کنترلردسترسی بدون محدودیت و لیمیت از لحاظ تعداد کاربر و تعداد ریپوزیتاری و حجم ریپوثبت ایشو و باگ ها و برنامه ریزی هر باگ که توسط تیم تست ثبت میشه باید reproduce بشه یعنی یک نفر بره دقیق مراحلی که باگ رخ میده رو پیدا کنه که مفصله و بعدا درباره ش حرف میزنیم. آخه بعضی باگ ها در شرایط خاص رخ میدهند یعنی باگ دیتابیس هستند که ربط دارن به نوع داده ای که از قدیم در دیتابیس ثبت شده و ما باید ریشه و علت اصلی رو پیدا کنیم. و بفهمیم چرا از دست تیم تست در رفته وجا مونده.CI/CDویکی - ثبت تجربه و مستند سازیمستند راهنما برای برنامه نویسان مثلا نرم افزار هایی که برنامه نویس باید نصب کنه برای شروع به کارراهنما و مستند سازی بعضی کارهایی که خیلی پیش میاد و ممکنه یادمون بره.همه ی امکانات بالا باعث میشه مزیت رقابتی ایجاد کنه. و اینکه با mattermost که یک ابزار چت تیمی هستش هم integrate میشه و خیلی خوب با هم کار میکنند و به هم وصل میشوند.برای نصب این ابزار هم میتونید از اینجا خودتون یک داکر در لیارا بسازید و وصلش کنید به گیت لب خودتون.خب برگردیم ادامه ی انجام تنظیمات گیت لب. اولین کار اینه که شما پروژه هاتون رو از بیت باکت بیاریدگوگل کنیم؟ نه بیاییم توی صفحه ی بیت باکت دکمه ی پروژه ی جدید رو بزنید و دکمه ی ایمپورت ... مثل شکل زیرایمپورت کردن پروژه به گیت لب از بیت باکتبقیه مراحل رو اینجا براتون خیلی خوشگل توضیح داده من طی کردم خیلی ساده بود.فقط باید بری توی کامند لاین داکر که گیت لب هستش بری توی اون پوشه و توسط ویرایشگر اون فایل جایی که کامنت شده از کامنت دربیاری و رمزی که بیت باکت داده رو کپی کنی بعدش یک ریستارت سرویس هم میخوای که ساده است من با دستور زیر انجام دادم gitlab-ctl reconfigureکه ممکنه برای شما در حالت دیگری جور دیگه باشه. این توضیح مدیر تیم لیاراست که همیشه آنلاینه و مشکلات تون دررابطه با لیارا رو پاسخگو هستند.بله درسته. از اونجایی که ما برای نصب گیت‌لب، از Omnibus استفاده کردیم، هر تغییری که اعمال می‌کنید رو لازم هست بعدش reconfigure بزنید.