diff --git a/oshipka.sh b/oshipka.sh index 61edf0d..24f13db 100755 --- a/oshipka.sh +++ b/oshipka.sh @@ -21,6 +21,8 @@ Usage $0 [ bootstrap | model | db_migrate | db_upgrade | db_populate | db_recrea db_recreate Delete the database, recreate to latest migration and populate db_purge_recreate Same as db_recreate but also purge the migrations + translate Translations subcommand + worker Start worker web Start webapp @@ -33,6 +35,36 @@ Usage $0 [ bootstrap | model | db_migrate | db_upgrade | db_populate | db_recrea cert [DOMAIN] Install certificate " +#!/usr/bin/env bash + +HELP_TRANSLATION=" +USAGE ./manage.sh translate [extract|gen {lang}|compile|update] + + extract Extract strings in files as defined in translations/babel.cfg + gen {lang} Init translations for {lang} + compile Compile all translations + update Use after a new extract - it may mark strings as fuzzy. +" + +command_translate() { + TRANSLATE_COMMAND=$1 + shift + case "$TRANSLATE_COMMAND" in + extract) pybabel extract -F translations/babel.cfg -o translations/messages.pot . + ;; + gen) pybabel init -i translations/messages.pot -d translations -l "$@" + ;; + compile) pybabel compile -d translations + ;; + update) pybabel update -i translations/messages.pot -d translations + ;; + *) >&2 echo -e "${HELP_TRANSLATION}" + ;; + esac + return $? +} + + worker () { source venv/bin/activate python worker.py @@ -287,6 +319,8 @@ command_main() { ;; db_purge_recreate) db_purge_recreate "$@" ;; + translate) command_translate "$@" + ;; init) init "$@" ;; download_sensitive) download_sensitive "$@" diff --git a/provision/provision_app/app.py b/provision/provision_app/app.py new file mode 100644 index 0000000..78e6982 --- /dev/null +++ b/provision/provision_app/app.py @@ -0,0 +1,24 @@ +import json + +from flask import Flask, render_template, request, jsonify + +app = Flask(__name__) + + +@app.route('/') +def home(): + return render_template("bootstrap.html") + + +@app.route('/config', methods=["post"]) +def post_config(): + config = json.loads(request.form) + + return jsonify( + { + "raw": config, + }) + + +if __name__ == "__main__": + app.run(debug=True, port=4999) diff --git a/provision/provision_app/templates/bootstrap.html b/provision/provision_app/templates/bootstrap.html new file mode 100644 index 0000000..6ccbb9c --- /dev/null +++ b/provision/provision_app/templates/bootstrap.html @@ -0,0 +1,98 @@ +