Commit Graph

851 Commits

Author SHA1 Message Date
Tim McCormack
06969e6c50 feat: Add a script to enhance JWKs in preparation for move from pyjwkest (#32089)
* feat: Add a script to enhance JWKs in preparation for move from pyjwkest

This script accepts a signing JWK (presumably `JWT_PRIVATE_SIGNING_JWK`)
and ensures that it has all of the precomputed private numbers that are
required for top performance. This is necessary before moving away from
pyjwkest to PyJWT for signing JWTs. See issue
<https://github.com/openedx/edx-drf-extensions/issues/290>. (Alternatively,
one could remove the p, q, dp, dq, and qi params, but there is an unknown
performance cost to doing so as we are not currently caching these keys,
and the precompution happens on every load due to the way pyjwkest's API
works.)

* fixup! Upgrade devstack at the same time
2023-04-20 09:08:14 -04:00
Tim McCormack
b852344fcf build: Deduplicate mismatched pip.txt files that caused build failure (#32081)
There was a `requirements/pip.txt` with old versions, and a newer
`requirements/edx/pip.txt` managed via a `pip.in` file. The old one was
used in most places, but came out of sync with pip-tools.txt, which was
managed properly. Eventually this caused a `pip check` failure due to the
mismatch.

This should resolve at least part of https://github.com/edx/edx-arch-experiments/issues/267

This PR moves pip.in and pip-tools.in and their corresponding pin files
up to the `requirements/` dir, since they should be shared between the edx
and sandbox environments. This also has the effect of upgrading pip to
match the version in the file we've been uselessly upgrading.

Other improvements:

- Remove `-q` option from pip and pip-sync calls, as it was hiding some
  debugging information that would have resolved this sooner.
- Depend on `pre-requirements` from `compile-requirements`, rather than
  from `upgrade`. (The base target is the one that actually needs it.)
  This also lets us remove the explicit `pip install pip-tools` line.
- Install the recompiled pip and pip-tools files right away, not after the
  loop. When we upgrade pip-tools, we want to use the upgraded version,
  not the previous version. This requires moving the pip-tools.txt
  recompilation outside of the loop and into its own explicit line.
- Don't upgrade pip if we're not running `make upgrade` (respect the
  compile options).
- Remove apparently-unneeded `--no-emit-trusted-host --no-emit-index-url`
  options (we don't pass trusted-host or index-url options).
2023-04-17 17:21:48 +00:00
Awais Qureshi
a899d28b6d chore: upgraing boto3 and botocore versions. (#31925) 2023-03-17 18:01:25 +05:00
Kyle McCormick
cd24534653 build: run ShellCheck in CI (#31809)
build: run ShellCheck

Adds a ShellCheck check to edx-platform PRs and master,
using the shared workflow & template from the .github repo.
This will become a "required" check once it passes for 2 straight weeks on master.

Brings all existing shell scripts into compliance with ShellCheck.
2023-03-10 16:10:56 +00:00
Kyle McCormick
72e0043d1d refactor!: remove unused provisioning scripts (#31811)
These scripts were written to replace some of the
Ansible provisioning steps in Devstack,
before tCRIL's focus turned to Tutor.

These scripts never ended up being used by Devstack, but
Devstack's maintainers did end up replacing
the Ansible provisioning steps with some direct
Bash commands in Devstack's provision-lms.sh:
23e16c1dda/provision-lms.sh (L51-L68)

Tutor has its own user & course provisioning scripts,
written in Sh using Tutor's jobs framework.

Thus, these scripts are no longer needed and do
not seem to be in use.
2023-02-22 11:22:12 -05:00
Kyle McCormick
b140b7e481 refactor!: remove unused update-assets-dev.sh (#31810)
The file was introduced as part of the "decentralized devstack" spike.
We wanted a working Dockerfile in the edx-platform root,
and we wanted to speed it up by not relying on Paver.

edx-platform now has a working Dockerfile, and it does not use this script.

The paver-free-assets initiative is being continued here:
https://github.com/openedx/edx-platform/issues/31798
It will result in a new, prod-ready asset building script.
2023-02-22 10:29:51 -05:00
Kyle McCormick
f3b658dc0b build!: remove Jenkins CI scripts (#31812)
These files were used to run tests on
build.testeng.edx.org, a Jenkins instance.

All tests have since been moved over to
GitHub Actions. The build.testeng.edx.org
instance is decomissioned.

Removed files include:
- scripts/jenkins-*.sh
- scripts/Jenkinsfiles/*
- scripts/xdist/*

Note on xdist scripts: pytest-xdist in general is still
useful for local test runs in order to take advantage
of all available CPU cores, but the scripts here were
specifically for running tests on multiple remote machines,
particularly via Jenkins.
2023-02-22 09:14:48 -05:00
Zubair Shakoor
141d6d4ce6 refactor: remove all paver code related to python unit tests (#31180) 2023-01-18 17:41:56 +05:00
Awais Qureshi
5f95a78a17 build: Unpin few packages. (#31554)
* build: Unpin few packages. These pins were added to minimize the changeset.

* chore: Updating Python Requirements (#31555)

Co-authored-by: edX requirements bot <49161187+edx-requirements-bot@users.noreply.github.com>
2023-01-17 11:50:09 +05:00
Awais Qureshi
90f4f6543d build: Adding constraints to avoid multiple major upgrades. (#31551)
* build: Adding constraints to avoid multiple major upgrades
2023-01-16 16:24:34 +05:00
Saleem Latif
d7f2b555c7 Merge pull request #31434 from openedx/saleem-latif/ENT-6518-updates
ENT-6518: chore: Updated edx-enterprise version to 3.59.0
2022-12-13 11:31:39 +05:00
Tim McCormack
b8a34f0c57 build: Set Django version for tests more safely; drop support for non-GHA (#31387)
We have a need to lock the version of Django for production and tests, but
also to test on newer versions of Django so that we can get the repo ready
for long-term-support releases.

We've been doing that by extracting the `django==x.y.z` from the
pip-compiled files and moving it to a django.txt that is then co-installed
but can be overridden during tests. The problem is that this can result
in broken packages.

The approach here is to have `make test-requirements` continue to
ensure a consistent set of packages, and then install a different
Django on top of that in the CI script -- and call `pip check` to make
sure that combination isn't broken.

Adding Django 4.0 to the unit-tests.yml matrix will now correctly
result in this error and a failing job:
`django-splash 1.2.1 has requirement Django<4.0, but you have django 4.0.8.`

The other half of this is to change other CI runners to remove their
ability to control the Django version, since it's complicated to make
this work, and we probably only need it in unit-tests.yml. Convert them
to just use `make test-requirements`.

Also:

- Simplify handling of `pip --src` by setting `PIP_SRC` (rather than our
  own `PIP_SRC_DIR`, which pip ignores because `--src-dir` isn't an option
  that it knows). This is needed to allow `make test-requirements` to do
  the pip calls. An alternative would be to set a pip-options env var for
  the make target to use, but `PIP_SRC` already exists.
- Remove outdated modifications to common_constraints
- Add comment explaining why pylint tests need dev-requirements
2022-12-12 21:45:15 +00:00
Saleem Latif
0fcd4334f8 chore: Updated edx-enterprise version to 3.59.0 2022-12-12 17:26:02 +05:00
edX requirements bot
3744647bd6 chore: Updating Python Requirements 2022-10-03 17:21:24 +05:00
UsamaSadiq
897cb3617f refactor!: delete common/lib and related usages 2022-09-22 14:16:34 +05:00
Kyle McCormick
29cebb7f92 Revert "chore: Updating Python Requirements"
This reverts commit 6d00e4b320.
2022-09-20 06:35:46 -04:00
edX requirements bot
6d00e4b320 chore: Updating Python Requirements 2022-09-19 13:54:21 -04:00
Sarina Canelake
cf5fa64bd7 fix: update repo paths that stayed in the edx org
Co-authored-by: Kyle McCormick <kdmc@pm.me>
2022-09-15 14:52:28 -04:00
Sarina Canelake
4a2f231302 fix: fix github url strings (org edx -> openedx) 2022-09-15 14:52:28 -04:00
edX requirements bot
2d0f7ccc5c chore: Updating Python Requirements (#30982)
Co-authored-by: Mohammad Ahtasham ul Hassan <ahthassan74@gmail.com>
2022-09-13 12:48:48 +05:00
edX requirements bot
08d4538c8b Python Requirements Update (#30917)
* chore: Updating Python Requirements
* fix: fix relative paths in requirements

Co-authored-by: UsamaSadiq <usama.sadiq@arbisoft.com>
2022-08-30 15:12:50 +05:00
Muhammad Soban Javed
d053bba952 Revert "Revert "refactor: move common/lib/capa/capa to xmodule/capa" (#30762)"
This reverts commit 4463ee751d.
2022-07-27 15:36:08 +05:00
edX requirements bot
fee05710f4 Python Requirements Update (#30780)
* chore: Updating Python Requirements
2022-07-26 17:59:39 +05:00
Muhammad Soban Javed
4463ee751d Revert "refactor: move common/lib/capa/capa to xmodule/capa" (#30762) 2022-07-21 18:22:15 +05:00
Muhammad Soban Javed
06064b237b Merge pull request #30403 from openedx/iamsobanjaved/BOM-2582-move-common-lib-capa
refactor: move common/lib/capa/capa to xmodule/capa
2022-07-21 16:27:47 +05:00
Usama Sadiq
455521d686 fix: pin charset normalizer version (#30749)
* fix: pin charset-normalizer<2.1.0
* fix: pin markdown<3.4.0 version

Co-authored-by: edX requirements bot <49161187+edx-requirements-bot@users.noreply.github.com>
2022-07-20 14:03:40 +05:00
Soban Javed
9eba9f983a refactor!: move common/lib/capa/capa to xmodule/capa
As part of dissolving our sub-projects in edx-platform, we are moving this package under the xmodule directory.
We have fixed all the occurences of import of this package and also fixed all documents related references.
This might break your platform if you have any reference of `import capa` or `from capa import` in your codebase or in any Xblock.

Ref: https://openedx.atlassian.net/browse/BOM-2582
2022-07-19 12:20:04 +05:00
Muhammad Umar Khan
a389a9ff10 Revert "Revert "refactor: move xmodule folder to root"" 2022-06-20 18:20:06 +05:00
Muhammad Umar Khan
d890f06507 Revert "refactor: move xmodule folder to root" 2022-06-20 16:03:48 +05:00
M Umar Khan
a91df0c40f refactor: move xmodule folder to root
- Moving xmodule folder to root as we're dissolving sub-projects of common folder in edx-platform
    - More info: https://openedx.atlassian.net/browse/BOM-2579
- -e common/lib/xmodule has been removed from the requirements as xmodule has itself become the part of edx-platform and not being installed through requirements
- The test files common/lib/xmodule/test_files/ have been removed as they are not being used anymore
2022-06-20 14:33:45 +05:00
irfanuddinahmad
00c808c9f7 chore: upgraded edx-enterprise 2022-06-16 15:50:11 +05:00
edX requirements bot
a10661ddbc chore: Updating Python Requirements (#30581) 2022-06-14 15:12:57 +05:00
Awais Qureshi
02e29168b2 feat!: Removing sandbox folder from platform and installing it from p… (#30402)
* feat!: common/lib/sandbox-packages folder moved to a new library.
2022-06-01 16:02:13 +05:00
Kyle McCormick
25df9ca420 refactor: make safe_lxml an ordinary folder in openedx/core/lib (#25689) 2022-05-24 15:35:23 +05:00
edX requirements bot
96a7ebc95c chore: Updating Python Requirements (#30467) 2022-05-24 14:14:17 +05:00
code-review-doctor
0f24c3b749 fix: some tests are skipped due to duplicate names (#29959)
Co-authored-by: Rebecca Graber <rebecca.s.graber@gmail.com>
2022-04-22 14:31:01 -04:00
Awais Qureshi
b97af6ac6e build: Removing un-used django versions from tox and other places. (#30270) 2022-04-19 16:41:29 +05:00
Robert Raposa
c51a0c3e22 Merge pull request #30081 from openedx/robrap/ARCHBOM-2054-move-cookie-monitoring-middleware
refactor: CookieMonitoringMiddleware moved to edx-django-utils
2022-03-18 09:07:50 -04:00
Robert Raposa
9fa79809d8 refactor: CookieMonitoringMiddleware moved to edx-django-utils
The CookieMonitoringMiddleware and its related script
moved to edx-django-utils.

ARCHBOM-2054
2022-03-17 16:59:00 -04:00
Robert Raposa
aee65d55de fix: remove Jenkins dependency on script input (#30087)
The script for finding order dependency test failures
was dependent on inputs from Jenkins logs which we no
longer use.

This quick fix was to just use a list of tests with the
right format. A future iteration might process a new type
of output, like that from (pytest -v).
2022-03-17 16:56:54 -04:00
Usama Sadiq
65fe15f623 build: update mongo version in runner image (#30041)
* build: update mongo version in runner image
2022-03-14 10:20:38 +05:00
Rebecca Graber
eba76109c4 feat: remove xss-commitlint test (#30025) 2022-03-08 14:18:45 -05:00
Aarif
aa31f3b255 refactor: remove a11y tests setup (#29813) 2022-02-15 18:56:34 +05:00
edX requirements bot
2862fa8775 chore: Updating Python Requirements (#29925) 2022-02-15 13:20:47 +05:00
Carlos Muniz
8e8d8404be Carlos muniz/symmath removal unrevert (#29912)
* Revert "Merge pull request #29909 from openedx/revert-29869-Carlos-Muniz/symmath-removal"

This reverts commit 8c0db8ddff, reversing
changes made to 1156c62014.

* fix: Remove misplaced `-e`

`-e` was wrongfully placed in front of `common/lib/sandbox-packages`,
which may have most likely been causing the edxAPP to break.

* fix: Change regex to apply to right dirs

`py38.txt` does not include `common/lib/xmodule` so it doesn't match the
regex. Therefore, it never got its lines in `common/lib/sandbox-packages`
fixed. If we change the regex to match any `common/lib/<packagename>` it
should work correctly.
2022-02-14 10:26:40 -05:00
Phillip Shiu
6ac1dd688a Revert "Remove symmath from edx-platform" 2022-02-11 10:30:08 -05:00
Carlos Muniz
d5a41ec9f3 feat: Change symmath to xmodule
scripts/post-pip-compile.sh uses common/lib/symmath/ as its sample
directory to clean up after using pip-tools. Since symmath has been
removed, xmodule, the largest of the directories in common/lib/ will
replace it.
2022-02-10 15:06:20 -05:00
Carlos Muniz
b80d8d6030 refactor: Remove all mentions of symmath 2022-02-10 14:55:22 -05:00
edX requirements bot
429cee1fb2 chore: Updating Python Requirements (#29849) 2022-02-01 14:35:00 +05:00
Muhammad Soban Javed
4e22a38ca5 test: run openedx and common tests with both lms and cms settings (#29676) 2022-01-21 11:58:57 +05:00