diff --git a/.github/actions/setup-node-with-cache/action.yaml b/.github/actions/setup-node-with-cache/action.yaml index 2c17904b4..e426bf32e 100644 --- a/.github/actions/setup-node-with-cache/action.yaml +++ b/.github/actions/setup-node-with-cache/action.yaml @@ -25,5 +25,8 @@ runs: ${{ runner.os }}-pnpm-store- - name: "Install dependencies" - run: pnpm install --frozen-lockfile + run: pnpm install --frozen-lockfile --ignore-scripts + shell: bash + - name: "Building internal utilities" + run: pnpm run build:internal-utils shell: bash diff --git a/.github/workflows/Build.yml b/.github/workflows/Build.yml index c6a128e50..ae890b8a3 100644 --- a/.github/workflows/Build.yml +++ b/.github/workflows/Build.yml @@ -55,7 +55,10 @@ jobs: restore-keys: | ${{ runner.os }}-pnpm-store- - name: "Installing dependencies" - run: pnpm install + # Avoid running workspace lifecycle builds during install; the internal utilities are built once below. + run: pnpm install --frozen-lockfile --ignore-scripts + - name: "Building internal utilities" + run: pnpm run build:internal-utils - name: "Running build for development" run: pnpm -r --filter='!native-widgets' --filter=$(if [ "${{ steps.files.outputs.global_files }}" = "" ] && ${{ github.event_name == 'pull_request' }}; then echo '...[origin/main]'; else echo '**'; fi) run build env: diff --git a/.github/workflows/BuildMpk.yml b/.github/workflows/BuildMpk.yml index 9c68385f7..2447295a0 100644 --- a/.github/workflows/BuildMpk.yml +++ b/.github/workflows/BuildMpk.yml @@ -38,7 +38,10 @@ jobs: - name: "Setup pnpm" uses: pnpm/action-setup@a8198c4bff370c8506180b035930dea56dbd5288 # v5 - name: "Installing dependencies" - run: pnpm install + # Avoid running workspace lifecycle builds during install; the internal utilities are built once below. + run: pnpm install --frozen-lockfile --ignore-scripts + - name: "Building internal utilities" + run: pnpm run build:internal-utils - name: "Bumping version" id: bump_version run: | diff --git a/.github/workflows/MarketplaceRelease.yml b/.github/workflows/MarketplaceRelease.yml index d9223a1ca..ed3360bb1 100644 --- a/.github/workflows/MarketplaceRelease.yml +++ b/.github/workflows/MarketplaceRelease.yml @@ -32,7 +32,10 @@ jobs: - name: "Setup pnpm" uses: pnpm/action-setup@a8198c4bff370c8506180b035930dea56dbd5288 # v5 - name: "Installing dependencies" - run: pnpm install + # Avoid running workspace lifecycle builds during install; the internal utilities are built once below. + run: pnpm install --frozen-lockfile --ignore-scripts + - name: "Building internal utilities" + run: pnpm run build:internal-utils - name: "Building native widgets and js actions" run: pnpm -r run release - name: "Updating Native Mobile Resources project" diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml index 3d22b7e05..cd32f3bd5 100644 --- a/.github/workflows/Release.yml +++ b/.github/workflows/Release.yml @@ -60,7 +60,10 @@ jobs: restore-keys: | ${{ runner.os }}-pnpm-store- - name: "Installing dependencies" - run: pnpm install + # Avoid running workspace lifecycle builds during install; the internal utilities are built once below. + run: pnpm install --frozen-lockfile --ignore-scripts + - name: "Building internal utilities" + run: pnpm run build:internal-utils - name: "Running release for production" run: pnpm -r --filter=$(if [ "${{ steps.files.outputs.global_files }}" = "" ] && ${{ github.event_name == 'pull_request' }}; then echo '...[origin/main]'; else echo '**'; fi) run release env: diff --git a/.github/workflows/UnitTests.yml b/.github/workflows/UnitTests.yml index 90654318d..8bea28ed1 100644 --- a/.github/workflows/UnitTests.yml +++ b/.github/workflows/UnitTests.yml @@ -54,7 +54,10 @@ jobs: restore-keys: | ${{ runner.os }}-pnpm-store- - name: "Installing dependencies" - run: pnpm install + # Avoid running workspace lifecycle builds during install; the internal utilities are built once below. + run: pnpm install --frozen-lockfile --ignore-scripts + - name: "Building internal utilities" + run: pnpm run build:internal-utils - name: "Linting code" run: pnpm -r --filter=${{ steps.variables.outputs.arg }} run lint - name: "Running unit tests" diff --git a/package.json b/package.json index 7ecc069d7..38859c861 100644 --- a/package.json +++ b/package.json @@ -22,6 +22,7 @@ "test:e2e:android": "pnpm -r run test:e2e:android", "test:e2e:ios": "pnpm -r run test:e2e:ios", "build": "pnpm -r run build", + "build:internal-utils": "pnpm --filter @mendix/piw-utils-internal --filter @mendix/piw-native-utils-internal run build", "release": "pnpm -r run release", "release:marketplace": "pnpm -r run release:marketplace", "release-github:widget": "node ./scripts/release/createWidgetRelease.js",