Commit Graph

1136 Commits

Author SHA1 Message Date
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 63a633b3fc Handle command errors and ctrl+d commands in UI 2019-03-16 12:20:28 +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
Régis Behmo 9d7a67bb69 Fix missing webui env directory 2019-03-10 18:02:20 +01:00
Régis Behmo bb8be6eaed v3.1.0
- [Improvement] Install python requirements in virtual env in docker
image
- [Bugfix] Add missing volume for theme development
- [Improvement] Rename "config [non]interactive" command to "config save
[--silent]"
- [Improvement] More explicit logging during environment generation
- [Improvement] Configurable docker images (#122)
- [Bugfix] Fix "android pullimage" command
- [Improvement] Do not upgrade images as part of quickstart
- [Bugfix] Fix USERID setup in development mode and various dev-related
docs (#177)
2019-03-09 17:53:34 +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 b7c31d770f Add missing volume for theme development
The documentation instructions could not be working, as the theme folder
was not being mounted in the dev container.
2019-03-09 15:39:33 +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 9b35490449 More explicit env generation logging 2019-03-09 11:17:48 +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 976453c838 Fix "android pullimage" command 2019-03-09 11:17:48 +01:00
Régis Behmo 70d2ef37d3 Do not pull images as part of local quickstart
Pulling images is slow, often unnecessary, and sometimes suprising for
the user, as the newer images may break the older tutor version.
Instead, we add a "--pullimages" option to "quickstart" to explicitely
update docker images.
2019-03-09 11:17:23 +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 64eb8e0c92 v3.0.6
- [Bugfix] Fix import/export of demo course (#175)
2019-02-26 20:54:22 +01:00
Régis Behmo 4adaa67e3e Fix "[Errno 2] No such file or directory" error on course export
Close #175
2019-02-26 20:47:43 +01:00
Régis Behmo 1485d8c4d6 Add missing lynx dependency to openedx container
First seen here:
a9bee65dff
2019-02-26 09:25:03 +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 e54a3cc8ca v3.0.5
- [Feature] Add cloud deployment script
- [Improvement] Run `images pull` command
- [Improvement] Run `indexcourses` on importing demo course
- [Improvement] Add `runserver stop` command
2019-02-14 08:39:11 +01:00
Régis Behmo 877a2239f7 Make tutor ready for the AWS cloud 2019-02-13 23:55:15 +01:00
Régis Behmo 5df069f42a Add cloud deployment script for AWS 2019-02-13 22:57:31 +01:00
Régis Behmo b3288613c7 Add `runserver stop` command 2019-02-13 17:25:17 +01:00
Régis Behmo da84299c8b v3.0.4
- [Minor] Minimum required `click` version is 7.0 (#171)
- [Bugfix] Fix `runserver` dev command (#172)
- [Minor] Fix non-https link to documentation in pypi
- [Minor] Fix `createuser` documentation
2019-02-13 17:15:18 +01:00
Régis Behmo 22aff4dbf5 Fix `runserver` dev command
Close #172
2019-02-13 17:09:07 +01:00
Régis Behmo 484bb59ec6 v3.0.3
- [Bugfix] Add missing template data to pypi package
- [Bugfix] Fix quickstart on Kubernetes (#164)
- [Improvement] Add datatases task to Kubernetes quickstart (#167)
2019-02-12 09:21:31 +01:00
Régis Behmo ab2098b7f5 Run databases task on k8s quickstart
Close #167
2019-02-12 09:17:18 +01:00
Régis Behmo 253b816a0a Fix k8s quickstart
Close #164
2019-02-12 09:11:38 +01:00
Régis Behmo e738a3b13f v3.0.2
- [Bugfix] Fix import paths -- 🚀 thanks @silviot!
- [Improvement] Properly set docker project name in mysql logs -- 🦊
thanks again @silviot!
2019-02-12 08:37:37 +01:00
Silvio Tomatis d08bc10bb6 Align `docker-compose logs` invocation to the `docker-compose up` call 2019-02-12 08:29:07 +01:00
Régis Behmo 486e5c5794 Fix settings import paths 2019-02-12 08:26:50 +01:00
Régis Behmo ed8606e63c v3.0.1
- [Bugfix] fix mysql initialization (#159, #160)
- [Improvement] Better handling of continuous integration
- [Bugfix] fix `tutor --version` (#156)
- [Improvement] Absolute settings imports -- 📯 thanks @tonytan4ever!
2019-02-11 09:39:19 +01:00
Régis Behmo 09fdc30784 Fix mysql connection errror on boot
Mysql triggers "Host 'xxx' is not allowed to connect to this MySQL
server" error because of race condition.

This was an issue that had been (painfully) solved in v2 and has reared
its ugly head again in v3.

Close #159
Close #160
2019-02-11 09:38:34 +01:00
Régis Behmo d65a7a1b38 Fix version information in bundle
`./dist/tutor --version` raises an error:

Traceback (most recent call last):
  File "main", line 4, in <module>
  File "tutor/cli.py", line 21, in main
  File "click/core.py", line 764, in __call__
  File "click/core.py", line 716, in main
  File "click/core.py", line 641, in make_context
  File "click/core.py", line 1089, in parse_args
  File "click/core.py", line 940, in parse_args
  File "click/core.py", line 1477, in handle_parse_result
  File "click/core.py", line 96, in invoke_param_callback
  File "click/decorators.py", line 270, in callback
RuntimeError: Could not determine version
[1659] Failed to execute script main

To address this, we pass the version value directly to click.

This is for issue #156.
2019-02-10 19:29:37 +01:00
tonytan4ever 608e686198 Improve import in openedx config settings
Signed-off-by: tonytan4ever <tonytan198211@gmail.com>
2019-02-10 19:17:06 +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