add logging

This commit is contained in:
fabolous005 2025-12-29 04:32:21 +01:00
parent 7c378ec75a
commit 57d40097c4

16
main.py
View File

@ -1,10 +1,20 @@
import os
import logging
import subprocess
from flask import Flask, request, jsonify
app = Flask(__name__)
WEBBUMP_DIR = "/etc/webbump"
LOG_FILE = "/var/log/webbump.log"
logging.basicConfig(
filename=LOG_FILE,
level=logging.INFO,
format="%(asctime)s [%(levelname)s] %(message)s",
)
logger = logging.getLogger(__name__)
@app.route('/status', methods=['GET'])
def status():
@ -15,13 +25,13 @@ def status():
def gitea_webhook():
data = request.json
if not data:
print("Received webhook without JSON")
logger.error("Received webhook without JSON")
return jsonify({"error": "Invalid JSON"}), 400
# Repository name
repo_name = data.get("repository", {}).get("name")
if not repo_name:
print("Could not get Repository name from JSON")
logger.error("Could not get Repository name from JSON")
return jsonify({"error": "Repository name not found"}), 400
# Determine event type from header
@ -45,7 +55,7 @@ def gitea_webhook():
try:
subprocess.run([script_path, *args], check=True)
except subprocess.CalledProcessError as e:
print(repo_name + " " + script_name + " script failed with exit code: " + e)
logger.error(repo_name + " " + script_name + " script failed with exit code: " + e)
return jsonify({"error": f"Script failed: {e}"}), 500
return jsonify({"message": f"Executed {script_path}"}), 200