123456789101112131415161718192021222324252627282930313233343536 |
- from flask import Flask, request, jsonify
- app = Flask(__name__)
- @app.route('/webhook', methods=['POST'])
- def handle_webhook():
- if request.method != 'POST':
- return 'Invalid request method', 405
-
- try:
- payload = request.get_json()
- if not payload:
- return 'Invalid JSON payload', 400
- repo = payload.get('repository', {}).get('name')
- pusher = payload.get('pusher', {}).get('name')
- before = payload.get('before')
- after = payload.get('after')
- print(f"Webhook received from repo: {repo} by {pusher}")
- print(f"Commit: {before} -> {after}")
- return jsonify({'status': 'success'}), 200
- except Exception as e:
- print(f"Error: {e}")
- return 'Internal server error', 500
- @app.before_request
- def log_request():
- print(f"Incoming request: {request.method} {request.url}")
- if __name__ == '__main__':
- app.run(host='0.0.0.0', port=4000)
|