Commit Graph

3531 Commits

Author SHA1 Message Date
Farhaan Bukhsh
8018dbed27 Document the COUNTRIES_FIRST setting in common.py
This change introduces a way to help filling form, with the constant we
can specify the order of the countries that should come first. This will
reduce the chance of commiting a mistake while filling form.

Signed-off-by: Farhaan Bukhsh <farhaan@opencraft.com>
2020-09-25 10:58:50 +05:30
Alan Evangelista
b9559fc934 Move Celery check task to the high priority queue
Currently, LMS uses 3 Celery workers: lms_default_1, lms_high_1 and
lms_high_mem_1. Each Celery worker sends messages to a single queue:
edx.core.default, edx.core.high and edx.core.high_mem, respectively.
The number of child processes per Celery worker is set to 1. Due to
this configuration, any task in a queue blocks all other tasks.

Currently, the Celery check task submitted by the /heartbeat?extended
LMS HTTP API endpoint runs in the default queue. When some slow task
(eg course grades creation) is sent to the default queue, it will
block the Celery check task, which will expire and the heartbeat endpoint
will fail. This patch moves the task to another queue which has
only shorter tasks and in which this problem will not occur.

Use a Django setting for the Celery check task routing key so that
it can be overriden by individual OpenEDX instances via JSON
env files.
2020-09-24 01:27:08 -07:00
Calen Pennington
9c4f746d8f Get rid of unused NoOpMigrationModules 2020-09-23 10:05:37 -04:00
Calen Pennington
4a120a9e26 Fix failures caused by removing lms/djangoapps from sys.path 2020-09-23 10:05:37 -04:00
Tim McCormack
0f33afc20a Fix my weird typo 2020-09-22 22:59:28 +00:00
Soban Javed
b7ca6d5619 Upgrade celery to 4.4.7
Replace django-celery with django-celery-results
Upgrade redis to latest
2020-09-22 16:20:45 +05:00
Talia Rhodes
ea889314c9 add Moodle & update enterprise version 2020-09-21 13:13:20 -04:00
Ned Batchelder
746646ee9c Merge pull request #25016 from open-craft/gabor/correct-lms-cms-config-file-names
Replace all .(lms|cms).(\w+|_)?\.json to .(lms|cms).(\w+|_)?\.yml
2020-09-21 10:12:46 -04:00
Ahtisham Shahid
986a448d9e Revert "ARCHBOM-1494: Refer to custom attributes, not metrics, especially with edx-django-utils (#25010)" (#25025)
This reverts commit ba9ee4e151.

Fixed Style lint issue
2020-09-21 13:48:00 +05:00
Sid Verma
735bc412d4 Add elasticsearch tests 2020-09-18 10:25:59 -04:00
Tim McCormack
328e790e8a Rename CookieMetricsMiddleware to CookingMonitoringMiddleware
This fixes a misuse of New Relic terminology. Here we are in fact using
custom attributes; custom metrics are a different thing that we may start
using in the future.
2020-09-18 14:25:50 +00:00
Tim McCormack
ba9ee4e151 ARCHBOM-1494: Refer to custom attributes, not metrics, especially with edx-django-utils (#25010)
This uses the new names introduced in edx-django-utils
3.8.0 (edx/edx-django-utils#59), which we're already using, as
well as updating a few other locations where we incorrectly refer
to New Relic custom metrics instead of custom attributes.

Includes a couple of unrelated lint fixes in a file I modified.
2020-09-18 13:33:50 +00:00
Gábor Boros
6ccd6c308d docs(lms and studio): Replace all .(lms|cms).(\w+|_)?\.json to .(lms|cms).(\w+|_)?\.yml 2020-09-18 10:44:14 +02:00
Régis Behmo
a4ba4ae45e Clarify many feature toggle annotations across all applications 2020-09-16 15:20:43 +02:00
Régis Behmo
7d93715880 Rename toggle_expiration_date to toggle_target_removal_date
This is part of the changes brought by code-annotations==0.7.0
2020-09-16 15:19:16 +02:00
Régis Behmo
98a13d6a7e Remove deprecated toggle_status annotation
This annotation is deprecated since code-annotations==0.7.0
2020-09-16 15:19:15 +02:00
Régis Behmo
d1f9e769d0 Simplify the toggle_use_case annotation
Since code-annotations==0.7.0, incremental_release, launch_date,
monitored_rollout, graceful_degradation, beta_testing are all considered
as "temporary" use cases.
2020-09-16 15:16:13 +02:00
Régis Behmo
ab0e21455a Get rid of the toggle_category annotation, now deprecated
Since code-annotations==0.7.0, this annotation is not used anymore.
2020-09-16 15:16:13 +02:00
Régis Behmo
7dc460d50a Wrap toggle annotation lines with multiline comments
This takes advantage of the new multiline annotation format with
single-line comment prefix, from code-annotations.
2020-09-16 15:16:12 +02:00
Régis Behmo
d34aa1c643 Document lms/djangoapps/courseware feature toggles 2020-09-16 15:15:46 +02:00
Régis Behmo
c8911b6282 Document lms/djangoapps/course_api feature toggles 2020-09-16 15:15:45 +02:00
Régis Behmo
c8892d321b Document openedx/core/djangoapps/user_authn feature toggles 2020-09-16 15:14:56 +02:00
Régis Behmo
9db086bf2e Document openedx/core/djangoapps/oauth_dispatch feature toggles 2020-09-16 15:14:56 +02:00
Régis Behmo
6fc322e32f Document common/djangoapps/third_party_auth feature toggles 2020-09-16 15:14:56 +02:00
Troy Sankey
fce015e08c Create new analytics_exporter.py settings
These new settings files are intended to be used by the Analytics
Exporter automation managed by the DE team.  The Analytics Exporter must
be able to simply clone edx-platform, install requirements, fetch
remote-config, then just run management commands without needing to run
any ansible or pull down any docker/AMI images.  Since the theming app
includes a check that fails if the themes base dir cannot be found, and
that check runs on app startup, we must disable the app.

DENG-379
2020-09-10 21:21:47 -04:00
Zainab Amir
8f83d10528 Add Mechanism to enable logistration MFE (#24908)
Add a toggle that in conjuction with REDIRECT_TO_ACCOUNT_MICROFRONTEND
enables or disables logistration MFE.

VAN-3
2020-09-08 17:46:50 +05:00
Kyle McCormick
b24cb48eb0 Decentralized Devstack changes: Add and push Dockerfile; add decentralized devstack settings (#24666)
* Add and push Dockerfile; add decentralized devstack settings

Co-Authored-By: Diana Huang <dkh@edx.org>
Co-Authored-By: Kyle McCormick <kmccormick@edx.org>

* Remove Python requirements hack

Remove the attempted optimization to the installation of Python
package dependencies.  The dependencies in edx-platform change
about three times per day, so this was of dubious value.  And
because npm is run through nodeenv, which is a Python package,
the Python dependencies installation has to happen first.

* ARCHBOM-1439: Changing workdir to /edx/app/edxapp/edx-platform (#24835)

Context: The Dockerfile tries to stay in sych with legacy stuff.
In the ansible we configure the directory structure such that things
relating to the app but not in the codebase,
such as the env file wind up in /edx/app/edxapp/.
And the codebase winds up in /edx/app/edxapp/edx-platform.

I think due to accident, the dockerfile does
/edx/app/edx-platform/edx-platform instead of /edx/app/edxapp/edx-platform.

This commit tries to have Dockerfile more reflect what is currently happening in production

* Update ports for decentralized devstack ARCHBOM-1447 (#24841)

Switch from the LMS ports we've historically used for NGINX to those used for gunicorn, and fix the Studio ports to match the ones we've historically used for its gunicorn service. Also removed some leftover bits of the requirements hack.

Co-authored-by: Adam Blackwell <ablackwell@edx.org>
Co-authored-by: Diana Huang <dkh@edx.org>
Co-authored-by: jinder1s <msingh@edx.org>
Co-authored-by: Jeremy Bowman <jbowman@edx.org>
Co-authored-by: Manjinder Singh <49171515+jinder1s@users.noreply.github.com>
2020-09-03 11:47:08 -04:00
Adam Stankiewicz
d7e6e01bae Map admin feature roles to admin system role (#24897) 2020-09-02 15:45:33 -04:00
Saleem Latif
9b72042bf4 Merge pull request #24854 from edx/saleem-latif/3336
ENT-3336: Added default for new enterprise setting INTEGRATED_CHANNELS_API_CHUNK_TRANSMISSION_LIMIT
2020-08-28 14:04:15 +05:00
Saleem Latif
c5502057b1 Added default for new enterprise setting INTEGRATED_CHANNELS_API_CHUNK_TRANSMISSION_LIMIT 2020-08-28 13:17:49 +05:00
Soban Javed
e945013b39 Make redis broker compatible with celery 4.0 2020-08-27 18:46:33 +05:00
Troy Sankey
6e8a114b96 Merge pull request #24823 from edx/pwnage101/cleanup-unused-config-root
Cleanup unused CONFIG_ROOT variable and dead code.
2020-08-26 10:20:55 -04:00
Uzair Rasheed
ea69e0d4b6 Merge pull request #24664 from edx/ratelimit-registration-api
Ratelimit the registration endpoint
2020-08-21 17:39:46 +05:00
Troy Sankey
3b6b066c72 Cleanup unused CONFIG_ROOT variable and dead code.
From what I've gleaned, CONFIG_FILE (and LMS_CFG and STUDIO_CFG
environment variables) supercedes CONFIG_ROOT.  There's no code anymore
that reads the value of the CONFIG_ROOT django setting, and in turn the
CONFIG_ROOT environment variable.

Tangentially related to DENG-369
2020-08-20 16:30:33 -04:00
Kyle McCormick
926a40def0 Enable ORGANIZATIONS_APP for devstack Studio (#24820)
It is already enabled in devstack LMS, stage LMS/Studio,
and prod LMS/Studio.

However, it is currently disabled in edge LMS/Studio,
and as far as I know, sandbox LMS/Studio as well as the
default Open edX LMS/Studio.

We would like to move towards enabling it globally by
default, and enabling it in devstack Studio would be
a first step towards that.
2020-08-20 12:19:39 -04:00
uzairr
7bc17c7dd9 Ratelimit the registration endpoint
PROD-880
2020-08-20 18:38:26 +05:00
Kyle McCormick
a16ad52250 Devstack: Allow login redirection from LMS to several MFEs (#24808)
I added all MFEs whose ports I know from the Devstack
README. Other MFE authors should feel free to add their
'localhost:PORT' entry here.
2020-08-20 08:28:28 -04:00
chavesj
c09914b7de removing ENTERPRISE_CUSTOMERS_EXCLUDED_FROM_CATALOG list 2020-08-12 17:51:58 -04:00
Aura Milena Alba
0192de00b2 [BD-10] [DEPR-92] Remove scss files that use pattern library 2020-08-12 13:12:36 -04:00
Manjinder Singh
c76ed6ae45 Extracting plugin app from edx-platform (#24678)
* Moving plugins infrastructure to edx-django-utils
This PR extracts the code that enables plugins in edx-platform and puts it in edx-django-utils. This is done to allow other IDAS to add plugin functionality.
2020-08-12 07:48:53 -04:00
Zia Fazal
601dc79ded Merge pull request #24743 from edx/ziafazal/e2e-tests-devstack
[BD-18] Disable django debug toolbar when running e2e tests
2020-08-12 09:51:47 +05:00
Adolfo R. Brandes
dff0e2a564 Clean up CORS-related settings 2020-08-07 09:22:01 -04:00
zia.fazal@arbisoft.com
03d788e1c3 Changes to run e2e test on devstack 2020-08-07 09:55:47 +05:00
Tim McCormack
b64c8c2283 ARCHBOM-1281: Vendor in AppleID backend to support Sign-In With Apple (#24623)
This version contains necessary fixes for validating the "audience"
component of the JWT, as seen in ARCHBOM-1281. (I believe we'll need to
pass both the App ID and the Service ID in an additional AUDIENCE "other
settings" key for this third-party-auth backend.)

Vendored from version 3.4.0 (9d93069564a60495e0ebd697b33e16fcff14195b)
social-core:
https://github.com/python-social-auth/social-core/blob/3.4.0/social_core/backends/apple.py

v3.4.0 is unreleased at this time (2020-07-28) and contains several
necessary bugfixes over 3.3.3 for AppleID, but also causes the
TestShibIntegrationTest.test_full_pipeline_succeeds_for_unlinking_testshib_account
test in common/djangoapps/third_party_auth/tests/specs/test_testshib.py
to break (somehow related to social-core's change 561642bf which makes
a bugfix to partial pipeline cleaning). ARCHBOM-1389 filed to address
this at our convenience.

Note: 3.4.0 was not released to PyPI due to a broken test, so we might
see a 3.4.1 when it's actually released:
https://github.com/python-social-auth/social-core/issues/485
2020-08-06 20:11:23 +00:00
Nizar Mahmoud
c0b6260c3e Adds Custom Extra Fields to Course Blocks API through LMS Settings 2020-08-06 21:27:31 +03:00
Binod Pant
b14772055c Canvas integrated_channel from enterpise v3.4.40 (#24699) 2020-08-06 12:25:44 -04:00
Dillon Dumesnil
75f6937003 AA-261: Overridding Show Answer functionality for PLS courses
We noticed that since users can choose to reset their due dates,
they would have the ability to let due dates pass and then for any
assessment that allows viewing the answer after the due date would be
visible. The user could thus view all answers and then reset their
due dates to receive a perfect score.

This PR works to fix that issue by changing all show answer values
to not take into account being past the due date when inside a PLS
course.
2020-08-04 07:44:59 -07:00
Zachary Trabookis
7da15d108e Set SESSION_COOKIE_SAMESITE=Lax for devstack_docker environment by default to allow login to LMS service. This is a fix for devstack_docker default value set to Lax for DCS_SESSION_COOKIE_SAMESITE. It was defaulting to SameSite=None which requires a secure site which localhost site does not by default. Setting this SameSite cookie attribute to something other than None will continue to allow login to the LMS for devstack_docker environment. Regards to #23671 and https://discuss.openedx.org/t/lti-xblock-and-samesite/759/16
Set `SESSION_COOKIE_SAMESITE=Lax` for `devstack_docker` environment by default to allow login to LMS service.  This is a fix for `devstack_docker` default value set to `Lax` for `DCS_SESSION_COOKIE_SAMESITE`. It was defaulting to `SameSite=None` which requires a secure site which `localhost` site does not by default.  Setting this `SameSite` cookie attribute to something other than `None` will continue to allow login to the LMS for `devstack_docker` environment.  Regards to #23671 and https://discuss.openedx.org/t/lti-xblock-and-samesite/759/16
2020-07-30 12:29:43 -04:00
Jeff Chaves
e1bd970b46 ENT-2894: Use new welcome template when redirected from enterprise proxy login view (#24587)
* using new welcome template when redirected from enterprise proxy login view

* enabling safe redirects to enterprise learner portal from login in devstack

* ading admin portal to login redirect whitelist

* running make upgrade to version bump edx-enterprise
2020-07-24 17:40:42 -04:00
Robert Raposa
ef51a44794 move CodeOwnerMetricMiddleware from LMS (#24508)
The CodeOwnerMetricMiddleware is being moved from
edx-platform to edx-django-utils so it can be used
in multiple IDAs.

ARCHBOM-1356
2020-07-17 11:35:40 -04:00