نمایش سایدبار

راه‌اندازی CI/CD به وسیله GitHub

گیت هاب برای راه اندازی CI/CD از GitHub Actions استفاده می کند که می توانید مستندات آن را در اینجا مشاهده کنید و به صورت کامل با آن آشنا شوید. در این صفحه از مستندات با مراحل راه‌اندازی CI/CD به وسیله GitHub برای سرویس های چابکان آشنا می شویم.

ریپازیتوری github.com/chabokan/ci-cd-example شامل یک نمونه برنامه‌ی کامل است که می‌تواند از طریق CI/CD در چابکان مستقر شود.

مرحله اول

در ابتدا نیاز دارید که در ریشه برنامه‌ی‌تان دایرکتوری github. و پوشه workflows را داخل آن ایجاد کنید .github/workflows/. شما در این دایرکتوری تمام Action های خود را تعریف می‌کنید. برای مثال فرض می‌کنیم فایلی به نام deploy.yaml را برای استقرار در چابکان در نظر گرفته اید:

name: deploy-chabokan
on:
  push:
    branches: [master]
jobs:
  deploy:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v1
        with:
          node-version: "12"
      - name: update-chabokan
        env:
          CHABOKAN_TOKEN: ${{ secrets.CHABOKAN_TOKEN }}
        run: |
          npm install -g @chabokan.net/cli
          chabok login -t $CHABOKAN_TOKEN
          chabok deploy -s my-service

با ایجاد فایل بالا شما به درستی فرآیند CI و CD را در گیت هاب را فعال کرده اید. همانطور که مشاهده ابتدا CLI چابکان را نصب کردیم و سپس با استفاده از دستور chabok login وارد شدیم و در مرحله بعدی با استفاده از دستور chabok deploy کدهای پروژه را بر روی چابکان دیپلوی کردیم.

توجه کنید که بجای my-service باید نام سرویسی که در چابکان ایجاد کرده اید را بنویسید.

مرحله دوم

اگر به فایل deploy.yaml دقت کرده باشید یک secret به نام CHABOKAN_TOKEN وجود دارد که مقدار آن api token شما در چابکان می باشد که باید آن را به گیت هاب معرفی نمایید. برای به دست آوردن api token شخصی حساب کاربری خود باید وارد صفحه کلید دسترسی به API شوید و کلید خود را دریافت کنید.

مرحله سوم

حالا که ما api token را به دست آوردیم باید آن را به گیت هاب معرفی کنیم. برای این کار وارد ریپازیتوری پروژه خود شوید و از منوی بالا روی settings کلیک کنید و در صفحه جدید از منوی سمت چپ روی secrets کلیک کنید. حالا باید با استفاده از دکمه New repository secret بالا سمت راست یک secrets با نام CHABOKAN_TOKEN ایجاد کنید و مقدار آن را به api token به دست آمده تغییر دهید.

مرحله چهارم

اگر تمام مراحل بالا به درستی انجام داده باشید، فرآیند CI و CD شما با موفقت تنظیم شده است و با push کردن در برنچ Master فرآیند CI و CD شما شروع می شود. برای مشاهده این فرآیند می توانید از منوی بالا ریپازیتوری روی Actions کلیک کنید.

نکات تکمیلی

رفع ارور github actions is not allowed to be used

برای رفع این ارور باید از منوی بالای ریپازیتوری روی settings کلیک کنید و از منوی سمت راست روی Actions کلیک کنید و Actions permissions را روی Allow all actions قرار دهید و تنظیمات را ذخیره کنید.