فرآیند CI/CD
(Continuous integration and Continuous Delivery)راهاندازی CI/CD به وسیله GitLab
برای راه اندازی CI/CD در GitLab شما به GitLab CI نیاز دارید. از اینجا میتوانید مستندات این ابزار را مطالعه کنید. در پایین به صورت کلی مراحل ایجاد CI/CD به وسیله GitLab آمده است:
گام اول) ابتدا نیاز دارید که فایلی تحت عنوان .gitlab-ci.yml در ریشه برنامهیتان تعریف کنید. در پایین یک فایل نمونه میبینید:
image: node:12-alpine
stages:
- update-production
deploy:
stage: update-production
only:
- master
script:
- npm i -g @liara/cli@2
- export http_proxy=http://proxy.liara.ir:6666
- liara deploy --app $APP_NAME --detach --region iran --api-token $TOKEN
همانطور که میبینید شما در این فایل همه اتفاقات را تعریف میکنید. مثلا در فایل بالا ابزار Liara CLI را ابتدا نصب کردهایم و سپس در ریشه برنامه دستور deploy را اجرا کردهایم. در همین فایل میشود Test ها را اجرا کرد و مطمئن شد که برنامه سالم است و اجازه آپدیت شدن دارد. GitLab CI امکانات بسیار خوبی برای CI/CD دارد و توصیه میکنیم حتما مستندات آن را مطالعه کنید.
گام دوم) لیارا برای اجرای دستور deploy نیاز به نام یا همان شناسه برنامه و api-token دارد. البته اگر از liara.json استفاده کرده باشید نیازی به بخش شناسه نیست. کلید یا همان api-token شما در صفحه API در حساب کاربری شما وجود دارد که به راحتی میتوانید آن را کپی کنید. سپس برای این که بتوانید از این اطلاعات در .gitlab-ci.yml استفاده کنید باید این اطلاعات را به بخش Variables در GitLab منتقل کنید. میتوانید درباره این موضوع در مستندات Variables بیشتر مطالعه کنید. به صورت کلی شما هر key-value ای را که در بخش Variables تعریف کنید، در فایل .gitlab-ci.yml قابل استفاده میشود. مثلا در فایل بالا ما دو Variable با نامهای TOKEN و APP_NAME داریم.
گام سوم) بعد از تعریف کردن همه موارد بالا با Push کردن فایل .gitlab-ci.yml برنامه شما وارد یک فرایند CI/CD میشود. لیارا از هر Commit Message شما برای توضیح هر استقرار استفاده میکند. استفاده از Commit Message های معنادار میتواند به شما در کار تیمی برای راحتتر فهمیدن علت هر استقرار کمک کند.
