feat: Deploy the Explorer in production mode #4
Workflow file for this run
This file contains 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 explorer | |
on: | |
pull_request: | |
branches: | |
- dev | |
push: | |
branches: | |
- dev | |
jobs: | |
deploy-explorer-staging: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: explorer | |
steps: | |
- name: Check out the repo | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- id: check-changes | |
run: | | |
if [ -n "$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.event.pull_request.head.sha }} | grep '^explorer/')" ]; then | |
echo "::set-output name=changed::true" | |
else | |
echo "::set-output name=changed::false" | |
fi | |
- name: Install Pnpm | |
if: steps.check-changes.outputs.changed == 'true' | |
uses: pnpm/action-setup@v2 | |
with: | |
version: 8 | |
run_install: false | |
- name: Install Node.js | |
if: steps.check-changes.outputs.changed == 'true' | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 18 | |
cache: pnpm | |
- name: Get pnpm store directory | |
if: steps.check-changes.outputs.changed == 'true' | |
shell: bash | |
run: | | |
echo "STORE_PATH=$(pnpm store path --silent)" >> $GITHUB_ENV | |
- uses: actions/cache@v3 | |
if: steps.check-changes.outputs.changed == 'true' | |
name: Setup pnpm cache | |
with: | |
path: ${{ env.STORE_PATH }} | |
key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | |
restore-keys: | | |
${{ runner.os }}-pnpm-store- | |
- name: Install dependencies | |
if: steps.check-changes.outputs.changed == 'true' | |
run: pnpm install --frozen-lockfile | |
- name: Build | |
if: steps.check-changes.outputs.changed == 'true' | |
run: pnpm run build | |
- name: Deploy explorer to Netlify | |
if: steps.check-changes.outputs.changed == 'true' | |
uses: netlify/actions/cli@master | |
env: | |
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} | |
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID_STAGING }} | |
with: | |
args: deploy --filter explorer --dir=dist --alias=deploy-preview-${{ github.event.number }} | |
- name: Add explorer deployment summary | |
if: steps.check-changes.outputs.changed == 'true' | |
run: | | |
echo "## Explorer staging deployment result" >> $GITHUB_STEP_SUMMARY | |
echo "✅ Passed" >> $GITHUB_STEP_SUMMARY | |
- name: Add explorer deployment summary | |
if: steps.check-changes.outputs.changed == 'false' | |
run: | | |
echo "## Explorer staging deployment result" >> $GITHUB_STEP_SUMMARY | |
echo "✅ No change detected in the explorer" >> $GITHUB_STEP_SUMMARY |