frontend_nyla/.github/workflows/int_poweron-nyla-int.yml
Workflow config file is invalid. Please check your config file: yaml: line 41: could not find expected ':'

89 lines
2.2 KiB
YAML

name: Deploy React App to Azure Web App
on:
push:
branches:
- int # oder dein Branch
workflow_dispatch: # Ermöglicht manuelles Triggern
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout Code
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: '18'
cache: 'npm' # Aktiviert Caching für schnellere Builds
- name: Install dependencies
run: |
npm ci
npm install express
- name: Build React app
run: npm run build
- name: Prepare deployment package
run: |
# Create deployment package with build files and necessary configs
mkdir -p deploy
# Copy all build files
cp -r dist/* deploy/
# 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
with:
app-name: 'poweron-nyla'
publish-profile: ${{ secrets.AZUREAPPSERVICE_PUBLISHPROFILE_D6C9359A57C5448A8C0BFA2D4C4B2068 }}
package: ./deploy