feat(vite): select env from VITE_ENV var instead of requiring --mode #86
Workflow file for this run
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: CI | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| types: [opened, synchronize, reopened] | |
| branches: | |
| - main | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| # Run inside the official Playwright image: browsers (chromium v1217 for | |
| # playwright 1.59.1) are pre-baked, so the lib browser tests need no | |
| # `playwright install` download. | |
| container: mcr.microsoft.com/playwright:v1.59.1-noble | |
| timeout-minutes: 15 | |
| env: | |
| MISE_EXPERIMENTAL: "1" | |
| steps: | |
| - name: ⬇️ Checkout repo | |
| uses: actions/checkout@v4 | |
| - name: 🛠️ Setup mise | |
| uses: jdx/mise-action@v2 | |
| with: | |
| install: true | |
| cache: true | |
| experimental: true | |
| - name: 📦 Install root workspace | |
| run: pnpm install --frozen-lockfile | |
| - name: 💅 Check (biome + tsc) | |
| run: mise run check | |
| - name: 🧪 Test unit (lib) | |
| run: mise run lib:test | |
| - name: 🔨 Build (lib) | |
| run: mise run lib:build | |
| release: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| needs: test | |
| if: ${{ github.ref == 'refs/heads/main' }} | |
| permissions: | |
| id-token: write | |
| contents: write | |
| packages: write | |
| pull-requests: write | |
| steps: | |
| - name: 🔑 Mint vland-bot token | |
| id: app-token | |
| uses: actions/create-github-app-token@v1 | |
| with: | |
| app-id: ${{ secrets.VLAND_BOT_APP_ID }} | |
| private-key: ${{ secrets.VLAND_BOT_PRIVATE_KEY }} | |
| - name: ⬇️ Checkout repo | |
| uses: actions/checkout@v4 | |
| with: | |
| token: ${{ steps.app-token.outputs.token }} | |
| - name: 🛠️ Setup mise | |
| uses: jdx/mise-action@v2 | |
| with: | |
| install: true | |
| cache: true | |
| experimental: true | |
| - name: 📦 Install root workspace | |
| run: pnpm install --frozen-lockfile | |
| - name: 🧑💻 Configure git user | |
| run: | | |
| git config user.name "vland-bot[bot]" | |
| git config user.email "282456776+vland-bot[bot]@users.noreply.github.com" | |
| - name: 🚀 Create release PR or publish versions | |
| uses: changesets/action@v1 | |
| with: | |
| commit: "chore: update versions" | |
| title: "chore: update versions" | |
| publish: pnpm changeset publish | |
| setupGitUser: false | |
| env: | |
| GITHUB_TOKEN: ${{ steps.app-token.outputs.token }} | |
| LEFTHOOK: 0 | |
| preview: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| if: ${{ startsWith(github.head_ref, 'feat') || startsWith(github.head_ref, 'fix') || contains(github.event.pull_request.labels.*.name, 'preview') }} | |
| permissions: | |
| id-token: write | |
| contents: read | |
| steps: | |
| - name: ⬇️ Checkout repo | |
| uses: actions/checkout@v4 | |
| - name: 🟢 Setup Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: .node-version | |
| - name: ⌛ Setup CI | |
| uses: variableland/gh-actions/actions/setup-pnpm@main | |
| - name: 🚀 Preview release | |
| uses: variableland/gh-actions/actions/monorepo-preview-release@main | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} |