-
Notifications
You must be signed in to change notification settings - Fork 662
ci: add comprehensive build workflow for packages, demos, and integrations #1404
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,163 @@ | ||||||
| name: Build | ||||||
|
|
||||||
| on: | ||||||
| push: | ||||||
| branches: | ||||||
| - main | ||||||
| pull_request: | ||||||
| branches: | ||||||
| - main | ||||||
| workflow_dispatch: | ||||||
|
|
||||||
| jobs: | ||||||
| build-packages: | ||||||
| name: Build Packages | ||||||
| runs-on: ubuntu-latest | ||||||
| steps: | ||||||
| - name: Checkout | ||||||
| uses: actions/checkout@v4 | ||||||
|
|
||||||
| - name: Setup Node.js | ||||||
| uses: actions/setup-node@v4 | ||||||
| with: | ||||||
| node-version: '20.12.2' | ||||||
|
|
||||||
| - name: Install pnpm | ||||||
| uses: pnpm/action-setup@v4 | ||||||
| with: | ||||||
| version: 9.12.3 | ||||||
| run_install: false | ||||||
|
|
||||||
| - name: Get pnpm store directory | ||||||
| id: pnpm-cache | ||||||
| run: echo "STORE_PATH=$(pnpm store path)" >> $GITHUB_OUTPUT | ||||||
|
|
||||||
| - name: Setup pnpm cache | ||||||
| uses: actions/cache@v4 | ||||||
|
Comment on lines
+35
to
+36
|
||||||
| with: | ||||||
| path: ${{ steps.pnpm-cache.outputs.STORE_PATH }} | ||||||
| key: ${{ runner.os }}-pnpm-store-${{ hashFiles('**/pnpm-lock.yaml') }} | ||||||
| restore-keys: | | ||||||
| ${{ runner.os }}-pnpm-store- | ||||||
|
|
||||||
| - name: Install dependencies | ||||||
| run: pnpm install --frozen-lockfile | ||||||
|
|
||||||
| - name: Configure Turbo cache | ||||||
| uses: dtinth/setup-github-actions-caching-for-turbo@v1 | ||||||
|
|
||||||
| - name: Build all packages | ||||||
| run: pnpm turbo build --force | ||||||
|
|
||||||
|
||||||
Copilot
AI
Nov 12, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The filter pattern @lingo.dev/demo-${{ matrix.demo }} doesn't match the actual package names in the demo directories. The actual package names are:
next-app(not@lingo.dev/demo-next-app)vite-project(not@lingo.dev/demo-vite-project)react-router-app(not@lingo.dev/demo-react-router-app)adonis(not@lingo.dev/demo-adonisjs)
Change the filter to: --filter=${{ matrix.demo }}
Also note that the matrix value adonisjs doesn't match the package name adonis.
Copilot
AI
Nov 12, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line contains trailing whitespace. Remove it for consistency with project formatting standards.
Copilot
AI
Nov 12, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The filter pattern @lingo.dev/integration-${{ matrix.integration }} doesn't match the actual package name. The directus integration package is named @replexica/integration-directus, not @lingo.dev/integration-directus.
Change the filter to: --filter=@replexica/integration-${{ matrix.integration }}
| run: pnpm turbo build --filter=@lingo.dev/integration-${{ matrix.integration }} --force | |
| run: pnpm turbo build --filter=@replexica/integration-${{ matrix.integration }} --force |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The existing workflows (
pr-check.ymlandrelease.yml) useactions/setup-node@v2instead ofactions/setup-node@v4. For consistency across the project, consider using the same version or updating all workflows to v4.Additionally, the existing workflows use
node-version: 20.12.2(without quotes), while this uses'20.12.2'(with quotes). While both work, consistency would be preferable.