test: woodpecker

This commit is contained in:
ISA
2025-09-05 07:28:44 +02:00
parent bd683d021a
commit 941b914fa9
7 changed files with 29 additions and 14 deletions

View File

@@ -6,6 +6,6 @@ NEXT_PUBLIC_USE_MOCK_BACKEND_LOOP_START=false
NEXT_PUBLIC_EXPORT_STATIC=false
NEXT_PUBLIC_USE_CGI=false
# App-Versionsnummer
NEXT_PUBLIC_APP_VERSION=1.6.842
NEXT_PUBLIC_APP_VERSION=1.6.843
NEXT_PUBLIC_CPL_MODE=json # json (Entwicklungsumgebung) oder jsSimulatedProd (CPL ->CGI-Interface-Simulator) oder production (CPL-> CGI-Interface Platzhalter)

View File

@@ -5,5 +5,5 @@ NEXT_PUBLIC_CPL_API_PATH=/CPL
NEXT_PUBLIC_EXPORT_STATIC=true
NEXT_PUBLIC_USE_CGI=true
# App-Versionsnummer
NEXT_PUBLIC_APP_VERSION=1.6.842
NEXT_PUBLIC_APP_VERSION=1.6.843
NEXT_PUBLIC_CPL_MODE=production

View File

@@ -28,11 +28,18 @@ steps:
image: mcr.microsoft.com/playwright:v1.54.2-jammy
environment:
CI: "true"
NODE_ENV: "development"
NODE_ENV: "production"
NEXT_TELEMETRY_DISABLED: "1"
PORT: "3000"
commands:
- node -v && npm -v
- npm ci
- npm run build
# Start local static simulator in background
- node scripts/local-cpl-sim.mjs &
# Wait until simulator responds on port 3000 (no curl dependency)
- |
node -e "const http=require('http');let n=120;function ping(){http.get('http://localhost:3000',res=>{console.log('Server is up');process.exit(0)}).on('error',()=>{if(n--<=0){console.error('Server did not start');process.exit(1)}setTimeout(ping,1000)});}ping();"
- npx playwright test --project=chromium
- name: notify-success
image: alpine/curl:latest

View File

@@ -1,3 +1,8 @@
## [1.6.843] 2025-09-05
- feat: local-cpl-sim.mjs port 3000
---
## [1.6.842] 2025-09-05
- refactor: retime all messages and charts data

4
package-lock.json generated
View File

@@ -1,12 +1,12 @@
{
"name": "cpl-v4",
"version": "1.6.842",
"version": "1.6.843",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "cpl-v4",
"version": "1.6.842",
"version": "1.6.843",
"dependencies": {
"@fontsource/roboto": "^5.1.0",
"@headlessui/react": "^2.2.4",

View File

@@ -1,12 +1,12 @@
{
"name": "cpl-v4",
"version": "1.6.842",
"version": "1.6.843",
"private": true,
"scripts": {
"dev": "next dev -p 3000",
"clean": "rimraf .next out",
"build": "npm run clean && cross-env EXPORT_STATIC=true next build",
"postbuild": "copy LICENSE_ICONIFY.txt out\\LICENSE_ICONIFY.txt",
"postbuild": "node -e \"const fs=require('fs');const path=require('path');fs.mkdirSync('out',{recursive:true});fs.copyFileSync('LICENSE_ICONIFY.txt', path.join('out','LICENSE_ICONIFY.txt'))\"",
"serve:sim": "node ./scripts/local-cpl-sim.mjs",
"start": "next start",
"typecheck": "tsc --noEmit",

View File

@@ -31,11 +31,14 @@ export default defineConfig({
},
projects: [{ name: "chromium", use: { ...devices["Desktop Chrome"] } }],
webServer: {
command: "npm run dev -- -p 3000", // wichtig: "--" damit npm das "-p" an next weiterreicht
url: "http://localhost:3000",
reuseExistingServer: true,
timeout: 120_000,
},
// In CI starten wir den statischen Simulator selbst (siehe .woodpecker.yml),
// daher kein automatischer dev-Webserver hier.
webServer: CI
? undefined
: {
command: "npm run dev -- -p 3000", // wichtig: "--" damit npm das "-p" an next weiterreicht
url: "http://localhost:3000",
reuseExistingServer: true,
timeout: 120_000,
},
});