پرش به مطلب اصلی
همگام‌سازی جریان‌داده‌ها با GitLab

همگام‌سازی جریان‌داده‌ها با GitLab

بازارچه ابریخواندن 4 دقیقه

n8n امکان اتصال هر Instance به یک branch در مخزن Git را فراهم می‌کند. با این قابلیت، نسخه ذخیره‌شده جریان‌داده‌ها و منابع پشتیبانی‌شده بین n8n و GitLab جابه‌جا می‌شوند و می‌توان محیط‌های توسعه، آزمایش و Production را با branchهای جدا مدیریت کرد.

پیش‌نیازها​

  • یک سرویس n8n با قابلیت Enterprise مربوط به Source Control و دسترسی owner
  • یک پروژه GitLab خالی و دسترسی Maintainer به آن
  • امکان دسترسی شبکه n8n به آدرس SSH سرور GitLab
  • آشنایی با این محدودیت که Credentialها و مقادیر متغیرها همراه جریان‌داده‌ها در Git ذخیره نمی‌شوند
  • برنامه مشخص برای تعیین محیط مبدا، محیط مقصد و مسئول حل تعارض‌ها

برای انجام این کار:

  1. یک repository در GitLab بسازید
  2. SSH key را در GitLab تنظیم کنید و تنظیمات Environment را در n8n انجام دهید
  3. از قابلیت push و pull در جریان‌داده‌ها استفاده کنید

ساخت Repository در GitLab​

ابتدا یک repository جدید در GitLab ایجاد کنید. برای این کار، به بخش Projects در GitLab مراجعه کنید و روی دکمه New project کلیک کنید. سپس نام repository و تنظیمات اولیه را مشخص کنید.

پس از ایجاد repository، آدرس SSH آن را کپی کنید که در مراحل بعدی مورد استفاده قرار می‌گیرد.


تنظیمات Environment در n8n​

پس از ساخت repository در GitLab، به بخش Settings > Environments در n8n مراجعه کنید. در این بخش، آدرس SSH repository GitLab که در مرحله قبل کپی کرده‌اید را وارد کنید. آدرس SSH repository معمولاً به صورت git@gitlab.example.com:username/repository.git است.

در همین صفحه تنظیمات Environment، n8n یک SSH key تولید می‌کند که باید آن را کپی کنید و در GitLab اضافه کنید. این SSH key که توسط n8n ساخته شده است، در بخش مربوطه در صفحه Environment قابل مشاهده و کپی است.

پس از کپی‌کردن کلید عمومی n8n، در پروژه GitLab از مسیر Settings > Repository > Deploy keys یک Deploy Key ساخته و مجوز نوشتن آن فعال می‌شود. این کلید به پروژه تعلق دارد و نباید به‌عنوان SSH Key شخصی کاربر ثبت شود.

سپس به صفحه تنظیمات Environment در n8n بازگشته و روی Connect کلیک می‌شود. پس از اتصال، branch مربوط به این Instance انتخاب و تنظیمات ذخیره می‌شوند. برای Instance محیط Production می‌توان گزینه Protected instance را فعال کرد تا منابع تحت Source Control از داخل آن ویرایش نشوند.


استفاده از Push و Pull در جریان‌داده‌ها​

پس از اتصال به GitLab، گزینه Push از منوی اصلی n8n انتخاب می‌شود. در پنجره Commit and push changes، جریان‌داده‌ها و منابع موردنظر انتخاب و پس از نوشتن پیام Commit، تغییرات ارسال می‌شوند.

پس از Push موفق، نسخه ذخیره‌شده جریان‌داده در مخزن GitLab قابل مشاهده است.

برای دریافت تغییرات، گزینه Pull انتخاب و تفاوت‌ها پیش از اعمال بررسی می‌شوند. n8n جریان‌داده‌ها، Tagها و Stubهای Credential و Variable را در Git نگه می‌دارد؛ مقدار Secretها و Variableها منتقل نمی‌شود و باید در هر Instance جداگانه مقداردهی شود.

این راهنمایی کاربردی بود؟

با ثبت بازخوردتان در بهبود کیفیت مستندات مشارکت داشته باشید.