6
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-12-13 14:43:03 +00:00
Commit Graph

802 Commits

Author SHA1 Message Date
Régis Behmo
ddbcedab5a Fix pyyaml deprecated warning
We were getting the following warning with the latest version of pyyaml:

    YAMLLoadWarning: calling yaml.load() without Loader=... is
    deprecated, as the default Loader is unsafe. Please read
    https://msg.pyyaml.org/load for full details.
2019-03-24 14:43:17 -07: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
ca8eda839d Fix CI unit tests on Mac OS
For some reason, the "nosetests" binary is not available on Mac OS in
Travis-ci. This is what we get when we try to install nose:

Requirement already satisfied: nose==1.3.7 in
/usr/local/Cellar/numpy/1.14.5/libexec/nose/lib/python3.6/site-packages
(from -r requirements/dev.txt (line 25)) (1.3.7)
2019-03-24 12:24:22 -07:00
Régis Behmo
7324d71d2c Add missing nose requirements
This should fix ci build.
2019-03-24 09:40:33 -07:00
Régis Behmo
6889f6fa90 Add unit tests! yay!
Now, that was seriously missing.
2019-03-23 16:16:44 -07:00
Régis Behmo
a7ab1c5ace Add missing CMS config (just in case)
I don't think this affects the CMS behaviour, but SESSION_COOKIE_DOMAIN
is used by the CMS, so rather be safe than sorry.
2019-03-23 16:15:51 -07:00
Régis Behmo
328cd2b1ac Simpler proxy config
http redirects to http
https redirects to https
and the life of servers becomes more simple
2019-03-23 15:44:05 -07:00
Régis Behmo
d6a40c681d Fix incorrect web proxy redirect
With WEB_PROXY=true, web server only listens on NGINX_HTTP_PORT.
2019-03-23 14:26:57 -07:00
Régis Behmo
76f9f5bb97 v3.3.0
- [Feature] Upgrade from Hawthorn to Ironwood
2019-03-22 23:39:50 +01:00
Régis Behmo
33239c14fd Activate SSO studio login in HTTPS only
With the upgrade to Ironwood, studio login redirects to the LMS by
default. This breaks login from studio.localhost. So we activate SSO
login only when HTTPS is activated, which should happen only when the
domains are correctly configured.
2019-03-22 23:37:59 +01:00
Régis Behmo
949761aa29 Introduce the concept of "nightly" release 2019-03-22 23:37:59 +01:00
Régis Behmo
604093217f Fix HTTPS openedx config value 2019-03-22 23:37:59 +01:00
Régis Behmo
7462f208de Upgrade to Ironwood
Here, we upgrade all images from Ironwood to Hawthorn, except for the
locales, which we did not generate yet.
2019-03-22 23:37:59 +01:00
Régis Behmo
e2018c29b2 Refactoring: merge ops and scripts module
The "scripts" template folder is not rendered to the environment, as we
want to keep the possibility to make radical changes to this folder.
2019-03-22 18:50:33 +01:00
Régis Behmo
65433e1e1f Fix SMTP which should be enabled only when required 2019-03-22 18:00:49 +01:00
Régis Behmo
78a81ab509 Fail early on certbot failures 2019-03-21 22:27:28 +01:00
Régis Behmo
8cb3dde706 v3.2.2
- [Feature] Multiple platforms on a single server \o/
- [Feature] Easily configure web proxy on the host
- [Bugfix] Fix `images pull all` command which failed on "all" image
- [Improvement] Add configurable mongodb, SMTP and rabbitmq
authentication
- [Improvement] Harmonize mysql username/password configuration
parameters
- [Feature] Configurable and pluggable data storage backends (#114)
2019-03-21 19:11:28 +01:00
Régis Behmo
34ca3319a3 Minor doc typo 2019-03-21 19:09:34 +01:00
Régis Behmo
a70d48c6bb Easily launch multiple platforms on a single server
By using a web proxy on the host, it's now extremely easy to launch
multiple platforms on a single server.
2019-03-21 19:06:08 +01:00
Régis Behmo
f45a24caea Easily configurable web proxy
A web proxy is a web server on the host that will forward request to the
tutor web server. We support Apache2 and Nginx.
2019-03-21 17:38:01 +01:00
Régis Behmo
566fca3c34 Fix missing minor config params in documentation 2019-03-21 14:15:25 +01:00
Régis Behmo
b0d07ef3fe Fix incorrect vendor image pulling 2019-03-21 14:13:15 +01:00
Régis Behmo
23cb45e3c4 Fix nginx command doc typo 2019-03-21 08:45:58 +01:00
Régis Behmo
a85ee37682 Configurable mongodb username/password/port 2019-03-21 00:47:42 +01:00
Régis Behmo
e35efa3302 Configurable Rabbitmq authentication 2019-03-20 19:02:39 +01:00
Régis Behmo
0a02d65760 Configurable SMTP server authentication
We can now define non-empty username/password for sending email.
2019-03-20 18:52:57 +01:00
Régis Behmo
7e2bfaf217 Harmonize mysql usernames and passwords
We were using the same password both for the root and the openedx user.
This used to be fine, but alas it is so no longer.
2019-03-20 18:45:20 +01:00
Régis Behmo
259b8961c8 Pluggable SMTP service
This is part of #114
2019-03-20 18:45:09 +01:00
Régis Behmo
960816b002 Add missing smtp service to kubernetes 2019-03-20 18:35:09 +01:00
Régis Behmo
f6d6fb642d Make it possible to (de)activate individual data services
Close #114
2019-03-20 18:59:09 +01:00
Régis Behmo
58ca0beb39 Make it possible to configure data services host/port
In the future, we want to allow users to rely on third-party services
for data storage, such as hosted MySQL and such. To do so, we need to be
able to configure the host/port of these services, which we do here.

This is to address part of #114.
2019-03-20 18:57:10 +01:00
Régis Behmo
c6ad8ad7a6 Document newly-created AWS AMI 2019-03-20 08:32:04 +01:00
Régis Behmo
ba394669fe v3.2.1
- [Feature] Enable grade downloads by default (#143)
- [Improvement] Remove orphan containers on `local start`
2019-03-19 01:04:45 +01:00
Régis Behmo
abfbf1cc21 Enable grade download by default
It was tricky to define correct settings: the "localfs" default storage
backend was causing incorrect urls of the form "/media/<id>/<name>.csv".

Close #143
2019-03-19 01:02:08 +01:00
Régis Behmo
9cd79fb44f Remove useless logging in "local" commands 2019-03-19 00:51:49 +01:00
Régis Behmo
dc32fd1072 Fix tutor-webui environment in AWS 2019-03-19 00:51:49 +01:00
Régis Behmo
98c24ee243 Remove orphan containers on local start 2019-03-18 23:04:07 +01:00
Régis Behmo
ed47177ca5 v3.2.0
- [Improvement] `images pull` now also pulls vendor images
- [Feature] Add convenient `config printvalue` command
- [Feature] Customize docker registry
- [Feature] Load configuration parameters from the system environment
- [Improvement] Automatic environment re-generation after
re-configuration
- [Improvement] Error and interrupt handling in UI and web UI
- [Bugfix] Fix missing webui env directory
2019-03-18 22:56:03 +01:00
Régis Behmo
87f7e29740 Store images in a local registry on AWS
FVor security reasons, it's better if docker images all point to a local
registry on AWS.
2019-03-18 22:56:03 +01:00
Régis Behmo
6a746eada0 Pull vendor images from the command line
Vendor docker image versions are no longer hardcoded in environment
files.
2019-03-18 22:40:37 +01:00
Régis Behmo
b84b0a6eed Add convenient "config printvalue" command 2019-03-18 22:38:55 +01:00
Régis Behmo
bccbd58e20 Easily customise the docker registry
As a consequence, `images` commands lose the `--namespace/--version`
arguments, which were confusing anyway.
2019-03-18 21:53:18 +01:00
Régis Behmo
e3b10b72f2 Load configuration values from environment
Configuration values can be loaded from the system environment by adding
a "TUTOR_" prefix.

Environment values supersede values from the user configuration file, so
that we can set values from the command line with "KEY=VAL tutor config
save --silent" even when KEY is already present in the user
configuration file.
2019-03-18 21:47:59 +01:00
Régis Behmo
0c2e33f616 Fix incorrect user during aws deployment
The TUTOR_USER env variable is not available anymore after running "su",
which causes the tutor home to be in /home/.local/share/tutor. So we
just get rid of this variable entirely.
2019-03-18 20:39:31 +01:00
Régis Behmo
0d40d55afc Fix ci-config command for Travis testing 2019-03-18 18:52:44 +01:00
Régis Behmo
07b3d113d4 Simplify environment generation
Environment is no longer generated separately for each target, but only
once the configuration is saved.

Note that the environment is automatically updated during
re-configuration, based on a "version" file stored in the environment.
2019-03-18 18:34:42 +01:00
Régis Behmo
63a633b3fc Handle command errors and ctrl+d commands in UI 2019-03-16 12:20:28 +01:00
Régis Behmo
0d2c08f8e8 Get rid of cloud cleaning script
It makes more sense to incorporate this script into the deployment
script.
2019-03-13 18:31:52 +01:00
Régis Behmo
dabf22282c Pull vendor images as part of aws deployment
Also, don't run clean script as sudo.
2019-03-13 18:28:13 +01:00