chore: Updating Python Requirements (#34140) #807
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: unit-tests-gh-hosted | |
on: | |
pull_request: | |
push: | |
branches: | |
- master | |
- open-release/lilac.master | |
jobs: | |
run-test: | |
if: (github.repository != 'openedx/edx-platform' && github.repository != 'edx/edx-platform-private') || (github.repository == 'openedx/edx-platform' && (startsWith(github.base_ref, 'open-release') == true)) | |
runs-on: ubuntu-20.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
python-version: [ '3.8' ] | |
django-version: | |
- "pinned" | |
# When updating the shards, remember to make the same changes in | |
# .github/workflows/unit-tests.yml | |
shard_name: | |
- "lms-1" | |
- "lms-2" | |
- "lms-3" | |
- "lms-4" | |
- "lms-5" | |
- "lms-6" | |
- "openedx-1-with-lms" | |
- "openedx-2-with-lms" | |
- "openedx-1-with-cms" | |
- "openedx-2-with-cms" | |
- "cms-1" | |
- "cms-2" | |
- "common-with-lms" | |
- "common-with-cms" | |
- "xmodule-with-lms" | |
- "xmodule-with-cms" | |
name: gh-hosted-python-${{ matrix.python-version }},django-${{ matrix.django-version }},${{ matrix.shard_name }} | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install Required System Packages | |
run: sudo apt-get update && sudo apt-get install libxmlsec1-dev lynx | |
- name: Start MongoDB | |
uses: supercharge/[email protected] | |
with: | |
mongodb-version: 4.4 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Get pip cache dir | |
id: pip-cache-dir | |
run: | | |
echo "::set-output name=dir::$(pip cache dir)" | |
- name: Cache pip dependencies | |
id: cache-dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ${{ steps.pip-cache-dir.outputs.dir }} | |
key: ${{ runner.os }}-pip-${{ hashFiles('requirements/edx/testing.txt') }} | |
restore-keys: ${{ runner.os }}-pip- | |
- name: Install Required Python Dependencies | |
env: | |
PIP_SRC: ${{ runner.temp }} | |
run: | | |
make test-requirements | |
if [[ "${{ matrix.django-version }}" != "pinned" ]]; then | |
pip install "django~=${{ matrix.django-version }}.0" | |
pip check # fail if this test-reqs/Django combination is broken | |
fi | |
- name: Setup and run tests | |
uses: ./.github/actions/unit-tests | |
collect-and-verify: | |
if: (github.repository != 'openedx/edx-platform' && github.repository != 'edx/edx-platform-private') || (github.repository == 'openedx/edx-platform' && (startsWith(github.base_ref, 'open-release') == true)) | |
runs-on: ubuntu-20.04 | |
strategy: | |
matrix: | |
python-version: [ '3.8' ] | |
django-version: | |
- "pinned" | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Install Required System Packages | |
run: sudo apt-get update && sudo apt-get install libxmlsec1-dev | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Get pip cache dir | |
id: pip-cache-dir | |
run: | | |
echo "::set-output name=dir::$(pip cache dir)" | |
- name: Cache pip dependencies | |
id: cache-dependencies | |
uses: actions/cache@v3 | |
with: | |
path: ${{ steps.pip-cache-dir.outputs.dir }} | |
key: ${{ runner.os }}-pip-${{ hashFiles('requirements/edx/testing.txt') }} | |
restore-keys: ${{ runner.os }}-pip- | |
- name: Install Required Python Dependencies | |
run: | | |
make test-requirements | |
if [[ "${{ matrix.django-version }}" != "pinned" ]]; then | |
pip install "django~=${{ matrix.django-version }}.0" | |
pip check # fail if this test-reqs/Django combination is broken | |
fi | |
- name: verify unit tests count | |
uses: ./.github/actions/verify-tests-count |