6
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-09-19 16:09:02 +00:00
Commit Graph

216 Commits

Author SHA1 Message Date
Régis Behmo
797167d48a Do not include too many themes to avoid long image build time
To minimize image build time and size, we do not build non-default
themes.
2020-03-13 19:27:01 +01:00
Régis Behmo
5c43d6ee25 Add "settheme" command
This makes it much easier to switch to a new theme.
2020-03-13 19:27:01 +01:00
Régis Behmo
16819bd697 Rename *_PROTOCOL to *_SCHEME 2020-03-12 09:37:22 +01:00
Régis Behmo
00ec6930ae Add simple gunicorn reload script to openedx image 2020-03-10 10:37:14 +01:00
Régis Behmo
0325e7ad95 Rename worker containers from x_worker to x-worker
This is more coherent with k8s.
2020-03-10 10:37:14 +01:00
Régis Behmo
702e8cca7d Make it possible to run an Elasticsearch service on https
This is useful when running elasticsearch from 3rd-party vendors.
2020-03-10 10:37:14 +01:00
Régis Behmo
ef2ae1a9b2 Clarify database dumps 2020-02-27 18:08:04 +01:00
Régis Behmo
872883e36f Switch edx-platform from ironwood.2 to ironwood.master
There are too many patches on top of ironwood.2, and it's not practical
to pull them all one by one. We still want to build on top of a specific
version, and not a branch, so we use a dirty hack to guarantee that the
docker image is properly rebuilt by CI when we change it.
2020-02-27 17:42:43 +01:00
Régis Behmo
83459d43d5 Fix broken elasticsearch configuration
Because we are running a version of elasticsearch older than Methusalem,
the docker environment variables were not properly taken into account.
For instance, the cluster name and "mlockall" settings were incorrect,
as we could see by running:

    $ tutor local run lms curl elasticsearch:9200 | grep cluster_name
    ...
      "cluster_name" : "elasticsearch",
    $ tutor local run lms curl elasticsearch:9200/_nodes/process?pretty | grep mlock
      ...
     "mlockall" : false

See
https://discuss.overhang.io/t/elastic-container-is-not-being-removed/312/3
for discussion.

This fix also introduces a new tutor configuration setting to adjust the
elasticsearch heap size.
2020-02-26 11:47:43 +01:00
Régis Behmo
ff3fea6930 Restore more recent Android app tagged release
A prior change used the ironwood.1 tag to build the Android app in an
attempt to solve #289. Turns out that this change was unnecessary. So
here we revert to a more recent release of the Android app. Instead of
building from the master branch (which might create suprises) we build
from a fixed release tag.

The source repo and version are customisable via build arguments.
2020-02-25 17:29:53 +01:00
Régis Behmo
de57812c2c Minor docs improvements 2020-02-25 17:11:11 +01:00
Régis Behmo
38a49e2ca7 Remove useless docs configuration
We don't need epub/htmlhelp/latgex output.
2020-02-25 17:03:11 +01:00
Régis Behmo
fffc90442e Add youtube videos to docs
This is possible thanks to a custom youtube tag. See
https://jasonstitt.com/youtube-in-restructured-text
2020-02-25 17:02:39 +01:00
Régis Behmo
a35f35f77e Fix "those that are" docs typo 2020-02-25 11:35:36 +01:00
ToddLichty
4c4865cc1b Add instructions for database dumps
Changes proposed in https://github.com/overhangio/tutor/issues/290
2020-02-12 17:05:48 +01:00
Claudio Acciaresi
313f7172ed Updating documentation on how to renew certificates. 2020-01-29 17:52:00 +01:00
Régis Behmo
8dcb2d50a9 Minor doc improvement in theme installation 2020-01-16 10:44:43 +01:00
Régis Behmo
e3444d668c Add support for simple, yaml-based plugins
Those plugins are stored as yaml files in ~/.local/share/tutor-plugins
and follow the same specifications as entrypoint plugins.
2020-01-14 17:35:51 +01:00
Régis Behmo
9b10c1b470 Fix link to cloud install on doc landing page 2020-01-13 22:52:28 +01:00
Régis Behmo
460a7dfc79 Minor docs improvements 2020-01-10 19:03:53 +01:00
Florian Haas
d073481385 doc: Add instructions for running Tutor on Podman
https://podman.io/ is meant to be a drop-in replacement for Docker.
Thus, with some tweaking to the installation environment, it appears
to be perfectly feasible to run Tutor in a Docker-less environment
that only has Podman and podman-compose installed.

Add installation instructions for doing just that.
2020-01-10 18:45:48 +01:00
Régis Behmo
e8248b26d6 Tutor docker images should point to docker.io, too 2020-01-10 17:22:01 +01:00
Régis Behmo
461b0f5746 Remove comment related to cloud install 2020-01-10 16:44:47 +01:00
Régis Behmo
4078c380db Add more links to tutor lts 2020-01-10 15:46:56 +01:00
Régis Behmo
cd0ec8c22a Clarify that tutor runs ironwood 2020-01-10 15:15:56 +01:00
Régis Behmo
899e4dfb9a Upgrade to v3.7 for docker-compose service definition
We were encountering issues when overriding service definitions with
"x-...". These were solved by upgrading docker-compose and switching to
3.7 service definition. As a consequence, the minimum supported docker
version is 18.06.0, as specified by
https://docs.docker.com/compose/compose-file/#compose-and-docker-compatibility-matrix
2020-01-10 11:10:54 +01:00
Régis Behmo
52f094937c Improve troubleshooting instructions
Close #274.
2020-01-10 11:10:54 +01:00
Régis Behmo
d17fdaa658 More feature-complete dev/local docker-compose commands
By de-duplicating the code between dev.py and local.py, we are able to
support more docker-compose run/up/stop options passed from tutor. To do
so, we had to disable some features, such as automatically mounting the
edx-platform repo when the TUTOR_EDX_PLATFORM_PATH environment variable
was defined.
2020-01-10 11:10:54 +01:00
Régis Behmo
9620447a4d Add the lts plugin to the tutor binary 2019-12-25 01:09:53 +01:00
Régis Behmo
0b1cac5134 Make it possible to run plugin subcommands 2019-12-15 18:52:58 +01:00
Régis Behmo
13de3c8adc Move "-r/--root" option to parent command level 2019-12-15 18:52:58 +01:00
Claudio Acciaresi
e9f200a102 Adding missing plugin reference. 2019-12-13 10:00:59 +01:00
Régis Behmo
302e1fc986 Get rid of the local portainer command
It makes more sense to document this command instead of adding it to the
`local` commands. If need be, in the future we should be able to re-add
it as a plugin.
2019-12-05 11:54:44 +01:00
Régis Behmo
0fb9bfe008 Get rid of the indexcourses command
This command adds a burden on the `local` and `k8s` command. It does not
make sense to provide this command out of the box, and not other
administration commands. Instead, we should better document how to run
regular `manage.py` commands from tutor.

Close #269.
2019-12-05 11:49:53 +01:00
Régis Behmo
f66ad1ca32 Docs: install -> installation
"install" is a verb and "installation" is a noun.
2019-11-22 09:32:50 +01:00
Régis Behmo
cac7e947b6 Fix minor internal ref issue in config docs 2019-11-19 21:08:35 +01:00
Régis Behmo
9b6afa20c2 Improve soft link note in dev docs 2019-11-14 11:36:22 +01:00
teruun
c7fba15e00 note softlink not work in theme 2019-11-14 11:32:18 +01:00
Régis Behmo
b1d0039d66 Clarify binary download compatibility with plugins 2019-11-08 10:38:50 +01:00
Régis Behmo
6d419bc8b5 Add favicon to docs 2019-10-25 10:53:59 +02:00
Régis Behmo
85769715a4 Document plugin cookiecutter 2019-10-24 20:28:20 +02:00
Régis Behmo
b01f4d9c0e Better dev environment
The `dev` commands now rely on a different openedx-dev docker image.
This gives us multiple improvements:

- no more chown in base image
- faster chown in development
- mounted requirements volume in development
- fix static assets issues
- bundled ipdb/vim/... packages, which are convenient for development

Close #235
2019-10-24 20:03:36 +02:00
Régis Behmo
d1f7d02470 Improve docs
- Add tutor logo
- add "edit on github" links
- modify theme colors
- and various other things...
2019-10-17 17:21:35 +02:00
Régis Behmo
8d4f335716 Fix erroneous docs on unsupported features. 2019-10-10 15:38:03 +02:00
Régis Behmo
b04b9e19c1 docs: include user testimonials 2019-10-08 22:25:20 +02:00
Régis Behmo
7361c60845 Clarify init command in docs
"init" command should be run after "start".
2019-10-07 19:27:24 +02:00
Régis Behmo
617e190aed Fix upgrading title level in documentation 2019-10-07 14:44:04 +02:00
Régis Behmo
2b8c0778b2 Fix readme compilation 2019-10-07 14:40:49 +02:00
Régis Behmo
5e6ad893a6 Coolify readme 2019-10-07 14:26:17 +02:00
Régis Behmo
8659b6e7ac Added config values for #gunicorn workers 2019-09-19 15:39:18 +02:00
Régis Behmo
7790028cf7 Move tutor-minio to dedicated plugin repo 2019-08-20 17:46:53 +02:00
Régis Behmo
be1ff08917 Add all plugins (with data) to binary bundle
All existing plugins are added to the binary bundle, in their latest
version, so that users don't need to pip install tutor.

Also, the tutor MANIFEST.in file was removed to simplify the management
of package data.

Close #242.
2019-08-20 17:03:46 +02:00
Omar Al-Ithawi
67ec24765a Fix tutor binary permission error on MacOSX 2019-07-24 12:53:15 +02:00
Omar Al-Ithawi
82b985d326 Fix tutor binary permission error on MacOSX 2019-07-24 12:53:15 +02:00
Régis Behmo
87cd65fe28 Document new and existing plugins 2019-07-11 14:09:39 +08:00
Régis Behmo
002d9edccc Improve plugin config documentation 2019-07-11 11:05:57 +08:00
Régis Behmo
d7477ba348 Add support for SMTP SSL, in addition to TLS
Note that SSL and TLS are incompatible.

Close #231.
2019-07-08 06:24:35 +08:00
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