Merge pull request #57 from mehrabix/mehrabix-patch-1 #136
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy 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: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
- name: Setup pnpm | |
uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
- name: Install dependencies | |
run: pnpm install | |
# Ensure the data directory exists in dist | |
- name: Create data directory structure | |
run: | | |
mkdir -p dist/data/persian-calendar-repo/PersianCalendar/data | |
cp -r src/data/persian-calendar-repo/PersianCalendar/data/*.json dist/data/persian-calendar-repo/PersianCalendar/data/ || true | |
mkdir -p dist/data | |
cp -r src/data/events-fallback.json dist/data/ || true | |
echo "Copied JSON data files to dist directory" | |
- name: Build component | |
run: pnpm build:core | |
env: | |
NODE_OPTIONS: "--max-old-space-size=4096" | |
# Copy examples and demo to make them accessible on GitHub Pages | |
- name: Copy examples and demo folders | |
run: | | |
mkdir -p build | |
cp -r dist build/ | |
cp -r demo build/ | |
cp index.html build/ | |
touch build/.nojekyll | |
echo "Copied required files to build directory" | |
- name: Setup Pages | |
uses: actions/configure-pages@v4 | |
- name: Upload artifact | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: 'build' | |
deploy: | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 |