Merge branch 'master' into dependabot/github_actions/codecov/codecov-action-5
This commit is contained in:
13
.github/CODEOWNERS
vendored
13
.github/CODEOWNERS
vendored
@@ -1,9 +1,5 @@
|
||||
# This does not cover all the code in edx-platform but it's a good start.
|
||||
|
||||
# Ensure that the team responsible for upgrades sees any PRs that would
|
||||
# add GitHub-hosted dependencies to that platform.
|
||||
requirements/edx/github.in @openedx/2u-arbi-bom
|
||||
|
||||
# Core
|
||||
common/djangoapps/student/
|
||||
common/djangoapps/student/models/__init__.py @openedx/2u-tnl
|
||||
@@ -22,7 +18,7 @@ openedx/core/djangoapps/enrollments/ @openedx/2U-
|
||||
openedx/core/djangoapps/heartbeat/
|
||||
openedx/core/djangoapps/oauth_dispatch
|
||||
openedx/core/djangoapps/user_api/ @openedx/2U-aperture
|
||||
openedx/core/djangoapps/user_authn/ @openedx/2U-vanguards
|
||||
openedx/core/djangoapps/user_authn/ @openedx/2U-infinity
|
||||
openedx/core/djangoapps/verified_track_content/ @openedx/2u-infinity
|
||||
openedx/features/course_experience/
|
||||
xmodule/
|
||||
@@ -58,3 +54,10 @@ lms/templates/dashboard.html @openedx/ax
|
||||
# Ensure minimal.yml stays minimal, this could be a team in the future
|
||||
# but it's just me for now, others can sign up if they care as well.
|
||||
lms/envs/minimal.yml @feanil
|
||||
|
||||
# Ensure that un-necessary changes don't happen to the settings files as we're cleaning them up.
|
||||
lms/envs/production.py @feanil @kdmccormick
|
||||
cms/envs/production.py @feanil @kdmccormick
|
||||
|
||||
# Ensure that this file is only used when strictly necessary
|
||||
requirements/edx/github.in @feanil @kdmccormick
|
||||
|
||||
66
.github/renovate.json5
vendored
66
.github/renovate.json5
vendored
@@ -1,39 +1,45 @@
|
||||
// This file is written in "JSON5" (https://json5.org/) so that we can use comments.
|
||||
{
|
||||
"extends": [
|
||||
"config:base",
|
||||
"schedule:weekly",
|
||||
":automergeLinters",
|
||||
":automergeMinor",
|
||||
":automergeTesters",
|
||||
":enableVulnerabilityAlerts",
|
||||
":semanticCommits",
|
||||
":updateNotScheduled"
|
||||
extends: [
|
||||
'config:recommended',
|
||||
'schedule:weekly',
|
||||
':automergeLinters',
|
||||
':automergeMinor',
|
||||
':automergeTesters',
|
||||
':enableVulnerabilityAlerts',
|
||||
':semanticCommits',
|
||||
':updateNotScheduled',
|
||||
],
|
||||
"packageRules": [
|
||||
packageRules: [
|
||||
{
|
||||
"matchDepTypes": [
|
||||
"devDependencies"
|
||||
matchDepTypes: [
|
||||
'devDependencies',
|
||||
],
|
||||
"matchUpdateTypes": [
|
||||
"lockFileMaintenance",
|
||||
"minor",
|
||||
"patch",
|
||||
"pin"
|
||||
matchUpdateTypes: [
|
||||
'lockFileMaintenance',
|
||||
'minor',
|
||||
'patch',
|
||||
'pin',
|
||||
],
|
||||
"automerge": true
|
||||
automerge: true,
|
||||
},
|
||||
{
|
||||
"matchPackagePatterns": ["@edx", "@openedx"],
|
||||
"matchUpdateTypes": ["minor", "patch"],
|
||||
"automerge": true
|
||||
}
|
||||
matchUpdateTypes: [
|
||||
'minor',
|
||||
'patch',
|
||||
],
|
||||
automerge: true,
|
||||
matchPackageNames: [
|
||||
'/@edx/',
|
||||
'/@openedx/',
|
||||
],
|
||||
},
|
||||
],
|
||||
ignoreDeps: [
|
||||
'karma-spec-reporter',
|
||||
],
|
||||
timezone: 'America/New_York',
|
||||
prConcurrentLimit: 3,
|
||||
enabledManagers: [
|
||||
'npm',
|
||||
],
|
||||
// When adding an ignoreDep, please include a reason and a public link that we can use to follow up and ensure
|
||||
// that the ignoreDep is removed.
|
||||
// This can be done as a comment within the ignoreDeps list.
|
||||
"ignoreDeps": [],
|
||||
"timezone": "America/New_York",
|
||||
"prConcurrentLimit": 3,
|
||||
"enabledManagers": ["npm"]
|
||||
}
|
||||
|
||||
@@ -17,4 +17,3 @@ on:
|
||||
jobs:
|
||||
add_remove_labels:
|
||||
uses: openedx/.github/.github/workflows/add-remove-label-on-comment.yml@master
|
||||
|
||||
|
||||
12
.github/workflows/check_python_dependencies.yml
vendored
12
.github/workflows/check_python_dependencies.yml
vendored
@@ -14,27 +14,23 @@ jobs:
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: actions/checkout@v4
|
||||
|
||||
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
|
||||
|
||||
- name: Install repo-tools
|
||||
run: pip install edx-repo-tools[find_dependencies]
|
||||
|
||||
- name: Install setuptool
|
||||
run: pip install setuptools
|
||||
|
||||
run: pip install setuptools
|
||||
|
||||
- name: Run Python script
|
||||
run: |
|
||||
find_python_dependencies \
|
||||
--req-file requirements/edx/base.txt \
|
||||
--req-file requirements/edx/testing.txt \
|
||||
--ignore https://github.com/edx/codejail-includes \
|
||||
--ignore https://github.com/edx/braze-client \
|
||||
--ignore https://github.com/edx/edx-name-affirmation \
|
||||
--ignore https://github.com/mitodl/edx-sga \
|
||||
--ignore https://github.com/edx/token-utils \
|
||||
--ignore https://github.com/open-craft/xblock-poll
|
||||
|
||||
|
||||
43
.github/workflows/docker-publish.yml
vendored
43
.github/workflows/docker-publish.yml
vendored
@@ -1,43 +0,0 @@
|
||||
name: Push Docker Images
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
# Push image to GitHub Packages.
|
||||
# See also https://docs.docker.com/docker-hub/builds/
|
||||
push:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.event_name == 'push'
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
variant:
|
||||
- "lms_dev"
|
||||
- "cms_dev"
|
||||
- "cms"
|
||||
- "lms"
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||
|
||||
- name: Build and push lms/cms base docker images
|
||||
env:
|
||||
DOCKERHUB_PASSWORD: ${{ secrets.DOCKERHUB_PASSWORD }}
|
||||
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
run: make docker_tag_build_push_${{matrix.variant}}
|
||||
15
.github/workflows/js-tests.yml
vendored
15
.github/workflows/js-tests.yml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
strategy:
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
node-version: [18, 20]
|
||||
node-version: [20]
|
||||
python-version:
|
||||
- "3.11"
|
||||
|
||||
@@ -26,9 +26,10 @@ jobs:
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
cache: 'npm'
|
||||
|
||||
- name: Setup npm
|
||||
run: npm i -g npm@10.5.x
|
||||
run: npm i -g npm@10.7.x
|
||||
|
||||
- name: Install Firefox 123.0
|
||||
run: |
|
||||
@@ -63,14 +64,12 @@ jobs:
|
||||
run: |
|
||||
make base-requirements
|
||||
|
||||
- uses: c-hive/gha-npm-cache@v1
|
||||
- name: Install npm
|
||||
run: npm ci
|
||||
|
||||
- name: Run JS Tests
|
||||
env:
|
||||
TEST_SUITE: js-unit
|
||||
SCRIPT_TO_RUN: ./scripts/generic-ci-tests.sh
|
||||
run: |
|
||||
npm install -g jest
|
||||
xvfb-run --auto-servernum ./scripts/all-tests.sh
|
||||
npm run test
|
||||
|
||||
- name: Save Job Artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
|
||||
43
.github/workflows/publish-ci-docker-image.yml
vendored
43
.github/workflows/publish-ci-docker-image.yml
vendored
@@ -1,43 +0,0 @@
|
||||
name: Push CI Runner Docker Image
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
schedule:
|
||||
- cron: "0 1 * * 3"
|
||||
|
||||
jobs:
|
||||
push:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
# This has to happen after checkout in order for gh to work.
|
||||
- name: "Cancel scheduled job on forks"
|
||||
if: github.repository != 'openedx/edx-platform' && github.event_name == 'schedule'
|
||||
env:
|
||||
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
||||
run: |
|
||||
gh run cancel "${{ github.run_id }}"
|
||||
gh run watch "${{ github.run_id }}"
|
||||
|
||||
- name: Configure AWS Credentials
|
||||
uses: aws-actions/configure-aws-credentials@v4
|
||||
with:
|
||||
aws-access-key-id: ${{ secrets.TOOLS_EDX_ECR_USER_AWS_ACCESS_KEY_ID }}
|
||||
aws-secret-access-key: ${{ secrets.TOOLS_EDX_ECR_USER_AWS_SECRET_ACCESS_KEY }}
|
||||
aws-region: us-east-1
|
||||
|
||||
- name: Log in to ECR
|
||||
id: login-ecr
|
||||
uses: aws-actions/amazon-ecr-login@v2
|
||||
|
||||
- name: Build, tag, and push image to Amazon ECR
|
||||
env:
|
||||
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
|
||||
ECR_REPOSITORY: actions-runner
|
||||
IMAGE_TAG: latest
|
||||
run: |
|
||||
docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG -f scripts/ci-runner.Dockerfile .
|
||||
docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG
|
||||
8
.github/workflows/pylint-checks.yml
vendored
8
.github/workflows/pylint-checks.yml
vendored
@@ -16,13 +16,13 @@ jobs:
|
||||
- module-name: lms-1
|
||||
path: "lms/djangoapps/badges/ lms/djangoapps/branding/ lms/djangoapps/bulk_email/ lms/djangoapps/bulk_enroll/ lms/djangoapps/bulk_user_retirement/ lms/djangoapps/ccx/ lms/djangoapps/certificates/ lms/djangoapps/commerce/ lms/djangoapps/course_api/ lms/djangoapps/course_blocks/ lms/djangoapps/course_home_api/ lms/djangoapps/course_wiki/ lms/djangoapps/coursewarehistoryextended/ lms/djangoapps/debug/ lms/djangoapps/courseware/ lms/djangoapps/course_goals/ lms/djangoapps/rss_proxy/"
|
||||
- module-name: lms-2
|
||||
path: "lms/djangoapps/gating/ lms/djangoapps/grades/ lms/djangoapps/instructor/ lms/djangoapps/instructor_analytics/ lms/djangoapps/discussion/ lms/djangoapps/edxnotes/ lms/djangoapps/email_marketing/ lms/djangoapps/experiments/ lms/djangoapps/instructor_task/ lms/djangoapps/learner_dashboard/ lms/djangoapps/learner_home/ lms/djangoapps/lms_initialization/ lms/djangoapps/lms_xblock/ lms/djangoapps/lti_provider/ lms/djangoapps/mailing/ lms/djangoapps/mobile_api/ lms/djangoapps/monitoring/ lms/djangoapps/ora_staff_grader/ lms/djangoapps/program_enrollments/ lms/djangoapps/rss_proxy lms/djangoapps/static_template_view/ lms/djangoapps/staticbook/ lms/djangoapps/support/ lms/djangoapps/survey/ lms/djangoapps/teams/ lms/djangoapps/tests/ lms/djangoapps/user_tours/ lms/djangoapps/verify_student/ lms/djangoapps/mfe_config_api/ lms/envs/ lms/lib/ lms/tests.py"
|
||||
path: "lms/djangoapps/gating/ lms/djangoapps/grades/ lms/djangoapps/instructor/ lms/djangoapps/instructor_analytics/ lms/djangoapps/discussion/ lms/djangoapps/edxnotes/ lms/djangoapps/experiments/ lms/djangoapps/instructor_task/ lms/djangoapps/learner_dashboard/ lms/djangoapps/learner_home/ lms/djangoapps/lms_initialization/ lms/djangoapps/lms_xblock/ lms/djangoapps/lti_provider/ lms/djangoapps/mailing/ lms/djangoapps/mobile_api/ lms/djangoapps/monitoring/ lms/djangoapps/ora_staff_grader/ lms/djangoapps/program_enrollments/ lms/djangoapps/rss_proxy lms/djangoapps/static_template_view/ lms/djangoapps/staticbook/ lms/djangoapps/support/ lms/djangoapps/survey/ lms/djangoapps/teams/ lms/djangoapps/tests/ lms/djangoapps/user_tours/ lms/djangoapps/verify_student/ lms/djangoapps/mfe_config_api/ lms/envs/ lms/lib/ lms/tests.py"
|
||||
- module-name: openedx-1
|
||||
path: "openedx/core/types/ openedx/core/djangoapps/ace_common/ openedx/core/djangoapps/agreements/ openedx/core/djangoapps/api_admin/ openedx/core/djangoapps/auth_exchange/ openedx/core/djangoapps/bookmarks/ openedx/core/djangoapps/cache_toolbox/ openedx/core/djangoapps/catalog/ openedx/core/djangoapps/ccxcon/ openedx/core/djangoapps/commerce/ openedx/core/djangoapps/common_initialization/ openedx/core/djangoapps/common_views/ openedx/core/djangoapps/config_model_utils/ openedx/core/djangoapps/content/ openedx/core/djangoapps/content_libraries/ openedx/core/djangoapps/content_staging/ openedx/core/djangoapps/contentserver/ openedx/core/djangoapps/cookie_metadata/ openedx/core/djangoapps/cors_csrf/ openedx/core/djangoapps/course_apps/ openedx/core/djangoapps/course_date_signals/ openedx/core/djangoapps/course_groups/ openedx/core/djangoapps/courseware_api/ openedx/core/djangoapps/crawlers/ openedx/core/djangoapps/credentials/ openedx/core/djangoapps/credit/ openedx/core/djangoapps/dark_lang/ openedx/core/djangoapps/debug/ openedx/core/djangoapps/discussions/ openedx/core/djangoapps/django_comment_common/ openedx/core/djangoapps/embargo/ openedx/core/djangoapps/enrollments/ openedx/core/djangoapps/external_user_ids/ openedx/core/djangoapps/zendesk_proxy/ openedx/core/djangolib/ openedx/core/lib/ openedx/core/tests/ openedx/core/djangoapps/course_live/"
|
||||
path: "openedx/core/types/ openedx/core/djangoapps/ace_common/ openedx/core/djangoapps/agreements/ openedx/core/djangoapps/api_admin/ openedx/core/djangoapps/auth_exchange/ openedx/core/djangoapps/bookmarks/ openedx/core/djangoapps/cache_toolbox/ openedx/core/djangoapps/catalog/ openedx/core/djangoapps/ccxcon/ openedx/core/djangoapps/commerce/ openedx/core/djangoapps/common_initialization/ openedx/core/djangoapps/common_views/ openedx/core/djangoapps/config_model_utils/ openedx/core/djangoapps/content/ openedx/core/djangoapps/content_libraries/ openedx/core/djangoapps/content_staging/ openedx/core/djangoapps/contentserver/ openedx/core/djangoapps/cookie_metadata/ openedx/core/djangoapps/cors_csrf/ openedx/core/djangoapps/course_apps/ openedx/core/djangoapps/course_date_signals/ openedx/core/djangoapps/course_groups/ openedx/core/djangoapps/courseware_api/ openedx/core/djangoapps/crawlers/ openedx/core/djangoapps/credentials/ openedx/core/djangoapps/credit/ openedx/core/djangoapps/dark_lang/ openedx/core/djangoapps/debug/ openedx/core/djangoapps/discussions/ openedx/core/djangoapps/django_comment_common/ openedx/core/djangoapps/embargo/ openedx/core/djangoapps/enrollments/ openedx/core/djangoapps/external_user_ids/ openedx/core/djangoapps/zendesk_proxy/ openedx/core/djangolib/ openedx/core/lib/ openedx/core/djangoapps/course_live/"
|
||||
- module-name: openedx-2
|
||||
path: "openedx/core/djangoapps/geoinfo/ openedx/core/djangoapps/header_control/ openedx/core/djangoapps/heartbeat/ openedx/core/djangoapps/lang_pref/ openedx/core/djangoapps/models/ openedx/core/djangoapps/monkey_patch/ openedx/core/djangoapps/oauth_dispatch/ openedx/core/djangoapps/olx_rest_api/ openedx/core/djangoapps/password_policy/ openedx/core/djangoapps/plugin_api/ openedx/core/djangoapps/plugins/ openedx/core/djangoapps/profile_images/ openedx/core/djangoapps/programs/ openedx/core/djangoapps/safe_sessions/ openedx/core/djangoapps/schedules/ openedx/core/djangoapps/service_status/ openedx/core/djangoapps/session_inactivity_timeout/ openedx/core/djangoapps/signals/ openedx/core/djangoapps/site_configuration/ openedx/core/djangoapps/system_wide_roles/ openedx/core/djangoapps/theming/ openedx/core/djangoapps/user_api/ openedx/core/djangoapps/user_authn/ openedx/core/djangoapps/util/ openedx/core/djangoapps/verified_track_content/ openedx/core/djangoapps/video_config/ openedx/core/djangoapps/video_pipeline/ openedx/core/djangoapps/waffle_utils/ openedx/core/djangoapps/xblock/ openedx/core/djangoapps/xmodule_django/ openedx/core/tests/ openedx/features/ openedx/testing/ openedx/tests/ openedx/core/djangoapps/notifications/ openedx/core/djangoapps/staticfiles/ openedx/core/djangoapps/content_tagging/"
|
||||
path: "openedx/core/djangoapps/geoinfo/ openedx/core/djangoapps/header_control/ openedx/core/djangoapps/heartbeat/ openedx/core/djangoapps/lang_pref/ openedx/core/djangoapps/models/ openedx/core/djangoapps/monkey_patch/ openedx/core/djangoapps/oauth_dispatch/ openedx/core/djangoapps/olx_rest_api/ openedx/core/djangoapps/password_policy/ openedx/core/djangoapps/plugin_api/ openedx/core/djangoapps/plugins/ openedx/core/djangoapps/profile_images/ openedx/core/djangoapps/programs/ openedx/core/djangoapps/safe_sessions/ openedx/core/djangoapps/schedules/ openedx/core/djangoapps/service_status/ openedx/core/djangoapps/session_inactivity_timeout/ openedx/core/djangoapps/signals/ openedx/core/djangoapps/site_configuration/ openedx/core/djangoapps/system_wide_roles/ openedx/core/djangoapps/theming/ openedx/core/djangoapps/user_api/ openedx/core/djangoapps/user_authn/ openedx/core/djangoapps/util/ openedx/core/djangoapps/verified_track_content/ openedx/core/djangoapps/video_config/ openedx/core/djangoapps/video_pipeline/ openedx/core/djangoapps/waffle_utils/ openedx/core/djangoapps/xblock/ openedx/core/djangoapps/xmodule_django/ openedx/core/tests/ openedx/features/ openedx/testing/ openedx/tests/ openedx/envs/ openedx/core/djangoapps/notifications/ openedx/core/djangoapps/staticfiles/ openedx/core/djangoapps/content_tagging/"
|
||||
- module-name: common
|
||||
path: "common pavelib"
|
||||
path: "common"
|
||||
- module-name: cms
|
||||
path: "cms"
|
||||
- module-name: xmodule
|
||||
|
||||
18
.github/workflows/quality-checks.yml
vendored
18
.github/workflows/quality-checks.yml
vendored
@@ -61,14 +61,26 @@ jobs:
|
||||
run: |
|
||||
make test-requirements
|
||||
|
||||
- name: Install npm
|
||||
env:
|
||||
PIP_SRC: ${{ runner.temp }}
|
||||
run: npm ci
|
||||
|
||||
- name: Install python packages
|
||||
env:
|
||||
PIP_SRC: ${{ runner.temp }}
|
||||
run: |
|
||||
pip install -e .
|
||||
|
||||
- name: Run Quality Tests
|
||||
env:
|
||||
TEST_SUITE: quality
|
||||
SCRIPT_TO_RUN: ./scripts/generic-ci-tests.sh
|
||||
PIP_SRC: ${{ runner.temp }}
|
||||
TARGET_BRANCH: ${{ github.base_ref }}
|
||||
run: |
|
||||
./scripts/all-tests.sh
|
||||
make pycodestyle
|
||||
make xsslint
|
||||
make pii_check
|
||||
make check_keywords
|
||||
|
||||
- name: Save Job Artifacts
|
||||
if: always()
|
||||
|
||||
4
.github/workflows/static-assets-check.yml
vendored
4
.github/workflows/static-assets-check.yml
vendored
@@ -15,8 +15,8 @@ jobs:
|
||||
os: [ubuntu-24.04]
|
||||
python-version:
|
||||
- "3.11"
|
||||
node-version: [18, 20]
|
||||
npm-version: [10.5.x]
|
||||
node-version: [20]
|
||||
npm-version: [10.7.x]
|
||||
mongo-version:
|
||||
- "7.0"
|
||||
|
||||
|
||||
8
.github/workflows/unit-test-shards.json
vendored
8
.github/workflows/unit-test-shards.json
vendored
@@ -34,7 +34,6 @@
|
||||
"paths": [
|
||||
"lms/djangoapps/discussion/",
|
||||
"lms/djangoapps/edxnotes/",
|
||||
"lms/djangoapps/email_marketing/",
|
||||
"lms/djangoapps/experiments/"
|
||||
]
|
||||
},
|
||||
@@ -239,6 +238,7 @@
|
||||
"cms/djangoapps/cms_user_tasks/",
|
||||
"cms/djangoapps/course_creators/",
|
||||
"cms/djangoapps/export_course_metadata/",
|
||||
"cms/djangoapps/import_from_modulestore/",
|
||||
"cms/djangoapps/maintenance/",
|
||||
"cms/djangoapps/models/",
|
||||
"cms/djangoapps/pipeline_js/",
|
||||
@@ -256,15 +256,13 @@
|
||||
"common-with-lms": {
|
||||
"settings": "lms.envs.test",
|
||||
"paths": [
|
||||
"common/djangoapps/",
|
||||
"pavelib/"
|
||||
"common/djangoapps/"
|
||||
]
|
||||
},
|
||||
"common-with-cms": {
|
||||
"settings": "cms.envs.test",
|
||||
"paths": [
|
||||
"common/djangoapps/",
|
||||
"pavelib/"
|
||||
"common/djangoapps/"
|
||||
]
|
||||
},
|
||||
"xmodule-with-lms": {
|
||||
|
||||
33
.github/workflows/unit-tests.yml
vendored
33
.github/workflows/unit-tests.yml
vendored
@@ -71,29 +71,15 @@ jobs:
|
||||
|
||||
- name: install system requirements
|
||||
run: |
|
||||
sudo apt-get update && sudo apt-get install libmysqlclient-dev libxmlsec1-dev lynx openssl
|
||||
sudo apt-get update && sudo apt-get install libmysqlclient-dev libxmlsec1-dev lynx
|
||||
|
||||
# This is needed until the ENABLE_BLAKE2B_HASHING can be removed and we
|
||||
# can stop using MD4 by default.
|
||||
- name: enable md4 hashing in libssl
|
||||
run: |
|
||||
cat <<EOF | sudo tee /etc/ssl/openssl.cnf
|
||||
# Use this in order to automatically load providers.
|
||||
openssl_conf = openssl_init
|
||||
|
||||
[openssl_init]
|
||||
providers = provider_sect
|
||||
|
||||
[provider_sect]
|
||||
default = default_sect
|
||||
legacy = legacy_sect
|
||||
|
||||
[default_sect]
|
||||
activate = 1
|
||||
|
||||
[legacy_sect]
|
||||
activate = 1
|
||||
EOF
|
||||
# We pull this image a lot, and Dockerhub will rate limit us if we pull too often.
|
||||
# This is an attempt to cache the image for better performance and to work around that.
|
||||
# It will cache all pulled images, so if we add new images to this we'll need to update the key.
|
||||
- name: Cache Docker images
|
||||
uses: ScribeMD/docker-cache@0.5.0
|
||||
with:
|
||||
key: docker-${{ runner.os }}-mongo-${{ matrix.mongo-version }}
|
||||
|
||||
- name: Start MongoDB
|
||||
uses: supercharge/mongodb-github-action@1.11.0
|
||||
@@ -180,7 +166,7 @@ jobs:
|
||||
shell: bash
|
||||
run: |
|
||||
echo "root_cms_unit_tests_count=$(pytest --disable-warnings --collect-only --ds=cms.envs.test cms/ -q | head -n -2 | wc -l)" >> $GITHUB_ENV
|
||||
echo "root_lms_unit_tests_count=$(pytest --disable-warnings --collect-only --ds=lms.envs.test lms/ openedx/ common/djangoapps/ xmodule/ pavelib/ -q | head -n -2 | wc -l)" >> $GITHUB_ENV
|
||||
echo "root_lms_unit_tests_count=$(pytest --disable-warnings --collect-only --ds=lms.envs.test lms/ openedx/ common/djangoapps/ xmodule/ -q | head -n -2 | wc -l)" >> $GITHUB_ENV
|
||||
|
||||
- name: get GHA unit test paths
|
||||
shell: bash
|
||||
@@ -219,7 +205,6 @@ jobs:
|
||||
to add any missing apps and match the count. for more details please take a look at scripts/gha-shards-readme.md"
|
||||
exit 1
|
||||
|
||||
|
||||
# This job aggregates test results. It's the required check for branch protection.
|
||||
# https://github.com/marketplace/actions/alls-green#why
|
||||
# https://github.com/orgs/community/discussions/33579
|
||||
|
||||
Reference in New Issue
Block a user