| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 | 
"""Website for Craftbroec RR stuff"""import osimport hashlibimport hmacimport subprocessfrom flask import jsonify, abort, request, send_from_directoryfrom app import appfrom app.util import job@app.route('/')def index():    """Show index page"""    return send_from_directory('static', 'index.html')@app.route("/tutorial")@app.route("/tutorial/book")def tutorial_book():    """Display book"""    return send_from_directory('static', 'tutorial/book.pdf')@app.route("/tutorial/article")def tutorial_article():    """Display book"""    return send_from_directory('static', 'tutorial/article.pdf')@app.route("/tutorial/dist")def tutorial_dist():    """Display book"""    return send_from_directory('static', 'tutorial/dist.pdf')@app.route("/tutorial.png")def tutorial_dist_png():    """Display book"""    return send_from_directory('static', 'tutorial/dist.png')@app.route('/typeset', methods=['GET', 'POST'])def typeset():    """Add job to schedeuler"""    job.add()    return jsonify(True)@app.route('/deploy', methods=['POST'])def deploy():    """Run deploy script"""    secret = os.environ["WEBHOOK_KEY"].encode('utf-8')    digest = hmac.new(secret, request.data, hashlib.sha256).hexdigest()    signature = request.headers['X-Gogs-Signature']    if len(signature) < 2 or not hmac.compare_digest(signature, digest):        abort(400, 'Invalid signature')    subprocess.call(['git', 'pull'])    subprocess.call(['pipenv', 'sync'])    subprocess.call(['touch', 'flask.wsgi'])    return jsonify(True)
 |