From 1a8aabbfdca6c5c63e78ecf2a09a1145c7824d8d Mon Sep 17 00:00:00 2001 From: idittrich-valueon Date: Wed, 4 Jun 2025 12:24:00 +0200 Subject: [PATCH] Fix Azure deployment - improve server.js creation and add debugging --- .github/workflows/int_poweron-nyla-int.yml | 69 +++++++++++++++------- 1 file changed, 48 insertions(+), 21 deletions(-) diff --git a/.github/workflows/int_poweron-nyla-int.yml b/.github/workflows/int_poweron-nyla-int.yml index 2be83d8..87b4f6a 100644 --- a/.github/workflows/int_poweron-nyla-int.yml +++ b/.github/workflows/int_poweron-nyla-int.yml @@ -31,28 +31,55 @@ jobs: - name: Prepare deployment package run: | # Create deployment package with build files and necessary configs - mkdir deploy + mkdir -p deploy + + # Copy all build files cp -r dist/* deploy/ - # Create a simple server.js for serving the app - echo "const express = require('express');" > deploy/server.js - echo "const path = require('path');" >> deploy/server.js - echo "const app = express();" >> deploy/server.js - echo "app.use(express.static(path.join(__dirname)));" >> deploy/server.js - echo "app.get('/*', function(req, res) { res.sendFile(path.join(__dirname, 'index.html')); });" >> deploy/server.js - echo "const port = process.env.PORT || 8080;" >> deploy/server.js - echo "app.listen(port, () => console.log('Server running on port', port));" >> deploy/server.js - # Create a new package.json for deployment - echo '{ - "name": "frontend", - "version": "1.0.0", - "private": true, - "scripts": { - "start": "node server.js" - }, - "dependencies": { - "express": "^4.18.2" - } - }' > deploy/package.json + + # Create server.js with proper content + cat > deploy/server.js << 'EOF' +const express = require('express'); +const path = require('path'); +const app = express(); + +// Serve static files +app.use(express.static(path.join(__dirname))); + +// Handle React Router +app.get('/*', function(req, res) { + res.sendFile(path.join(__dirname, 'index.html')); +}); + +// Use environment PORT or default to 8080 +const port = process.env.PORT || 8080; + +app.listen(port, '0.0.0.0', () => { + console.log(`Server running on port ${port}`); +}); +EOF + + # Create package.json for deployment + cat > deploy/package.json << 'EOF' +{ + "name": "frontend", + "version": "1.0.0", + "private": true, + "scripts": { + "start": "node server.js" + }, + "dependencies": { + "express": "^4.18.2" + } +} +EOF + + # Verify files were created + echo "=== Deployment package contents ===" + ls -la deploy/ + echo "=== server.js content ===" + cat deploy/server.js + echo "=== package.json content ===" + cat deploy/package.json - name: 'Deploy to Azure Web App' uses: azure/webapps-deploy@v3