refactor(scripts): move lang-redirect from public to src/scripts for … #24
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: Docs Deploy gh-pages | |
| on: | |
| push: | |
| branches: | |
| - main | |
| workflow_dispatch: | |
| concurrency: | |
| group: docs-deploy-gh-pages | |
| cancel-in-progress: false | |
| permissions: | |
| contents: read | |
| env: | |
| NODE_VERSION: "22.12.0" | |
| NODE_ENV: production | |
| DOCS_GH_PAGES_PAYLOAD_DIR: .deploy/gh-pages | |
| jobs: | |
| build: | |
| name: Build validated docs snapshot | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: ${{ env.NODE_VERSION }} | |
| cache: npm | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Build and verify docs | |
| run: npm run build:ci | |
| env: | |
| CLARITY_PROJECT_ID: ${{ secrets.CLARITY_PROJECT_ID }} | |
| - name: Assemble gh-pages publication payload | |
| run: | | |
| rm -rf "${DOCS_GH_PAGES_PAYLOAD_DIR}" | |
| mkdir -p "${DOCS_GH_PAGES_PAYLOAD_DIR}/dist" | |
| cp .github/gh-pages/esa.jsonc "${DOCS_GH_PAGES_PAYLOAD_DIR}/esa.jsonc" | |
| cp -R dist/. "${DOCS_GH_PAGES_PAYLOAD_DIR}/dist/" | |
| - name: Upload validated gh-pages payload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: docs-gh-pages-payload | |
| path: ${{ env.DOCS_GH_PAGES_PAYLOAD_DIR }} | |
| if-no-files-found: error | |
| deploy: | |
| name: Publish validated snapshot to gh-pages | |
| runs-on: ubuntu-latest | |
| needs: build | |
| permissions: | |
| contents: write | |
| environment: | |
| name: docs-production | |
| url: https://docs.hagicode.com | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Download validated gh-pages payload | |
| uses: actions/download-artifact@v4 | |
| with: | |
| name: docs-gh-pages-payload | |
| path: .deploy/gh-pages | |
| - name: Publish validated gh-pages payload | |
| uses: peaceiris/actions-gh-pages@v4 | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| publish_branch: gh-pages | |
| publish_dir: ./.deploy/gh-pages | |
| force_orphan: true | |
| enable_jekyll: false | |
| - name: Summarize deployment output | |
| run: | | |
| echo "Published the validated gh-pages payload with ./esa.jsonc and ./dist/." >> "$GITHUB_STEP_SUMMARY" | |
| echo "This workflow adds a gh-pages publication path; verify docs.hagicode.com is configured to read gh-pages before treating it as production." >> "$GITHUB_STEP_SUMMARY" | |
| echo "GitHub environment: docs-production" >> "$GITHUB_STEP_SUMMARY" | |
| echo "Expected public URL after host verification: https://docs.hagicode.com" >> "$GITHUB_STEP_SUMMARY" |