ارائه دهنده خدمات ابری PaaS و DBaaS

فرآیند CI/CD

(Continuous integration and Continuous Delivery)
برای مشاهده‌ی نمونه‌ای واقعی از موضوعات گفته شده در زیر، مقاله راه‌اندازی CI/CD به وسیله GitLab و GitHub در لیارا را در وبلاگ لیارا مطالعه کنید.
ریپازیتوری liara-cloud/github-cd-example شامل یک نمونه برنامه‌ی کامل است که می‌تواند از طریق CI/CD در لیارا مستقر شود.

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

برای راه‌اندازی CI/CD در GitHub از قابلیت GitHub Actions استفاده خواهیم کرد و شما نیز باید مراحل زیر را دنبال کنید.

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

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

    steps:
      - uses: actions/checkout@v2
      - uses: actions/setup-node@v1
        with:
          node-version: "16"
      - name: update-liara
        env:
          LIARA_TOKEN: ${{ secrets.LIARA_API_TOKEN }}
        run: |
          npm i -g @liara/cli@2
          liara deploy --app="APP_NAME" --api-token="$LIARA_TOKEN" --region iran --detach
۱) در مثال فوق باید مقدار APP_NAME را با شناسه‌ی برنامه‌تان در لیارا جایگزین کنید.
۲) همچنین موقعیت جغرافیایی پیش‌فرض، iran درنظر گرفته شده است و اگر برنامه‌ی شما در موقعیت آلمان میزبانی شده باشد باید مقدار germany را در پارامتر --region تنظیم کنید.

همان‌طور که مشاهده می کنید، در قطعه‌کد فوق تمام مراحل لازم برای استقرار یک پروژه در لیارا تعریف شده است. در ابتدا ابزار Liara CLI نصب شده و سپس دستور liara deploy اجرا می‌شود.

پس از شخصی‌سازی مقدار APP_NAME و مشخص کردن موقعیت جغرافیایی در فایل liara.yaml باید کلید دسترسی به API حساب‌تان را در بخش Secret تنظیمات ریپازیتوری GitHub اضافه کنید.

برای این کار وارد تنظیمات ریپازیتوری شوید و از منوی Secrets، روی گزینه‌ی Actions کلیک کنید.

سپس برای تعریف یک Secret جدید، روی گزینه‌ی New repository secret کلیک کنید. نام این Secret را LIARA_API_TOKEN و مقدار آن را از صفحه‌ی کلید دسترسی به API کپی کرده و در بخش Value قرار داده و بر روی گزینه‌ی Add secret کلیک کنید.

در آخر با Push کردن فایل .github/workflows/liara.yaml در ریپازیتوری GitHub متوجه خواهید شد که یک Pipeline به‌صورت خودکار در تب Action ریپازیتوری شما اجرا شده است و شما نیز می‌توانید مراحل استقرار پروژه‌ی خود را در صفحه‌ی تاریخچه دنبال کنید.