@@ -42,20 +42,10 @@ jobs:
4242 - name : Checkout
4343 uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
4444
45- # Cache APT packages for faster installs
46- - name : Cache APT packages
47- uses : actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
48- with :
49- path : /var/cache/apt/archives
50- key : ${{ runner.os }}-apt-${{ hashFiles('.github/workflows/copilot-setup-steps.yml') }}
51- restore-keys : |
52- ${{ runner.os }}-apt-
53-
5445 # Setup complete Three.js test environment
5546 - name : Setup Three.js Test Environment (Chrome + Xvfb + Dependencies)
5647 run : |
5748 echo "🔧 Setting up complete Three.js test environment..."
58-
5949 # Install system dependencies for Three.js rendering
6050 sudo apt-get update
6151 sudo apt-get install -y --no-install-recommends \
7161 libx11-xcb1 libxcomposite1 libxdamage1 \
7262 libxfixes3 libxrandr2 libxrender1 \
7363 libxshmfence1 xdg-utils wget libxkbcommon0 xkb-data
74-
7564 # Install Google Chrome Stable for Three.js WebGL support
7665 wget -qO- https://dl.google.com/linux/linux_signing_key.pub | sudo gpg --dearmor -o /usr/share/keyrings/google-chrome.gpg
7766 echo "deb [arch=amd64 signed-by=/usr/share/keyrings/google-chrome.gpg] http://dl.google.com/linux/chrome/deb/ stable main" | sudo tee /etc/apt/sources.list.d/google-chrome.list
@@ -91,47 +80,18 @@ jobs:
9180 XKB_DEFAULT_MODEL : pc105
9281 XKB_DEFAULT_LAYOUT : us
9382
94- # Start Xvfb early for Playwright/Chrome
95- - name : Start Xvfb
96- run : |
97- echo "🖥️ Starting Xvfb virtual display..."
98- Xvfb :99 -screen 0 1920x1080x24 &
99- sleep 2
100- echo "DISPLAY=:99" >> $GITHUB_ENV
101- echo "✅ Xvfb started on display :99"
102-
10383 # JavaScript/TypeScript setup
10484 - name : Setup Node.js
10585 uses : actions/setup-node@53b83947a5a98c8d113130e565377fae1a50d02f # v6.3.0
10686 with :
10787 node-version : " 24"
10888 cache : " npm"
10989
110- - name : Cache dependencies
111- uses : actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
112- with :
113- path : ~/.npm
114- key : ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
115- restore-keys : |
116- ${{ runner.os }}-node-
117-
11890 - name : Install dependencies
11991 run : npm ci
12092 env :
12193 NODE_OPTIONS : " --max-old-space-size=4096"
12294
123- # Cache global npm packages for MCP servers
124- - name : Cache global npm packages
125- uses : actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
126- with :
127- path : |
128- ~/.npm
129- /usr/local/lib/node_modules
130- /usr/local/bin/mcp-server-*
131- key : ${{ runner.os }}-mcp-servers-v4-${{ hashFiles('.github/copilot-mcp.json') }}
132- restore-keys : |
133- ${{ runner.os }}-mcp-servers-v4-
134-
13595 # Pre-install MCP server packages globally
13696 - name : Install MCP server packages globally
13797 run : |
@@ -177,14 +137,6 @@ jobs:
177137 DISPLAY : " :99"
178138 PLAYWRIGHT_BROWSERS_PATH : " 0"
179139
180- - name : Cache Cypress binary
181- uses : actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
182- with :
183- path : ~/.cache/Cypress
184- key : cypress-${{ runner.os }}-${{ hashFiles('**/package-lock.json') }}
185- restore-keys : |
186- cypress-${{ runner.os }}-
187-
188140 - name : Verify Cypress for Three.js Testing
189141 run : |
190142 npx cypress verify
0 commit comments