From 867e217d441ea84234576b5552965d4abf9e615a Mon Sep 17 00:00:00 2001 From: Benoit Seignovert Date: Wed, 14 Feb 2024 15:19:31 +0100 Subject: [PATCH] Add pretty print to options rendering --- render/__main__.py | 26 ++++++++++++++++---------- render/templates/options.html | 6 +++--- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/render/__main__.py b/render/__main__.py index 3de4708..887c01c 100644 --- a/render/__main__.py +++ b/render/__main__.py @@ -3,21 +3,27 @@ Usage: `python -m render` """ -from pathlib import Path from traceback import format_exc -import glicid_spawner from flask import Flask, render_template, request -from glicid_spawner.form import options_attrs, options_form, options_from_form +from glicid_spawner.form import TEMPLATE_FORM, options_from_form +from glicid_spawner.micromamba import MicromambaEnv +from glicid_spawner.resources import CPU, GPU, RAM from livereload import Server # Monkeypatch -USERNAME = 'john-doe' -glicid_spawner.micromamba.MICROMAMBA_ROOT = ( - Path(__file__).parent / '..' / 'tests' / 'data' / 'micromamba' -).resolve() -glicid_spawner.micromamba.GLOBAL_USER = 'global' -glicid_spawner.micromamba.GLOBAL_EXCLUDED = 'qux' +OPTIONS = { + 'username': 'john-doe', + 'python_envs': [ + MicromambaEnv('USER', 'foo', '/john-doe/envs/foo'), + MicromambaEnv('USER', 'bar', '/john-doe/envs/bar'), + MicromambaEnv('GLOBAL', 'baz', '/global/envs/baz'), + ], + 'cpu_available': CPU, + 'ram_available': RAM, + 'gpu_available': GPU, +} + # Flask app app = Flask(__name__) @@ -28,7 +34,7 @@ app.debug = True def home(): """Form spawner home page.""" return render_template( - 'form.html', spawner_options_form=options_form(USERNAME), options=options_attrs(USERNAME) + 'form.html', spawner_options_form=TEMPLATE_FORM.render(**OPTIONS), options=OPTIONS ) diff --git a/render/templates/options.html b/render/templates/options.html index 13d0572..f9d62f3 100644 --- a/render/templates/options.html +++ b/render/templates/options.html @@ -1,14 +1,14 @@

📝 Submitted form data

-
{{formdata}}
+
{{formdata|pprint}}
{% if options %}

✅ Parsed spawner options

-
{{options}}
+
{{options|pprint}}
{% else %}

⛔️ Spawner options error

-
{{err}}
+
{{err|pprint}}
{% endif %}