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 node uses: actions/setup-node@v3 with: node-version: '16' - name: Setup pnpm uses: pnpm/action-setup@v2 - name: Cache ~/.pnpm-store uses: actions/cache@v3 env: cache-name: cache-pnpm-store with: path: ~/.pnpm-store key: ${{ runner.os }}-publish-${{ env.cache-name }}-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | ${{ runner.os }}-publish-${{ env.cache-name }}- ${{ runner.os }}-publish- ${{ runner.os }}- - 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.0 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.0 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"