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'))
def create_image(): if request.method == 'GET': images = Image.list_all() return render_template('create_image.html', images=images) name = request.form['name'] addr = request.form['addr'] desc = request.form['desc'] appname = request.form['appname'] version = request.form['version'] entrypoint = request.form['entrypoint'] env = request.form['env'] network = request.form['network'] Image.create(name, addr, appname, version, entrypoint, env, network, desc) return redirect(url_for('machine.create_image'))