6
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-11-09 14:50:59 +00:00
Commit Graph

209 Commits

Author SHA1 Message Date
Régis Behmo
a68dc4f68f Add support for external SMTP server with TLS
Note that this setting will not work with the default namshi smtp server
shipped with tutor.

Close #231.
2019-07-07 10:17:49 +08:00
Régis Behmo
931dac2e68 Add pre-init hook
The 0003 migration from the certificates app of the LMS requires that
the S3-like platform is correctly setup during initialisation. To solve
this issue, we introduce a pre-init hook that is run prior to the LMS
migrations.
2019-07-05 14:19:23 +08:00
Régis Behmo
c07032f826 Fix CI image building 2019-07-04 17:29:30 +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
Matthieu Falce
99d3dfc704 Change typo in FAQ
First / third person description mismatch.
2019-07-01 16:01:09 +02:00
Régis Behmo
18e908cebc Minor docs space formatting 2019-06-25 15:53:24 +02:00
Régis Behmo
edc844fd51 Fix docs formatting 2019-06-25 14:46:43 +02:00
Régis Behmo
dbab2337b6 Minord docs change: update release instructions 2019-06-24 12:41:19 +02:00
Régis Behmo
b7937c8c5b Push plugin packages to pypi 2019-06-23 23:11:07 +02:00
Régis Behmo
866aae5cfe Remove references to Regis' dockerhub account 2019-06-23 23:11:07 +02:00
Régis Behmo
de5b82fd63 Migrate github repo to overhangio organization 2019-06-23 23:11:07 +02:00
Régis Behmo
dce234bc1e Move tasks from travis-ci to gitlab CI
We only keep travis-ci for building MacOS/Linux binaries.
2019-06-23 23:11:07 +02:00
Régis Behmo
7a89e3ae70 Fix WEB_PROXY docs in k8s quickstart
WEB_PROXY=true is not automatically setup during k8s quickstart, user
should define this configuration parameter manually.
2019-06-23 10:35:38 +02:00
Régis Behmo
3a444a2e05 Document required k8s cluster/client versions 2019-06-19 11:56:26 +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
d9b6895629 Pin docker image tags to tutor versions
Having an identical "ironwood" tag for all releases is not practical, in
particular for breaking changes. Thus, docker images are now pinned to
the tutor version that they were build with.
2019-06-17 20:40:46 +02:00
Régis Behmo
bc21102cf4 Make configuration silent (non-interactive) by default
Thus, we remove the -y/--yes options, which were kind of unintuitive,
and we add instead `-i/--interactive`. The quickstart commands remain
interactive by default, but can be silenced with `-I/--non-interactive`.
2019-06-07 22:49:45 +02:00
Régis Behmo
18d05fcbbb Replace databases command by init.
Since initialisation does not only refer to database migrations, it
makes more sense to rename this command.
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
7a3c0e2f84 Upgrade from ironwood.1 to ironwood.2
Because https://github.com/edx/edx-platform/pull/20325/ was merged in
ironwood.2, we no longer need this patch.
2019-06-07 22:49:45 +02:00
Régis Behmo
3362308ad3 Improve lms/cms logging
- deduplicate stdout logs
- don't persist celery logs
- persist logs to all.log by default
2019-05-29 09:53:15 +02:00
Silvio Tomatis
b79cd1799b Make it possible to persist lms/cms logs to files
By symlinking /dev/stdout to a .log file, we make it possible for users
to manually persist lms/cms logs to a file.
2019-05-29 09:53:15 +02:00
Régis Behmo
ea6c276b69 Add missing quotes in documentation 2019-05-22 20:03:46 +02:00
Régis Behmo
4e98b020db Include lighting talk video in docs 2019-05-20 18:38:43 +02:00
Régis Behmo
2234510cfb Make it possible to configure the notes service hostname
This is important, in particular in development.
2019-05-15 10:52:45 +02:00
Régis Behmo
9e6a387adc Document how to migrate a local platform to a different server
Close #186.
2019-05-13 17:26:39 +02:00
Régis Behmo
b4e3c43902 Better documentation
- More concise table of contents
- New intro
- Simpler make commands
- Fix a couple typos here and there
- Get rid of the default github issue template, and start using the
template created online.
2019-05-13 16:34:17 +02:00
Régis Behmo
9dd4c26706 Introduce automatic code formatting/linting
Code formatting makes sure that the python code looks decent, but it
does not check for coding errors.
https://black.readthedocs.io/en/stable/

Code linting runs static error detection on the python code, but does
not bother about formatting: https://pylint.readthedocs.io/en/latest/
2019-05-05 12:30:20 +02:00
Régis Behmo
52c80631c6 Document CLI auto-complete 2019-05-03 07:55:21 +02:00
Régis Behmo
e25982ed20 Improve docs wording and de-duplicate from readme
The sphinx `include` directive is great!
2019-04-25 09:36:18 +02:00
Régis Behmo
555845474d v3.3.5 (2019-04-22)
- [Feature] Pluggable LMS/CMS/forum
- [Improvement] Safer environment overwrite. Thanks @silviot! 👐
- [Security] Fix Jinja2 vulnerability
- [Improvement] Improve CLI cold start performance
- [Improvement] Allow uppercase "Y" and "N" as answers to boolean
questions
2019-04-22 16:50:09 +02:00
Régis Behmo
1a94b05188 Better release descriptions
By using `github-releases`, we can now generate much better release
description blurbs.
2019-04-22 15:15:47 +02:00
Régis Behmo
847678bb07 Get rid of the "latest" release tag
The "latest" tag is a pain to maintain: it's a tag that we delete and
re-create at every release. Whenever we delete it, the binaries become
unavailable on Github until they are re-generated. Thus, from now on, we
conform to good practices (as examplified by the
github.com/docker/compose) project and distribute only pinned release.

The "nightly" tag remains, for now, as it allows us to distribute beta
features. It may disappear in the future.
2019-04-22 13:36:40 +02:00
Régis Behmo
d1f386c149 Pluggable lms/cms/forum
LMS, CMS and forum can now be independently (de)activated. This will be
useful to deploy Tutor on multiple servers.
2019-04-22 11:59:53 +02:00
Régis Behmo
11a0c082ce Document the stop/start restart procedure on new image 2019-04-20 00:43:29 +02:00
Régis Behmo
1a706889b2 Minor docs improvement for k8s 2019-04-09 13:53:42 -07:00
Régis Behmo
3b9880ec74 Rename --silent option to -y/--yes 2019-04-09 11:17:19 -07:00
WeJie
7a8ecbabec Add quotes for command $(tutor config printroot)
https://github.com/regisb/tutor/issues/192
2019-04-09 10:54:08 -07:00
Régis Behmo
1e956b9398 Better source installation instructions
Installing from "python setup.py develop" was causing a strange error:

        error: The 'requests' distribution was not found and is required
        by kubernetes
2019-03-29 06:33:07 -07:00
Régis Behmo
6e6dbed749 Fix remaining references to hawthorn in the docs 2019-03-27 07:56:24 -07:00
Régis Behmo
2f9acb79d9 Fix install from source docs 2019-03-27 07:55:09 -07:00
Régis Behmo
6c44406ba4 use update_assets instead of the custom openedx-assets script
Now that the correct webpack settings are loaded by the `update_assets`
command in Ironwood, we can stop relying on the `openedx-assets` script.
Actually, we could probably remove it.
2019-03-25 07:41:17 -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
949761aa29 Introduce the concept of "nightly" release 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
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
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
f6d6fb642d Make it possible to (de)activate individual data services
Close #114
2019-03-20 18:59:09 +01:00
Régis Behmo
c6ad8ad7a6 Document newly-created AWS AMI 2019-03-20 08:32:04 +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
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
3e5e494bd8 Install python requirements in venv in docker image
Installing the requirements in a virtualenv is necessary to run "pip
install ..." commands in development mode, when the USERID is != 0.
2019-03-09 17:51:25 +01:00
Régis Behmo
970ab607b5 Rename "config [non]interactive" command to "config save [--silent]" 2019-03-09 11:27:51 +01:00
Régis Behmo
6d19b99b66 Configurable docker images
Docker images for each service can now be configured one by one.

Close #122.
2019-03-09 11:17:48 +01:00
Régis Behmo
9d6874fc0e Fix USERID setting in development mode
USERID environment variable was no longer passed to docker image in
development mode.

We take the opportunity to improve the documentation regarding the dev
environment.

Close #177.
2019-03-09 11:16:12 +01:00
Régis Behmo
ee9f2788e4 Add make version command
This makes tagging simpler.
2019-02-24 20:15:36 +01:00
Régis Behmo
1e2166dacf Fix android app build/auth
We had to backtrack from the latest release of the
android app, which is not compatible with the mobile api v0.5 available
in Hawthorn. This should change in ironwood.

Also, we included the correct oauth client ID in the app, which
prevented communication with the LMS.

The android app is now out of beta \o/

Close #89
2019-02-20 19:17:20 +01:00
Régis Behmo
6a5527458f Docs are now hosted with https 2019-02-20 13:53:22 +01:00
Régis Behmo
f417fbf4f9 Document cloud deployment 2019-02-20 10:52:54 +01:00
Régis Behmo
e7f82b5465 Fix http link to docs 2019-02-19 22:39:04 +01:00
Régis Behmo
aa53524f70 Add documentation status badge 2019-02-19 22:37:59 +01:00
Régis Behmo
45703b73b6 Add links to tutor forums 2019-02-19 22:26:43 +01:00
Régis Behmo
b05eed92d5 Update installation instructions 2019-02-18 09:53:54 +01:00
Régis Behmo
b1d748b119 Add instructions to download the "latest" binaries 2019-02-18 09:45:09 +01:00
Régis Behmo
a988b28cfe Fix sphinx html_static_path warning 2019-02-18 09:42:24 +01:00
Régis Behmo
65f7b0f14d Push "latest" binaries to github releases 2019-02-18 09:22:41 +01:00
Régis Behmo
b643a87190 Improve documentation on running a local edx-platform
Close #173.
2019-02-17 14:01:43 +01:00
Régis Behmo
b266178784 Add draft logo
Logo is based on Exo font. This draft logo will be used until a better
logo is created.
2019-02-17 13:48:02 +01:00
Régis Behmo
877a2239f7 Make tutor ready for the AWS cloud 2019-02-13 23:55:15 +01:00
Régis Behmo
2e2dfc73a6 Clarify dev docs on theming
Close #140
2019-02-13 08:54:10 +01:00
Régis Behmo
3f105a0ef3 Fix local createuser documentation
Close #169.
2019-02-12 17:40:59 +01:00
Régis Behmo
1781e6e3c3 Gif animation for quickstart
Animation created with Terminalizer: https://terminalizer.com/
Try it! It's awesome :)
2019-02-10 19:29:37 +01:00
Régis Behmo
4331bc5712 Tutor v3 complete rewrite
Replace all make commands by a single "tutor" binary. Environment and
data are all moved to ~/.tutor/local/share/tutor. We take the
opportunity to add a web UI and revamp the documentation.

This is a complete rewrite.

Close #121.
Close #147.
2019-02-09 20:30:01 +01:00
Régis Behmo
731ff7fb15 Docs typo 2019-01-22 21:25:41 +01:00
Régis Behmo
6d70dedce0 Make it easy for users to override production settings
Close #131.
2019-01-20 09:24:44 +01:00
Régis Behmo
61e3064c12 Improve theme development docs
This addresses part of issue #121.
2019-01-19 15:17:55 +01:00
Régis Behmo
49317ac3df Open edX requires 4 Gb of RAM
After testing on a 2Gb server, Open edX can be run, but it's unbearably
slow.
2019-01-17 16:48:34 +01:00
Régis Behmo
537b42865f Add "make" to the tutor requirements 2019-01-17 10:42:15 +01:00
Régis Behmo
c9314e196d Switch license to AGPL 2019-01-16 17:24:42 +01:00
Régis Behmo
772e8257c3 It is no longer necessary to run "make assets" manually
Instead, assets are copied to nginx automatically on run.
2019-01-15 09:29:27 +01:00
Régis Behmo
422e6c100c Document upgrade to tutor
Close #109
Close #118
2019-01-07 08:22:29 +01:00
Régis Behmo
dcd868d30f Rename "import-demo-course" make command 2019-01-07 08:13:47 +01:00
Régis Behmo
f38f153c56 Rename "create-staff-user" command to "staff-user" 2019-01-07 08:12:37 +01:00
Régis Behmo
3433a7c046 Improve make commands documentation 2019-01-07 08:10:30 +01:00
Régis Behmo
3b7c1c25c5 Working Kubernetes instakk
This deployment of Kubernetes does not support all features.

Close #116.
2019-01-06 23:09:08 +01:00
Régis Behmo
65fd2114f8 Fix docs demo course external link 2018-12-30 15:13:36 +01:00
Régis Behmo
fee0956a5e Better doc titles wording in local install 2018-12-30 15:12:59 +01:00
Régis Behmo
91be239ca1 Update asciinema link 2018-12-27 02:49:12 +01:00
Régis Behmo
13d1baa6b6 Fix quickstart instructions 2018-12-27 01:28:40 +01:00
Régis Behmo
30105610e4 Missing feature wording 2018-12-27 01:27:19 +01:00
Régis Behmo
5937d757fb In quickstart, suggest "make all" and not "local" 2018-12-27 01:17:12 +01:00
Régis Behmo
615cb72921 Attempt to fix doc encoding errors 2018-12-26 19:38:03 +01:00
Régis Behmo
8f7814cad3 Change "openedx-docker" github urls to tutor 2018-12-26 19:29:32 +01:00
Régis Behmo
bb5f10fc16 First steps with kubernetes
Kubernetes is currently *not* functional, but it will be, soon!
2018-12-26 19:27:08 +01:00
Régis Behmo
eab812b63d Move portainer to a dedicated make command
Portainer is no longer a global activation flag, because it does not
make much sense in the context of kubernetes. Instead, we use a simpler
"make" command.
2018-12-26 19:27:08 +01:00
Régis Behmo
a81593f6a8 Rename "singleserver" with "local" deployment 2018-12-26 19:27:08 +01:00
Régis Behmo
f2c476f954 Improve documentation 2018-12-26 19:27:08 +01:00
Régis Behmo
87980f484b Rename custom settings from "universal" to "tutor" 2018-12-26 19:27:08 +01:00
Régis Behmo
c903ab2b12 Migrate openedx-docker project to Tutor 👩‍🏫
The project gets a new name and some proper documentation. Build/Deploy
are now properly separated.
2018-12-26 19:27:08 +01:00