23 lines
637 B
Python
23 lines
637 B
Python
from flask import Flask, request, jsonify
|
|
import os
|
|
import subprocess
|
|
|
|
app = Flask(__name__)
|
|
|
|
path="/home/app"
|
|
|
|
@app.route('/githook', methods=['POST'])
|
|
def githook():
|
|
try:
|
|
subprocess.run(['supervisorctl', 'stop', 'app'], check=True)
|
|
subprocess.run(['git', 'pull'], check=True, cwd=path)
|
|
subprocess.run(['pip', 'install', '-r', 'requirements.txt'], check=True, cwd=path)
|
|
subprocess.run(['supervisorctl', 'start', 'app'], check=True)
|
|
return "", 200
|
|
except Exception as e:
|
|
return jsonify({'error': str(e)}), 500
|
|
|
|
if __name__ == '__main__':
|
|
app.run(host='0.0.0.0', port=5000)
|
|
|