Skip to content

Commit 8f0e43f

Browse files
evereqrahul-rocketclaude
authored
Stage (#9466)
* feat(ui): logger module implementation feat(ui): shared nebular module to exports * feat: migrate Angular libs to @nx/angular:ng-packagr-lite executor * Update nx.json * fix(ci): prevent NX daemon deadlock on Windows CI and add NX cache (#9465) * fix(ci): prevent NX daemon deadlock on Windows CI and add NX cache The NX Daemon was staying alive on Windows self-hosted runners after builds completed, causing the parent process chain to hang indefinitely until the 300-minute job timeout (e.g. run #22040806051 hung 4+ hours). Changes across all 12 workflow files (60 jobs total): - Disable NX Daemon in CI (NX_DAEMON=false) to prevent process hangs - Add .nx/cache to actions/cache for faster rebuilds across all jobs - Update cache keys to include NX prefix (yarn-nx-) for proper isolation - Add clean:false on checkout for Windows self-hosted runners - Add selective cleanup step that preserves .nx/cache on self-hosted Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(ci): stop NX daemon before removing node_modules in cleanup Reorder the selective cleanup step to call `npx nx daemon --stop` before `Remove-Item node_modules` to avoid Windows file-lock failures. The NX daemon may hold locks on files inside node_modules, and after node_modules is deleted, npx cannot resolve the local nx binary. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Rahul R. <rahulrathore576@gmail.com> Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2 parents 6def4e4 + 4dc671d commit 8f0e43f

File tree

65 files changed

+1233
-806
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

65 files changed

+1233
-806
lines changed

.github/workflows/agent-prod.yml

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,12 @@ jobs:
3737
- uses: actions/cache@v4
3838
id: yarn-cache
3939
with:
40-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
41-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
40+
path: |
41+
${{ steps.yarn-cache-dir-path.outputs.dir }}
42+
.nx/cache
43+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
4244
restore-keys: |
45+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
4346
${{ runner.os }}-${{ runner.arch }}-yarn-
4447
4548
- name: Change permissions
@@ -101,6 +104,7 @@ jobs:
101104
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
102105
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
103106
NX_NO_CLOUD: false
107+
NX_DAEMON: false
104108
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_TOKEN }}
105109

106110
release-linux-arm64:
@@ -128,9 +132,12 @@ jobs:
128132
- uses: actions/cache@v4
129133
id: yarn-cache
130134
with:
131-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
132-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
135+
path: |
136+
${{ steps.yarn-cache-dir-path.outputs.dir }}
137+
.nx/cache
138+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
133139
restore-keys: |
140+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
134141
${{ runner.os }}-${{ runner.arch }}-yarn-
135142
136143
- name: Change permissions
@@ -199,6 +206,7 @@ jobs:
199206
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
200207
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
201208
NX_NO_CLOUD: false
209+
NX_DAEMON: false
202210
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_TOKEN }}
203211
SNAPCRAFT_BUILD_ENVIRONMENT: host
204212

@@ -227,9 +235,12 @@ jobs:
227235
- uses: actions/cache@v4
228236
id: yarn-cache
229237
with:
230-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
231-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
238+
path: |
239+
${{ steps.yarn-cache-dir-path.outputs.dir }}
240+
.nx/cache
241+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
232242
restore-keys: |
243+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
233244
${{ runner.os }}-${{ runner.arch }}-yarn-
234245
235246
- name: Fix node-gyp and Python
@@ -287,6 +298,7 @@ jobs:
287298
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
288299
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
289300
NX_NO_CLOUD: false
301+
NX_DAEMON: false
290302
APPLE_ID: ${{ secrets.APPLE_ID }}
291303
APPLE_ID_APP_PASSWORD: ${{ secrets.APPLE_ID_APP_PASSWORD }}
292304
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
@@ -307,6 +319,18 @@ jobs:
307319
steps:
308320
- name: Check out Git repository
309321
uses: actions/checkout@v4
322+
with:
323+
clean: false
324+
325+
- name: Selective cleanup (preserve .nx/cache)
326+
shell: powershell
327+
run: |
328+
# Stop NX daemon first to release file locks before cleanup
329+
npx nx daemon --stop 2>$null
330+
# Remove build artifacts but keep NX cache for faster rebuilds
331+
if (Test-Path "dist") { Remove-Item -Recurse -Force "dist" }
332+
if (Test-Path "node_modules") { Remove-Item -Recurse -Force "node_modules" }
333+
exit 0
310334
311335
- name: Install Node.js, NPM and Yarn
312336
uses: actions/setup-node@v6
@@ -321,9 +345,12 @@ jobs:
321345
- uses: actions/cache@v4
322346
id: yarn-cache
323347
with:
324-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
325-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
348+
path: |
349+
${{ steps.yarn-cache-dir-path.outputs.dir }}
350+
.nx/cache
351+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
326352
restore-keys: |
353+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
327354
${{ runner.os }}-${{ runner.arch }}-yarn-
328355
329356
- name: Install Visual Studio 2022 Build Tools (VCTools)
@@ -424,6 +451,7 @@ jobs:
424451
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
425452
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
426453
NX_NO_CLOUD: false
454+
NX_DAEMON: false
427455

428456
release-windows-arm64:
429457
runs-on: ${{ matrix.os }}
@@ -451,9 +479,12 @@ jobs:
451479
- uses: actions/cache@v4
452480
id: yarn-cache
453481
with:
454-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
455-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
482+
path: |
483+
${{ steps.yarn-cache-dir-path.outputs.dir }}
484+
.nx/cache
485+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
456486
restore-keys: |
487+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
457488
${{ runner.os }}-${{ runner.arch }}-yarn-
458489
459490
- name: Install Visual Studio 2022 Build Tools (VCTools with ARM64)
@@ -562,3 +593,4 @@ jobs:
562593
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
563594
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
564595
NX_NO_CLOUD: false
596+
NX_DAEMON: false

.github/workflows/agent-stage.yml

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,12 @@ jobs:
3737
- uses: actions/cache@v4
3838
id: yarn-cache
3939
with:
40-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
41-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
40+
path: |
41+
${{ steps.yarn-cache-dir-path.outputs.dir }}
42+
.nx/cache
43+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
4244
restore-keys: |
45+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
4346
${{ runner.os }}-${{ runner.arch }}-yarn-
4447
4548
- name: Change permissions
@@ -101,6 +104,7 @@ jobs:
101104
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
102105
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
103106
NX_NO_CLOUD: false
107+
NX_DAEMON: false
104108
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_TOKEN }}
105109

106110
release-linux-arm64:
@@ -128,9 +132,12 @@ jobs:
128132
- uses: actions/cache@v4
129133
id: yarn-cache
130134
with:
131-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
132-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
135+
path: |
136+
${{ steps.yarn-cache-dir-path.outputs.dir }}
137+
.nx/cache
138+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
133139
restore-keys: |
140+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
134141
${{ runner.os }}-${{ runner.arch }}-yarn-
135142
136143
- name: Change permissions
@@ -199,6 +206,7 @@ jobs:
199206
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
200207
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
201208
NX_NO_CLOUD: false
209+
NX_DAEMON: false
202210
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_TOKEN }}
203211
SNAPCRAFT_BUILD_ENVIRONMENT: host
204212

@@ -227,9 +235,12 @@ jobs:
227235
- uses: actions/cache@v4
228236
id: yarn-cache
229237
with:
230-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
231-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
238+
path: |
239+
${{ steps.yarn-cache-dir-path.outputs.dir }}
240+
.nx/cache
241+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
232242
restore-keys: |
243+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
233244
${{ runner.os }}-${{ runner.arch }}-yarn-
234245
235246
- name: Fix node-gyp and Python
@@ -287,6 +298,7 @@ jobs:
287298
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
288299
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
289300
NX_NO_CLOUD: false
301+
NX_DAEMON: false
290302
APPLE_ID: ${{ secrets.APPLE_ID }}
291303
APPLE_ID_APP_PASSWORD: ${{ secrets.APPLE_ID_APP_PASSWORD }}
292304
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
@@ -307,6 +319,18 @@ jobs:
307319
steps:
308320
- name: Check out Git repository
309321
uses: actions/checkout@v4
322+
with:
323+
clean: false
324+
325+
- name: Selective cleanup (preserve .nx/cache)
326+
shell: powershell
327+
run: |
328+
# Stop NX daemon first to release file locks before cleanup
329+
npx nx daemon --stop 2>$null
330+
# Remove build artifacts but keep NX cache for faster rebuilds
331+
if (Test-Path "dist") { Remove-Item -Recurse -Force "dist" }
332+
if (Test-Path "node_modules") { Remove-Item -Recurse -Force "node_modules" }
333+
exit 0
310334
311335
- name: Install Node.js, NPM and Yarn
312336
uses: actions/setup-node@v6
@@ -321,9 +345,12 @@ jobs:
321345
- uses: actions/cache@v4
322346
id: yarn-cache
323347
with:
324-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
325-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
348+
path: |
349+
${{ steps.yarn-cache-dir-path.outputs.dir }}
350+
.nx/cache
351+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
326352
restore-keys: |
353+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
327354
${{ runner.os }}-${{ runner.arch }}-yarn-
328355
329356
- name: Install Visual Studio 2022 Build Tools (VCTools)
@@ -424,6 +451,7 @@ jobs:
424451
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
425452
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
426453
NX_NO_CLOUD: false
454+
NX_DAEMON: false
427455

428456
release-windows-arm64:
429457
runs-on: ${{ matrix.os }}
@@ -451,9 +479,12 @@ jobs:
451479
- uses: actions/cache@v4
452480
id: yarn-cache
453481
with:
454-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
455-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
482+
path: |
483+
${{ steps.yarn-cache-dir-path.outputs.dir }}
484+
.nx/cache
485+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
456486
restore-keys: |
487+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
457488
${{ runner.os }}-${{ runner.arch }}-yarn-
458489
459490
- name: Install Visual Studio 2022 Build Tools (VCTools with ARM64)
@@ -562,3 +593,4 @@ jobs:
562593
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
563594
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
564595
NX_NO_CLOUD: false
596+
NX_DAEMON: false

.github/workflows/desktop-app-prod.yml

Lines changed: 42 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,12 @@ jobs:
3737
- uses: actions/cache@v4
3838
id: yarn-cache
3939
with:
40-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
41-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
40+
path: |
41+
${{ steps.yarn-cache-dir-path.outputs.dir }}
42+
.nx/cache
43+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
4244
restore-keys: |
45+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
4346
${{ runner.os }}-${{ runner.arch }}-yarn-
4447
4548
- name: Change permissions
@@ -101,6 +104,7 @@ jobs:
101104
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
102105
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
103106
NX_NO_CLOUD: false
107+
NX_DAEMON: false
104108
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_TOKEN }}
105109

106110
release-linux-arm64:
@@ -128,9 +132,12 @@ jobs:
128132
- uses: actions/cache@v4
129133
id: yarn-cache
130134
with:
131-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
132-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
135+
path: |
136+
${{ steps.yarn-cache-dir-path.outputs.dir }}
137+
.nx/cache
138+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
133139
restore-keys: |
140+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
134141
${{ runner.os }}-${{ runner.arch }}-yarn-
135142
136143
- name: Change permissions
@@ -199,6 +206,7 @@ jobs:
199206
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
200207
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
201208
NX_NO_CLOUD: false
209+
NX_DAEMON: false
202210
SNAPCRAFT_STORE_CREDENTIALS: ${{ secrets.SNAPCRAFT_TOKEN }}
203211
SNAPCRAFT_BUILD_ENVIRONMENT: host
204212

@@ -227,9 +235,12 @@ jobs:
227235
- uses: actions/cache@v4
228236
id: yarn-cache
229237
with:
230-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
231-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
238+
path: |
239+
${{ steps.yarn-cache-dir-path.outputs.dir }}
240+
.nx/cache
241+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
232242
restore-keys: |
243+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
233244
${{ runner.os }}-${{ runner.arch }}-yarn-
234245
235246
- name: Fix node-gyp and Python
@@ -287,6 +298,7 @@ jobs:
287298
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
288299
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
289300
NX_NO_CLOUD: false
301+
NX_DAEMON: false
290302
APPLE_ID: ${{ secrets.APPLE_ID }}
291303
APPLE_ID_APP_PASSWORD: ${{ secrets.APPLE_ID_APP_PASSWORD }}
292304
APPLE_TEAM_ID: ${{ secrets.APPLE_TEAM_ID }}
@@ -307,6 +319,18 @@ jobs:
307319
steps:
308320
- name: Check out Git repository
309321
uses: actions/checkout@v4
322+
with:
323+
clean: false
324+
325+
- name: Selective cleanup (preserve .nx/cache)
326+
shell: powershell
327+
run: |
328+
# Stop NX daemon first to release file locks before cleanup
329+
npx nx daemon --stop 2>$null
330+
# Remove build artifacts but keep NX cache for faster rebuilds
331+
if (Test-Path "dist") { Remove-Item -Recurse -Force "dist" }
332+
if (Test-Path "node_modules") { Remove-Item -Recurse -Force "node_modules" }
333+
exit 0
310334
311335
- name: Install Node.js, NPM and Yarn
312336
uses: actions/setup-node@v6
@@ -321,9 +345,12 @@ jobs:
321345
- uses: actions/cache@v4
322346
id: yarn-cache
323347
with:
324-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
325-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
348+
path: |
349+
${{ steps.yarn-cache-dir-path.outputs.dir }}
350+
.nx/cache
351+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
326352
restore-keys: |
353+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
327354
${{ runner.os }}-${{ runner.arch }}-yarn-
328355
329356
- name: Install Visual Studio 2022 Build Tools (VCTools)
@@ -424,6 +451,7 @@ jobs:
424451
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
425452
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
426453
NX_NO_CLOUD: false
454+
NX_DAEMON: false
427455

428456
release-windows-arm64:
429457
runs-on: ${{ matrix.os }}
@@ -451,9 +479,12 @@ jobs:
451479
- uses: actions/cache@v4
452480
id: yarn-cache
453481
with:
454-
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
455-
key: ${{ runner.os }}-${{ runner.arch }}-yarn-${{ hashFiles('yarn.lock') }}
482+
path: |
483+
${{ steps.yarn-cache-dir-path.outputs.dir }}
484+
.nx/cache
485+
key: ${{ runner.os }}-${{ runner.arch }}-yarn-nx-${{ hashFiles('yarn.lock') }}
456486
restore-keys: |
487+
${{ runner.os }}-${{ runner.arch }}-yarn-nx-
457488
${{ runner.os }}-${{ runner.arch }}-yarn-
458489
459490
- name: Install Visual Studio 2022 Build Tools (VCTools with ARM64)
@@ -562,3 +593,4 @@ jobs:
562593
DO_SECRET_KEY: ${{ secrets.DO_SECRET_KEY }}
563594
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
564595
NX_NO_CLOUD: false
596+
NX_DAEMON: false

0 commit comments

Comments
 (0)