Commit Graph

126 Commits

Author SHA1 Message Date
Régis Behmo d4a429bcc5 Fix parsing of weird characters in configuration parameters 2019-07-11 10:31:23 +08:00
Régis Behmo 1e995aaf1a More robust plugin/env config checking 2019-07-10 16:20:43 +08:00
Régis Behmo e33b61fd04 Improve command line yaml value deserialization 2019-07-10 15:22:12 +08:00
Régis Behmo 11e735f4e5 Migrate notes to a dedicated plugin 2019-07-04 09:31:12 +08:00
Régis Behmo 07a0323d8e Move Xqueue to a dedicated plugin
This gives us the opportunity to develop new hooks: build-image and
remote-image.
2019-07-04 09:31:12 +08:00
Régis Behmo 1f69e67b9f Fix missing password values from generated configuration
Passwords were not being stored to config.yml during the first
quickstart.
2019-06-24 12:36:19 +02:00
Régis Behmo 84f2060d33 Working Kubernetes quickstart
The k8s quickstart command is now functional, with suppport for https,
xqueue, notes and minio. There are still a few bugs to get rid of,
though.
2019-06-17 22:38:55 +02:00
Régis Behmo 9bd6197cd1 Fix a few minor plugin-related TODOs 2019-06-07 22:49:45 +02:00
Régis Behmo a0146de611 Minor formatting and fix tests 2019-06-07 22:49:45 +02:00
Régis Behmo 6a68c4cc20 Progress on the plugins/k8s front
This commit introduces many changes:
- a fully functional minio plugin for local installation
- an almost-functional native k8s deployment
- a new way to process configuration, better suited to plugins

There are still many things to do:
- get rid of all the TODOs
- get a fully functional minio plugin for k8s
- add documentation for pluginso
- ...
2019-06-07 22:49:45 +02:00
Régis Behmo f5c225231f Move config logic to dedicated non-command module 2019-06-07 22:49:45 +02:00
Régis Behmo 334f3e720e Towards a stable Kubernetes integration
Missing features:
- https certificates
- xqueue
- lms/cms workers

Moreover, we scalability issues due to the uploaded file storage in the
lms/cms. To address this issue we need to develop the MinIO plugin so
that it becomes compatible with Open edX.

Close #126 #179 #187
2019-06-07 22:49:45 +02:00
Régis Behmo 3b108d21de 🔌 Introduce a plugin system for tutor
This adds the basic feratures that we need for a working plugin system,
but there are still many TODOs in the codebase.
2019-06-07 22:49:45 +02:00
Régis Behmo 58d2af30a0 Minor formatting 2019-05-29 11:20:37 +02:00
Régis Behmo ebcb08b5eb Fix save/render for single files 2019-05-29 10:31:53 +02:00
Régis Behmo 0093198864 Refactor scripts running
Instead of passing a `run_func` argument, which is clumsy, we create a
BaseRunner from which local and k8s runners can inherit.
2019-05-29 09:53:54 +02:00
Régis Behmo 65dce18908 Add TUTOR_VERSION to template variables 2019-05-29 09:53:54 +02:00
Régis Behmo 0199a1e916 Add convenient fmt.echo_* functions 2019-05-29 09:53:54 +02:00
Régis Behmo 407659ff06 Major refactoring of config module
Configuration loading was overly complex. Here, we simplify it
drastically with reasonable defaults. Hacky additional variables are
unncessary now that we use custom jinja2 filters.
2019-05-29 09:53:54 +02:00
Régis Behmo 754da2f06f Move command modules to dedicated directory 2019-05-29 09:53:54 +02:00
Régis Behmo 09d7b49628 Minor scripts.py refactoring/renaming 2019-05-29 09:53:54 +02:00
Régis Behmo 68d23c5dd5 Env module refactoring
Better naming and tests.
2019-05-29 09:53:54 +02:00
Régis Behmo a97453135e Blackify tests, too 2019-05-29 09:53:54 +02:00
Régis Behmo 92c9132180 Move all yaml-related code to dedicated module 2019-03-24 14:34:50 -07:00
Régis Behmo 288dc12796 Fix yaml parsing of "null" 2019-03-24 14:27:00 -07:00
Régis Behmo 6889f6fa90 Add unit tests! yay!
Now, that was seriously missing.
2019-03-23 16:16:44 -07:00