6
0
mirror of https://github.com/ChristianLight/tutor.git synced 2024-11-17 02:25:10 +00:00
Commit Graph

1735 Commits

Author SHA1 Message Date
Régis Behmo
9cba06595e feat: upgrade to open-release/palm.3 2023-10-13 16:54:45 +02:00
Emad Rad
f4dc508c19
fix: 600GB openedx-dev image on macOS
On macOS, building the "openedx-dev" Docker image resulted in an image that required more than 600 GB of disk space. This was due to the `adduser` command which was called with a user ID of 2x10⁹ (on macOS only). This resulted in a very large /var/log/faillog file, hence the image size.

Related upstream discussion: https://github.com/moby/moby/issues/5419
Close https://github.com/openedx/wg-developer-experience/issues/178
2023-10-11 10:02:03 +02:00
Régis Behmo
0a73b8857d v16.1.3 2023-10-10 11:40:43 +02:00
Régis Behmo
575a56b767 fix: build error caused by removed py2neo package
On Oct. 10, py2neo package was abruptly removed from pypi, GitHub, and
the py2neo website now displays just a super funny meme: https://py2neo.org/

Yes, we should get rid of that dependency, but we are still supposed to
support existing users. So we install py2neo from our fork.
2023-10-10 11:37:40 +02:00
David Ormsbee
b3cde02330 fix: override CMS_BASE setting in Studio for dev
The LMS was overriding CMS_BASE properly, but Studio (CMS) configuration
was not. That meant that Studio's CMS_BASE in dev mode was using the
devstack default of localhost:18010 (because this is what's defined in
edx-platform). This in turn broke parts of Studio that use this value,
such as the XBlock v2 API (/api/xblock/v2).

This commit derives the value of the CMS_BASE Django setting from
Tutor's CMS_HOST config value, in the same way that the LMS does it.
2023-10-05 09:06:28 +02:00
Paulo Viadanna
06ad1978a4 fix: adds mongodb connect=False
Adding connect=False to the LMS and CMS' MongoDB connection to prevent
ServerSelectionError after a cluster failover.
2023-10-04 09:48:08 +02:00
Régis Behmo
44e912b239 chore: mark compatibility with python 3.12 2023-10-03 08:22:29 +02:00
Régis Behmo
1c31d30e66 chore: upgrade urllib3
https://github.com/overhangio/tutor/pull/911
2023-10-03 06:58:25 +02:00
Régis Behmo
2bdd170601 v16.1.2 2023-10-02 11:15:51 +02:00
Régis Behmo
d6e26c614c fix: file upload in open response assessments (ora2)
For some reason, the ora2 cache configuration had disappeared in the
upgrade to Palm.

This issue was initially raised here:
https://discuss.openedx.org/t/palm-2-ora-file-upload-failure/11332

Close #907.
2023-10-02 11:13:11 +02:00
Emad Rad
4eb2085023
feat: add CONFIG_LOADED action
By utilizing CONFIG LOADED, we can now verify if PREVIEW_LMS_HOST is a subdomain of LMS_HOST and display a warning message to the user if it is not.
2023-10-02 09:08:07 +02:00
Pablo Thasi
4a5e9d4271 Fix command to Transfer the configuration, environment, and platform data from server 1 to server 2
I added `rsync` to Transfer the configuration, environment, and platform data from server 1 to server 2 command so that we can we able to transfer data.
I found that `-avr` options fit well to it.
2023-09-30 01:26:21 +02:00
dependabot[bot]
c594817743 chore(deps): bump cryptography from 41.0.3 to 41.0.4 in /requirements
Bumps [cryptography](https://github.com/pyca/cryptography) from 41.0.3 to 41.0.4.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/cryptography/compare/41.0.3...41.0.4)

---
updated-dependencies:
- dependency-name: cryptography
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-09-22 08:37:19 +02:00
Régis Behmo
00c58e7a9e chore: upgrade nodeenv to fix nodejs install
We upgrade nodeenv as an attempt to fix incomplete reads.

From time to time we face the following error:

	#67 [linux/amd64 nodejs-requirements 2/4] RUN nodeenv /openedx/nodeenv --node=16.14.0 --prebuilt
	#67 0.338  * Install prebuilt node (16.14.0) .Incomplete read while readingfrom https://nodejs.org/download/release/v16.14.0/node-v16.14.0-linux-x64.tar.gz
	#67 204.1 .
	#67 204.1 Traceback (most recent call last):
	#67 204.1   File "/openedx/venv/bin/nodeenv", line 8, in <module>
	#67 204.1     sys.exit(main())
	#67 204.1   File "/openedx/venv/lib/python3.8/site-packages/nodeenv.py", line 1104, in main
	#67 204.1     create_environment(env_dir, args)
	#67 204.1   File "/openedx/venv/lib/python3.8/site-packages/nodeenv.py", line 980, in create_environment
	#67 204.1     install_node(env_dir, src_dir, args)
	#67 204.1   File "/openedx/venv/lib/python3.8/site-packages/nodeenv.py", line 739, in install_node
	#67 204.1     install_node_wrapped(env_dir, src_dir, args)
	#67 204.1   File "/openedx/venv/lib/python3.8/site-packages/nodeenv.py", line 762, in install_node_wrapped
	#67 204.1     download_node_src(node_url, src_dir, args)
	#67 204.1   File "/openedx/venv/lib/python3.8/site-packages/nodeenv.py", line 602, in download_node_src
	#67 204.1     with ctx as archive:
	#67 204.1   File "/opt/pyenv/versions/3.8.15/lib/python3.8/contextlib.py", line 113, in __enter__
	#67 204.1     return next(self.gen)
	#67 204.1   File "/openedx/venv/lib/python3.8/site-packages/nodeenv.py", line 573, in tarfile_open
	#67 204.1     tf = tarfile.open(*args, **kwargs)
	#67 204.1   File "/opt/pyenv/versions/3.8.15/lib/python3.8/tarfile.py", line 1601, in open
	#67 204.1     saved_pos = fileobj.tell()
	#67 204.1 AttributeError: 'bytes' object has no attribute 'tell'

This change was added to 1.8.0 as an attempt to resolve the issue: https://github.com/ekalinin/nodeenv/pull/329

We are not sure it will work every time, but it can't hurt.
2023-09-13 11:01:04 +02:00
Régis Behmo
72906bff8d feat: add cairn to the official list of plugins
This change means that cairn will be automatically installed whenever we
run:

    pip install tutor[full]

or whenever we run the tutor binary.
2023-09-07 19:16:53 +02:00
Régis Behmo
51928b0075 fix: parse strings prefixed with "#" in config save --set ...
Pound keys were interpreted as comments. This is annoying when we want
to parse html color codes, such as in:

    $ tutor config save --set "INDIGO_PRIMARY_COLOR=#225522"
    $ tutor config printvalue INDIGO_PRIMARY_COLOR
    null

Close #866.
2023-09-06 12:06:10 +02:00
Régis Behmo
8eccaa61e9 fix: render list config items
Close #867.
2023-09-05 16:06:44 +02:00
Régis Behmo
39d3eaf801 fix: type tests
Type tests were broken following the upgrade of click. We take the
opportunity to simplify the TutorCli implementation.
2023-08-29 16:21:43 +02:00
Régis Behmo
7e443ac40d chore: upgrade reqs
Now that sphinx_rtd support docutils>=0.19 we can drop that max version
requirement. But we need to limit sphinx max version because they
removed python 3.8 support before EOL.
2023-08-29 15:53:27 +02:00
Régis Behmo
748340f751 v16.1.1 2023-08-29 11:43:24 +02:00
Florian Haas
cfb786ab2d fix: Apply mysqld character set fix to Kubernetes deployment
This is a follow-up fix to #819, where the corresponding change was
added to the mysqld invocation in the "tutor local" (that is,
docker-compose) deployment method, but omitted from its "tutor k8s"
equivalent.
2023-08-28 09:53:38 +02:00
Régis Behmo
edd19fc0d0 docs: fix build 2023-08-28 09:48:42 +02:00
Kyle D. McCormick
ea79dfb85d docs: update README to reflect official ARM64 support 2023-08-28 09:48:42 +02:00
Kyle D. McCormick
97b999b519 docs: tutor uses docker compose now, not docker-compose 2023-08-28 09:48:42 +02:00
Régis Behmo
758b7d0f73 docs: backup with sudo
See:
https://discuss.overhang.io/t/copying-tutor-gives-permission-denied/3500
2023-08-28 09:42:54 +02:00
Régis Behmo
8ccc3588e7 v16.1.0 2023-08-16 19:12:35 +02:00
Régis Behmo
2a47100d6a fix: broken mysql after palm upgrade
This fix is for a rather serious issue that affects users who upgrade
from Olive to Palm. The client mysql charset and collation was
incorrectly set to utf8mb4, while the server stil runs utf8mb3. Only
users who run the mysql container are affected.

To resolve this issue, we explicitely configure the client to use the
utf8mb3 charset/collation.

Important note: users who have somehow managed to upgrade from olive to
Palm before may find themselves in an undefined state. They might have
to fix their mysql data manually. Same thing for users who launched Palm
from scratch; although, according to my preliinary tests, they should be
able to downgrade their connection from utf8mb4 to utf8mb3 without
issue.

In addition, we upgrade to mysql 8.1.0. Among many other fixes, this
avoids a server restart after the upgrade:

> An in-place upgrade from MySQL 5.7 to MySQL 8.0, without a server
> restart, could result in unexpected errors when executing queries on
> tables. This fix eliminates the need to restart the server between the
> upgrade and queries. (Bug #35410528)

https://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-34.html

See also the 8.1.0 release notes:

https://dev.mysql.com/doc/relnotes/mysql/8.1/en/news-8-1-0.html

Close #887.
2023-08-16 19:01:41 +02:00
0x29a
df07422adb fix: race condition could cause mkdirs() to fail with "dir exists" 2023-08-16 18:59:15 +02:00
Régis Behmo
b51fdb46f3 fix: ask whether we run as prod in local launch
User was no longer asked whether they wanted to run on prod or not. In
other words, it was not convenient to run as local.overhang.io.
2023-08-16 18:57:26 +02:00
Régis Behmo
67009fb857 fix: improve support of non-buildkit Docker build
See comment here:
https://github.com/overhangio/tutor/pull/868#issuecomment-1640429396

See also the conversation that spawned this PR:
https://discuss.openedx.org/t/issue-in-tutor-palm-release-with-tuotr-dev-launch-while-installing/10629
2023-08-16 18:56:59 +02:00
Emad Rad
ef30dbc193 chore: left out "Filters" word added 2023-08-14 16:25:59 +02:00
Régis Behmo
f6507f995a v16.0.5 2023-08-09 22:42:32 +02:00
Régis Behmo
a6338e2880 feat: upgrade to open-release/palm.2 2023-08-09 22:41:34 +02:00
Régis Behmo
bb23afcc60 v16.0.4 2023-08-03 11:19:17 +02:00
Régis Behmo
8de5edfab7 chore: upgrade cryptography in dev
See: https://github.com/overhangio/tutor/security/dependabot/18
2023-08-03 11:13:45 +02:00
Emad Rad
8414200262
fix: remove references to the wizard edition 2023-08-03 11:08:35 +02:00
Régis Behmo
63c8f8ec58 feat: add support for http/3
It was observed that waiting time was cut in half after http/3 was
enabled. Plus, supporting http/3 is super easy :)

Close #845
2023-08-03 10:59:43 +02:00
Régis Behmo
d7eb539277 fix: ignore discussion units when forum is not enabled
This is a backport of a commit to the master branch:
https://github.com/openedx/edx-platform/pull/32464

In particular, it will fix many issues that appear when the demo course
is imported.
2023-07-31 16:00:18 +02:00
Régis Behmo
2bca024daf docs: fix many verbatim issues in catalog 2023-07-31 15:52:13 +02:00
Régis Behmo
97d9f5a75c chore: upgrade certifi
Fix minor vulnerability:
https://github.com/overhangio/tutor/security/dependabot/17
2023-07-31 09:23:01 +02:00
Régis Behmo
e9723bd7dc v16.0.3 2023-07-28 21:56:37 +02:00
Régis Behmo
a1945245b8 security: fix unprivileged content libraries creation
See:
https://github.com/openedx/edx-platform/security/advisories/GHSA-3q74-3rfh-g37j
https://github.com/openedx/edx-platform/pull/32838
https://discuss.openedx.org/t/security-upcoming-security-release-for-edx-platform-on-2023-07-25/10769
2023-07-28 21:04:26 +02:00
Régis Behmo
faf43bd3b0 chore: actually do upgrade cryptography req
See: https://github.com/overhangio/tutor/security/dependabot/14
2023-07-21 12:45:29 +02:00
Régis Behmo
68a995cee7 chore: upgrade cryptography requirement
Apply security update:
https://github.com/overhangio/tutor/security/dependabot/14
2023-07-21 12:11:36 +02:00
Kyle D. McCormick
3affd546e9 fix: set default theme by simply deleting SiteTheme objects
`tutor ... do settheme default` is meant to revert to the
default theme.  However, in its current implementation, it
creates SiteTheme objects pointing to a theme named "default",
which doesn't exist, resulting in errors like:

    Theme dirs:
    [Path('/openedx/themes')]]
    Traceback (most recent call last):
      File "/openedx/edx-platform/openedx/core/djangoapps/theming/helpers.py", line 204, in get_current_theme
	themes_base_dir=get_theme_base_dir(site_theme.theme_dir_name),
      File "/openedx/edx-platform/openedx/core/djangoapps/theming/helpers.py", line 242, in get_theme_base_dir
	raise ValueError(
    ValueError: Theme 'default' not found in any of the following themes dirs,

This works from the perspective of the user, because a missing theme is
treated as the default theme. However, the errors are unneccesary &
confusing.

By simply deleting & not recreating SiteTheme objects instead,
we are able to revert to the default theme while keeping the
logs clear of theming errors.
2023-07-17 10:19:33 +02:00
Sarina Canelake
74ef1ae56e docs: Tweak upgrade instructions 2023-06-23 17:14:03 +02:00
Braden MacDonald
b3879e13b6 docs: update ARM tutorial 2023-06-23 16:12:25 +02:00
Régis Behmo
b5b74bec9d v16.0.2 2023-06-22 13:00:17 +02:00
Régis Behmo
41eddd813c fix: mysql deployment on k8s
The `--ignore-db-dir` option is no longer supported on MySQL 8. See:
https://dev.mysql.com/doc/refman/8.0/en/upgrade-prerequisites.html

This option was causing the mysql container to fail.
2023-06-22 12:57:46 +02:00
Régis Behmo
58e4e89e48 v16.0.1 2023-06-16 11:45:17 +02:00