63 Commits

Author SHA1 Message Date
Danyal Faheem
8f4a0b1d91
feat: migrate from pylint/black to ruff (#69)
Linked Epic: https://github.com/overhangio/tutor/issues/1251

Some new rules that have been added are:

I: sort imports
N: check for pep8-naming standards
W292: check for missing extra line at EOF

Some of our lines, particularly in config, break the 88 character line length limit. For that, we add a # noqa: E501 to let ruff know to ignore the rule for that line
2025-08-05 15:42:29 +05:00
Overhang.IO
863babcecf Merge remote-tracking branch 'origin/release' 2025-04-10 06:10:55 +00:00
Danyal Faheem
a4c4b6b158
fix: remove deprecated filter_scopes from import_dashboard script (#66)
Reference issue: https://github.com/overhangio/tutor-cairn/pull/53/files\#r2034772248
Filter_scopes have been deprecated as of Superset 4.0.0
We have also migrated away from filter box to native filters as of #53.
2025-04-10 11:09:53 +05:00
Overhang.IO
ce8fd488aa Merge remote-tracking branch 'origin/release' 2025-04-03 07:45:35 +00:00
Danyal Faheem
2c1492169c
feat: enable alerts and reports in superset (#54)
* feat: enable alerts and reports in superset
fixes #46
2025-04-03 12:43:03 +05:00
Overhang.IO
50277142c7 Merge remote-tracking branch 'origin/release' 2025-04-03 07:42:01 +00:00
Danyal Faheem
d5015a0860
fix: make superset ports consistent in local and dev (#61)
Superset was running on 2247 port in dev mode and on 8000 in local mode
We now make this consistent so that superset runs on 2247 in both local and dev
2025-04-03 12:40:55 +05:00
Danyal Faheem
acd14969de
fix: lms.startup -> django.setup in import courses script (#60)
lms.startup has been removed as of https://github.com/openedx/edx-platform/pull/36302
Therefore, we move to the original django.setup now
2025-03-26 17:00:37 +05:00
Danyal Faheem
16d018625f
fix: migrate to native filters on default course overview dashboard from filter box charts (#53) 2025-03-25 19:14:17 +05:00
Danyal Faheem
04f4275236
fix: do not add cairn-postgresql and cairn-clickhouse dependencies when they are running externally (#57)
* fix: don't add cairn-postgresql as a dependency when CAIRN_RUN_POSTGRESQL is false

* fix: don't manage cairn-clickhouse permissions CAIRN_RUN_CLICKHOUSE is false

* fix: add missing CAIRN_POSTGRESQL_HOST and CAIRN_POSTGRESQL_PORT settings to allow usage with external postgresql DBs
2025-03-14 17:48:06 +05:00
Danyal-Faheem
be91f0741d feat: upgrade clickhouse base image 2024-11-29 22:20:11 +05:00
Régis Behmo
5c99bb477f docs: *.local.edly.io -> *.local.openedx.io
The default URL to run a local platform switched from local.edly.io to
local.openedx.io. This changes makes it clearer for everyone that Tutor
is to run Open edX.

See: https://github.com/overhangio/tutor/issues/1120
2024-10-17 08:36:40 +02:00
Danyal Faheem
e1fd75464c
feat: auto import course structure on course publish (#43) 2024-09-02 18:11:13 +05:00
Régis Behmo
b47e52195a fix: docker build deprecation warnings
With the latest Docker upgrade, we got the following warnings during
build:

	FromAsCasing: 'as' and 'FROM' keywords' casing do not match
	LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format
2024-06-21 17:12:57 +02:00
FahadKhalid210
90a519c7dd upgrade to redwood 2024-06-20 03:19:41 +02:00
FahadKhalid210
d816204b36 improved code 2024-05-08 09:57:43 +05:00
FahadKhalid210
b0a96c50b8 update cors and readme 2024-05-08 09:57:43 +05:00
FahadKhalid210
372e04309a adde cors 2024-05-08 09:57:43 +05:00
Fahad Khalid
2b02ef803b Update 0012_modify_course_enrollments.sql 2024-05-06 11:06:14 +05:00
FahadKhalid210
3007465f21 removed comments from docker 2024-05-06 11:06:14 +05:00
FahadKhalid210
c84c912a3b upgrade clickhouse 2024-05-06 11:06:14 +05:00
FahadKhalid210
b2438247cd update user activity query 2024-04-22 10:14:37 +05:00
Fahad Khalid
6c7972c7e0
feat: Convert user_id field from Int64 to UInt64
Close #12
2024-01-23 09:49:04 +01:00
FahadKhalid210
ce88178a2b feat: upgrade to quince 2023-12-11 18:22:16 +01:00
Régis Behmo
86c3798129 local.overhang.io -> local.edly.io
This is related to https://github.com/overhangio/tutor/issues/945
2023-12-09 15:54:28 +01:00
FahadKhalid210
710761251a sync auth roles updated 2023-11-15 15:03:31 +05:00
Régis Behmo
43453166bc fix: convert graded field to boolean 2023-10-10 15:44:56 +05:00
Ravi Khetani
8e6b645b70 fix: mismatching redirect uri, when running behind web proxy 2023-09-07 18:11:12 +02:00
Muhammad Faraz Maqsood
02b29e64d7
feat: add graded field to course_blocks table
---------

Co-authored-by: Muhammad Faraz  Maqsood <faraz.maqsood@a006-01130.home>
2023-08-28 09:06:50 +02:00
Régis Behmo
80e8538037 fix: assign proper database name to superset user
When running `do cairn-createuser`, the created db did not have the
right name. If the user had been created earlier with SSO, then the
Clickhouse DB did not exist.
2023-08-19 08:17:52 +02:00
Jayram Nai
e4ca341e53 fix: user creation issue with Palm 2023-07-17 10:16:52 +02:00
Régis Behmo
5bf17dda91 feat: upgrade to Palm
This upgrade includes SSO login. Finally! We can now login to Superset
via the LMS. Thanks to OARS for providing the base security manager
implementation!
2023-06-15 00:13:57 +02:00
Régis Behmo
a7fe5914c6 feat: enable dashboard embedding by default
Embedding is allowed per domain for admin users.
2023-05-09 09:16:01 +02:00
Régis Behmo
490565333e fix: run open edx behind a web proxy
Without the ENABLE_PROXY_FIX setting, running Open edX behind a web
proxy leads superset to redirect to http, and to the lms login page.
2023-04-13 11:19:44 +02:00
Régis Behmo
b5940bab8c fix: clickhouse image building in the UK
CI was failing during `apt update` with the following error:

	E: The repository 'https://repo.clickhouse.com/deb/stable main/ Release' does not have a Release file.

Note that this error was occurring in the UK and Germany, but not in
France.
2023-03-17 09:16:55 +01:00
Régis Behmo
237432a930 fix: clickhouse client permission error
Clickhouse client command was triggering a permission denied error:

$ tutor local run cairn-clickhouse cairn-client
Code: 586. DB::ErrnoException: Cannot create file:
//.clickhouse-client-history, errno: 13, strerror: Permission denied.
(CANNOT_CREATE_FILE)

Traceback (most recent call last):
  File "/scripts/cairn", line 161, in <module>
    main()
  File "/scripts/cairn", line 62, in main
    args.func(args)
  File "/scripts/cairn", line 68, in command_client
    subprocess.check_call(get_client_command())
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['clickhouse', 'client',
'--host', 'cairn-clickhouse', '--port', '9000', '--user', 'openedx',
'--password', 'xrIDmynTAiDuJeVZc5ar', '--multiline', '--multiquery',
'--database', 'openedx']' returned non-zero exit status 74.

This was because the home of the cairn client was set to "/".
2023-03-16 16:29:57 +01:00
Régis Behmo
56797b0a06 fix: browser tab crash on large course completion chart
"Course completion" was causing browser crashes when it attempted to display
10k course items (which is the maximum allowed). Displaying 10000 bars does not
make sense anyway, so we threshold this number to 100.
2023-01-05 11:40:48 +01:00
Régis Behmo
41b0e5bcc8 feat: upgrade to olive 2022-11-24 19:03:19 +01:00
Régis Behmo
281e4ce7e6 fix: correctly configure redis instance
Superset was ignoring the cairn-redis container, so we decided to remove it.
But the superset celery worker was writing to the /0 database, which conflicts
with the default celery database from the lms/cms. We fix this issue by running
in a different database.
The CELERY_RESULT_BACKEND seemed to be completely useless, so we got rid of it.
2022-10-17 15:47:21 +02:00
Régis Behmo
f398600152 fix: superset user creation with existing email address
When creating a new user, but with an email address already associated
to a different user, the `cairn createuser` script crashes with an
obscure error. This slightly improves the error messsage.

See: https://discuss.openedx.org/t/cairn-password-reset/8226
2022-09-20 09:17:34 +02:00
Régis Behmo
3fa702356d feat: make it possible to parse 'timestamp' fields instead of 'time'
This is necessary for some customers who are not using the
common.djangoapps.track.shim.LegacyFieldMappingProcessor in
settings.EVENT_TRACKING_BACKENDS.
2022-07-04 10:07:15 +02:00
Régis Behmo
6d1947ef0b fix: broken init because of mysql's API change 2022-06-27 10:53:11 +02:00
Régis Behmo
059546ab8a feat: add "cairn-superset-settings" patch 2022-05-09 16:33:45 +02:00
Régis Behmo
bab403c361 feat: Superset language
A nice language flag will be added to the superset sidebar when the
LMS/CMS have a different language.
2022-03-21 09:57:55 +01:00
Régis Behmo
ee3dbb912f harmonize setting names 2022-03-17 10:05:42 +01:00
Régis Behmo
2e28c5d551 fix: "unhealthy" superset containers
Superset container were reported as "unhealthy" because the healthcheck
was not testing the right port.
2022-03-09 09:55:41 +01:00
Régis Behmo
54049ee28a feat: upgrade to maple 2021-12-20 22:44:40 +01:00
Régis Behmo
546a0cf8f7 feat: upgrade to maple 2021-12-13 08:39:39 +01:00
Régis Behmo
1f6f16a9ce fix: dataset creation from physical table
We could not create datasets directly from physical tables. Turns out, this is
caused by the fact that reflection is enabled on the clickhouse databases in
Superset. To disable reflection, we manually specify the server version.

In the future, we must remove the server version from the database, and instead
specify engine_reflection=no in the DSN. We will be able to do that once a new
version of clickhouse-sqlalchemy has been released.

See:
https://github.com/xzkostyan/clickhouse-sqlalchemy/issues/151
https://github.com/xzkostyan/clickhouse-sqlalchemy/issues/140
This is preventing us from creating datasets from physical tables.
2021-11-25 12:21:31 +01:00
Régis Behmo
f4fcb3f12c fix: 0008 migration 2021-11-23 23:07:07 +01:00