name: Publish Docs Deploy on: workflow_run: workflows: ['Publish to NPM registry'] types: [completed] jobs: deploy-docs: runs-on: ubuntu-latest if: ${{ github.event.workflow_run.conclusion == 'success' }} steps: - name: Checkout uses: actions/checkout@v3 with: ref: ${{ github.event.workflow_run.head_sha }} persist-credentials: false - name: Setup pnpm uses: pnpm/action-setup@v2 - name: Setup node uses: actions/setup-node@v3 with: node-version: 16 - name: Get pnpm store directory id: pnpm-cache run: | echo "::set-output name=pnpm_cache_dir::$(pnpm store path)" - uses: actions/cache@v3 name: Setup pnpm cache with: path: ${{ steps.pnpm-cache.outputs.pnpm_cache_dir }} key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}-pnpm-store- - name: Install dependencies run: pnpm i --frozen-lockfile - name: Init Crowdin token run: pnpm run docs:crowdin-credentials env: CROWDIN_TOKEN: ${{secrets.CROWDIN_TOKEN}} - name: Pull Crowdin translations run: cd docs && pnpm exec crowdin download -l zh-CN && pnpm exec crowdin download -l es-ES - name: Generate common locale run: pnpm docs:gen-locale - name: Install latest Element Plus run: cd docs && pnpm i element-plus@latest - name: Build Metadata run: cd internal/metadata && pnpm build env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Build website run: pnpm docs:build env: DOC_ENV: production - name: Deploy uses: JamesIves/github-pages-deploy-action@v4.3.4 with: token: ${{ secrets.GITHUB_TOKEN }} branch: gh-pages folder: docs/.vitepress/dist git-config-name: ElementPlusBot git-config-email: hello@element-plus.org commit-message: website deploy - name: Deploy to vercel uses: JamesIves/github-pages-deploy-action@v4.3.4 with: token: ${{ secrets.EP_BOT_TOKEN }} branch: main folder: docs/.vitepress/dist repository-name: element-plus/vercel-publish git-config-name: ElementPlusBot git-config-email: hello@element-plus.org - name: Sync env: TRIGGERSYNCURL: ${{ secrets.TRIGGERSYNCURL }} run: curl -k "$TRIGGERSYNCURL"