views.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:oadoi 作者: Impactstory 项目源码 文件源码
def restart_endpoint():
    logger.info(u"in restart endpoint")
    allowed_to_reboot = False
    for (k, v) in request.args.iteritems():
        if v==os.getenv("HEROKU_API_KEY"):
            allowed_to_reboot = True
    if not allowed_to_reboot:
        logger.info(u"not allowed to reboot in restart_endpoint")
        return jsonify({
            "response": "not allowed to reboot, didn't send right heroku api key"
        })

    payload_json = json.loads(request.form["payload"])

    dynos_to_restart = set()
    for event in payload_json["events"]:
        logger.info(u"dyno {}".format(event["program"]))
        dyno_name = event["program"].split("/")[1]
        dynos_to_restart.add(dyno_name)

    # just restart each dyno once
    logger.info(u"restarting dynos: {}".format(dynos_to_restart))
    for dyno_name in dynos_to_restart:
        restart_dyno("oadoi", dyno_name)

    return jsonify({
        "response": "restarted dynos: {}".format(dynos_to_restart)
    })
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号