ارسال فایل به هاست پس از ارسال به گیت هاب

یکی از ویژگی های کاربردی و در عین حال ساده گیت هاب استفاده از قابلیت Action هست. Action های گیت هاب عملیاتی که از قبل برای آن ها تعریف کرده اید را بعد از ارسال پروژه به گیت هاب به صورت خودکار انجام می دهند ، این عملیات می تواند تست پروژه برای خطا یابی یا قرار دادن آن بر روی هاست شما باشد.
اگر شما از سرویس هایی مانند هاست nodejs و یا هاست python یا هاست laravel ما استفاده می کنید این آموزش می تواند بسیار جذاب باشد چون یکی از دغدغه های برنامه نویسان آپدیت کدهای پروژه می باشد که با این روش به آسانی مشکل آن ها برطرف خواهد شد، زیرا فقط با یک دستور، پروژه هم در گیت هاب و هم در هاست به روز خواهد شد!
ابتدا وارد وارد repository شوید و Action را انتخاب کنید.

بر روی Set up a workflow yourself کلیک کنید.

کد های درون فایل را پاک کرده و کد های زیر را قرار دهید.
on: push
name: Deploy website on push
jobs:
web-deploy:
name: Deploy
runs-on: ubuntu-latest
steps:
- name: Get latest code
uses: actions/checkout@v2.3.2
- name: Sync files
uses: SamKirkland/FTP-Deploy-Action@4.0.0
with:
server: ftp.mhmdhoseinzade.ir
username: mhmdhose
password: ${{ secrets.ftp_password }}
server-dir: /project/

در ادامه Setting را در برگه جدید باز کنید.

به Secret بروید و برروی New repository secret کلیک کنید.

و به جای Name ، مقدار ftp_password را وارد کنید.
و در قسمت value رمز ورود به هاست خود را قرار دهید و Add secret را بزنید.
دقت کنید که این یک کلید مخفی است که حتی با عمومی بودن مخزن شما رمز هاست شما در معرض دید دیگران قرار نمی گیرد.

به TAB قبلی برگردید و بر روی Start commit کیلک کرده و سپس Commit new file را بزنید.

یک نمونه از پروژه شما در گیت هاب ایجاد شده است .
با فعال کردن این ویژگی گیت هاب ، از این پس هر گونه تغییری که درپروژه خود دهید و در گیت هاب push کنید، یک نمونه از کد به هاست ارسال می شود.























پروژه نودجی اس بعد از بروز شدن فایل ها، ری استارت میشه تا تغییرات اعمال بشه؟ یا باید بصورت دستی توی تنظیمات اپ رو ری استارت کرد؟
سلام
بستگی به این دارد که از کدام روش اجرا کرده باشید اگر از nodejs application اجرا کرده باشید و حالت development اجرا شده باشد باید بعد به روز رسانی کد های پروژه تغییرات اعمال شود
این آموزش روی گیت لب هم جواب میده ؟
این اموزش کار میکنه؟