خودکار سازی استقرار سرور با اقدامات GitHub: صرفه جویی در وقت با SSH & RSYNC

🚀 من با اقدامات GitHub کار می کردم. من قبلاً آن را کاوش نکرده بودم ، اما می خواستم روند استقرار خود را کمی صاف تر انجام دهم.
🔄 کار دقیقاً استقرار نبود ، بیشتر در مورد ارسال پرونده ها و پوشه های به روز شده به سرور بود. پیش از این ، مجبور شدم دوباره و دوباره کد را روی سرور به روز کنم ، بنابراین تصمیم گرفتم با استفاده از اقدامات GitHub این روند را خودکار کنم.
📜 برای ایجاد یک گردش کار در اقدامات GitHub ، باید تمام دستورالعمل ها را در یک پرونده .yml تعریف کنید. از آنجا که من قبلاً با YAML کار نکرده بودم ، از Chatgpt 🤖 خواستم تا ساختار را برای من تولید کند. این شامل تنظیمات سرور و دستورات برای کپی کردن شعبه اصلی با استفاده از RSYNC است.
🔑 با این حال ، برای انجام این کار ، برای تأیید اعتبار بین GitHub و سرور به کلیدهای SSH نیاز دارید. در ابتدا ، من به اشتباه از آنها استفاده می کردم. برای تأیید اعتبار ، کلید عمومی 🔓 باید در سرور مجاز باشد و کلید خصوصی 🔐 باید در محیط اسرار تنظیمات مخزن در GitHub ذخیره شود. به این ترتیب ، GitHub به عنوان مشتری عمل می کند.
💡 چگونه احراز هویت SSH کار می کند:
SSH در اصل با یک جفت کلید کار می کند:
✅ کلید خصوصی (کلید مخفی) → همیشه باید در مشتری (سرور محلی) به طور ایمن ذخیره شود.
✅ کلید عمومی → ذخیره شده در سرور از راه دور.
📡 هنگامی که مشتری درخواست دسترسی را به سرور از راه دور ارسال می کند ، کلید خصوصی روی مشتری یک امضای دیجیتال ایجاد می کند. اگر این امضای با امضای کلید عمومی در سرور از راه دور مطابقت داشته باشد ، دسترسی به آنها اعطا می شود.
در پایان ، من انتقال پرونده های پروژه را بین مخزن GitHub و سرور خود خودکار کردم و وقت زیادی را برای من صرفه جویی کردم. ⏳🚀