Example #1
0
def create_machine():
    if request.method == 'GET':
        images = Image.list_all()
        return render_template('create_machine.html', images=images)

    name = request.form['name']
    image_name = request.form['image_name']
    if not (image_name and name):
        abort(400)

    image = Image.get_by_name(image_name)
    if not image:
        abort(400)

    machine = Machine.create(g.user, name)
    callback_url = url_for('machine.callback', machine_id=machine.id, _external=True)
    try:
        if DEPLOY_MODE == 'public':
            eru.deploy_public(PODNAME, image.appname, 1, image.version,
                              image.entrypoint, image.env, [image.network],
                              raw=True, image=image.addr,
                              callback_url=callback_url)
        elif DEPLOY_MODE == 'private':
            eru.deploy_private(PODNAME, image.appname, 1, 1, image.version,
                              image.entrypoint, image.env, [image.network],
                              raw=True, image=image.addr,
                              callback_url=callback_url)
    except EruException:
        pass
    return redirect(url_for('machine.index'))
Example #2
0
def create_machine():
    if request.method == 'GET':
        images = Image.list_all()
        return render_template('create_machine.html', images=images)

    name = request.form['name']
    image_name = request.form['image_name']
    if not (image_name and name):
        abort(400)

    image = Image.get_by_name(image_name)
    if not image:
        abort(400)

    machine = Machine.create(g.user, name)
    callback_url = url_for('machine.callback', machine_id=machine.id, _external=True)
    try:
        if DEPLOY_MODE == 'public':
            eru.deploy_public(PODNAME, image.appname, 1, image.version,
                              image.entrypoint, image.env, [image.network],
                              raw=True, image=image.addr,
                              callback_url=callback_url)
        elif DEPLOY_MODE == 'private':
            eru.deploy_private(PODNAME, image.appname, 1, 1, image.version,
                              image.entrypoint, image.env, [image.network],
                              raw=True, image=image.addr,
                              callback_url=callback_url)
    except EruException:
        pass
    return redirect(url_for('machine.index'))