Ejemplo n.º 1
0
def list_group_pod(group):
    try:
        pods = eru.list_group_pods(group, g.start, g.limit)
    except EruException:
        pods = []
    pod_html = rt('/components/pod_option.html', pods=pods)
    return jsonify({'pod': pod_html})
Ejemplo n.º 2
0
def list_group_pod(group):
    try:
        pods = eru.list_group_pods(group, g.start, g.limit)
    except EruException:
        pods = []
    pod_html = rt('/components/pod_option.html', pods=pods)
    return jsonify({'pod': pod_html})
Ejemplo n.º 3
0
def create():
    if request.method == "GET":
        try:
            networks = eru.list_network(g.start, g.limit)
            groups = eru.list_groups(g.start, g.limit)
            group = groups and groups[0] and groups[0]["name"] or None
            pods = group and eru.list_group_pods(group) or []
        except EruException:
            groups = []
            networks = []
            pods = []
        return rt("/create.html", groups=groups, networks=networks, pods=pods)

    name = request.form.get("name", "")
    if not name:
        flash(u"给cron取个名字吧", "error")
        return redirect(url_for("crontab.create"))

    crontab_kwargs = parse_crontab(request.form.get("cron", ""))
    if not crontab_kwargs:
        flash(u"cron 参数不对", "error")
        return redirect(url_for("crontab.create"))

    props = {key: request.form.get(key, "") for key in property_keys}
    kw = props.copy()
    kw.pop("network_ids", None)
    kw.pop("env", "")
    if not all(kw.values()):
        flash(u"输入参数不对", "error")
        return redirect(url_for("crontab.create"))

    network_ids = request.form.getlist("network_ids") or []
    props["network_ids"] = network_ids
    props["env"] = request.form.get("env", "prod")

    c = Crontab.create(name, crontab_kwargs, props)
    if not c:
        flash(u"创建出错", "error")
        return redirect(url_for("crontab.create"))

    return redirect(url_for("crontab.crontab", crontab_id=c.id))
Ejemplo n.º 4
0
def create():
    if request.method == 'GET':
        try:
            networks = eru.list_network(g.start, g.limit)
            groups = eru.list_groups(g.start, g.limit)
            group = groups and groups[0] and groups[0]['name'] or None
            pods = group and eru.list_group_pods(group) or []
        except EruException:
            groups = []
            networks = []
            pods = []
        return rt('/create.html', groups=groups, networks=networks, pods=pods)

    name = request.form.get('name', '')
    if not name:
        flash(u'给cron取个名字吧', 'error')
        return redirect(url_for('crontab.create'))

    crontab_kwargs = parse_crontab(request.form.get('cron', ''))
    if not crontab_kwargs:
        flash(u'cron 参数不对', 'error')
        return redirect(url_for('crontab.create'))

    props = {key: request.form.get(key, '') for key in property_keys}
    kw = props.copy()
    kw.pop('network_ids', None)
    kw.pop('env', '')
    if not all(kw.values()):
        flash(u'输入参数不对', 'error')
        return redirect(url_for('crontab.create'))

    network_ids = request.form.getlist('network_ids') or []
    props['network_ids'] = network_ids
    props['env'] = request.form.get('env', 'prod')

    c = Crontab.create(name, crontab_kwargs, props)
    if not c:
        flash(u'创建出错', 'error')
        return redirect(url_for('crontab.create'))

    return redirect(url_for('crontab.crontab', crontab_id=c.id))