بیلد خودکار پروژه React js با گیت هاب در سی پنل
در این نوشته به روش ساخت بیلد خودکار و انتقال آن به سی پنل میپردازیم. در این آموزش نیاز به یک هاست سی پنل برای انجام اینکار دارید.
بیلد خودکار پروژه React js با گیت هاب در سی پنل
- برای انجام این کار ابتدا از فایل gitignore خود build و dist را حذف کنید.
- در مرحله بعد وارد هاست سی پنل خود شوید و یک حساب اف تی پی بسازید و اطلاعات آن را در بخش Repository secrets ریپازیتوری پروژهی خود قرار دهید.

در مرحله بعدی یک فایل deploy.yml بسازید و آنرا در مسیر .github/workflows قرار دهید و کد زیر را درون آن قرار دهید:
name: Build and Upload to cPanel
on:
push:
branches:
- main
jobs:
build-and-deploy:
name: Build and Deploy
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set Node.js Version
uses: actions/setup-node@v2
with:
node-version: 14
- name: Install dependencies
run: npm ci
- name: Build project
run: npm run build --if-present
env:
CI: false
- name: Copy api-submit.php to dist directory
run: cp api-submit.php dist/
- name: Copy sitemap.xml to dist directory
run: cp sitemap.xml dist/
- name: Copy robots.txt to dist directory
run: cp robots.txt dist/
- name: List output files
run: find dist/ -print
- name: Deploy to FTP server
uses: SamKirkland/FTP-Deploy-Action@v4.3.4
with:
server: ${{ secrets.CPANEL_HOST }}
username: ${{ secrets.CPANEL_USERNAME }}
password: ${{ secrets.CPANEL_PASSWORD }}
port: 21
local-dir: dist/
server-dir: /
timeout: 9999999
اگر سوالی در ارتباط با این نوشته دارید برای ما بنویسید.
برای امتیاز به این نوشته کلیک کنید!
[کل: 2 میانگین: 5]















جالبه که گیتهاب الان تقریباً برای هر کاری یه راهکار آماده داره.
بله، ابزارهای اتوماسیون گیتهاب طی سالهای اخیر خیلی کاملتر شدن.
فقط منم که هر بار دیپلوی میکنم استرس دارم یه فایل جا مونده باشه؟ 😂
این اتفاق خیلی رایجه و یکی از دلایلیه که توسعهدهندهها به سمت CI/CD میرن.
برای پروژههای کوچیک هم ارزش داره این کار رو راهاندازی کنیم؟
اگر مرتب تغییرات منتشر میکنید، حتی روی پروژههای کوچک هم میتونه مفید باشه.
من همیشه بیلد رو دستی آپلود میکردم، الان حس میکنم کلی وقت تلف کردم
خیلی از توسعهدهندهها اول کار همین روش رو استفاده میکنن، ولی بعد از مدتی اتوماتیک کردن فرآیندها واقعاً زمان زیادی ذخیره میکنه.
ممنون بابت مقاله
موفق باشین