@@ -185,7 +185,48 @@ jobs:
185185 export ORACLE_EXTERNAL_HOSTNAME=${{ secrets.ORACLE_VM_IP }}
186186 export DOCKER_REGISTRY=${{ secrets.OCI_REGISTRY }}
187187 docker-compose pull || exit 1
188- docker-compose up -d || exit 1
188+ docker-compose up -d || exit 1 server {
189+ listen 443 ssl;
190+ server_name _;
191+
192+ ssl_certificate /etc/nginx/ssl/nginx.crt;
193+ ssl_certificate_key /etc/nginx/ssl/nginx.key;
194+
195+ # Enable detailed logging
196+ access_log /var/log/nginx/music-analytics-access.log;
197+ error_log /var/log/nginx/music-analytics-error.log;
198+
199+ location / {
200+ # CORS headers inside location block
201+ add_header 'Access-Control-Allow-Origin' 'https://musicanalytics.netlify.app' always;
202+ add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE' always;
203+ add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization' always;
204+
205+ # Proxy settings
206+ proxy_pass http://localhost:8080;
207+ proxy_set_header Host $host;
208+ proxy_set_header X-Real-IP $remote_addr;
209+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
210+ proxy_set_header X-Forwarded-Proto $scheme;
211+
212+ # Handle OPTIONS requests
213+ if ($request_method = 'OPTIONS') {
214+ add_header 'Access-Control-Allow-Origin' 'https://musicanalytics.netlify.app' always;
215+ add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS, PUT, DELETE' always;
216+ add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization' always;
217+ add_header 'Access-Control-Max-Age' 1728000;
218+ add_header 'Content-Type' 'text/plain charset=UTF-8';
219+ add_header 'Content-Length' 0;
220+ return 204;
221+ }
222+ }
223+ }
224+
225+ server {
226+ listen 80;
227+ server_name _;
228+ return 301 https://$host$request_uri;
229+ }
189230 docker logout ${{ secrets.OCI_REGISTRY }}
190231 echo "Deployment completed successfully"
191232 EOF
0 commit comments