#!/usr/bin/env python3
from http.server import BaseHTTPRequestHandler, HTTPServer
import subprocess
import os
import sys

# Секретный ключ (соответствует тому, что в вебхуке)
SECRET = "NY9B9VLifDC9ehZ"

class WebhookHandler(BaseHTTPRequestHandler):
    def do_POST(self):
        # Проверяем секрет в URL
        if f"secret={SECRET}" in self.path:
            self.send_response(200)
            self.end_headers()
            self.wfile.write(b"Deployment triggered successfully\n")
            
            # Запускаем скрипт обновления в фоне
            print(">>> Received webhook, starting deployment...")
            subprocess.Popen(["/bin/bash", "/var/www/radionica3d/server_update.sh"])
        else:
            self.send_response(403)
            self.end_headers()
            self.wfile.write(b"Forbidden: Invalid secret\n")

if __name__ == "__main__":
    print("Deploy listener starting on port 9000...")
    httpd = HTTPServer(('127.0.0.1', 9000), WebhookHandler)
    httpd.serve_forever()
