Fix GitHub Pages deployment and document game URL
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
name: Deploy game to GitHub Pages
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
pages: write
|
||||
id-token: write
|
||||
|
||||
concurrency:
|
||||
group: pages
|
||||
cancel-in-progress: false
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-latest
|
||||
environment:
|
||||
name: github-pages
|
||||
url: ${{ steps.deployment.outputs.page_url }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 22
|
||||
cache: npm
|
||||
- run: npm ci
|
||||
- name: Test game logic
|
||||
run: node --test tests/*.test.js
|
||||
- run: npm run build
|
||||
- uses: actions/configure-pages@v5
|
||||
- uses: actions/upload-pages-artifact@v3
|
||||
with:
|
||||
path: dist
|
||||
- name: Deploy
|
||||
id: deployment
|
||||
uses: actions/deploy-pages@v4
|
||||
@@ -2,6 +2,14 @@
|
||||
|
||||
بازی سهبعدی JavaScript با Three.js: پدر و بچه در جنگل راه میروند، از دستگاه خرید میکنند و به پیکنیک میرسند. مدلها با کد ساخته شدهاند.
|
||||
|
||||
🎮 [اجرای آنلاین بازی](https://hamedabdollahzade.github.io/vending-machine-game/)
|
||||
|
||||
## انتشار در GitHub Pages
|
||||
|
||||
در تنظیمات مخزن، بخش **Settings → Pages → Build and deployment**، گزینهٔ **Source** را روی **GitHub Actions** قرار دهید. انتشار مستقیم از `main / (root)` مناسب این پروژه نیست: فایلهای سورس باید ابتدا با Vite ساخته شوند تا JavaScript، استایلها و وابستگیها برای مرورگر آماده شوند.
|
||||
|
||||
گردشکار `.github/workflows/pages.yml` با هر push به `main` تستها و build را اجرا میکند و فقط خروجی `dist` را منتشر میکند. پس از تغییر Source، تغییرات را به `main` بفرستید یا از بخش **Actions** گردشکار **Deploy game to GitHub Pages** را دستی اجرا کنید. تنظیم `base: './'` در Vite مسیر فایلهای خروجی را با زیرمسیر مخزن سازگار نگه میدارد.
|
||||
|
||||
## اجرا
|
||||
|
||||
```sh
|
||||
|
||||
Reference in New Issue
Block a user