from flask import Flask, request, abort import subprocess import os SECRET = os.environ.get("WEBHOOK_SECRET") REPOSITORY = os.environ.get("GATEWAY_REPOSITORY_LOCATION") app = Flask(__name__) @app.route("/reload", methods=["POST"]) def reload(): token = request.headers.get("X-Webhook-Token") if token != SECRET: abort(403) subprocess.run( ["git", "-C", REPOSITORY, "pull"], check=True ) return "ok\n" if __name__ == "__main__": app.run()