Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 0 additions & 9 deletions .github/docker-compose-ci.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,6 @@
version: "2.1"

services:
mysql57:
image: mysql:5.7
container_name: mysql57
command: mysqld --character-set-server=utf8 --collation-server=utf8_general_ci
environment:
MYSQL_ROOT_PASSWORD: ""
MYSQL_ALLOW_EMPTY_PASSWORD: "yes"

mysql80:
image: mysql:8.0
container_name: mysql80
Expand All @@ -24,7 +16,6 @@ services:
volumes:
- ..:/edx/app/xqueue/xqueue
depends_on:
- mysql57
- mysql80
environment:
RABBIT_HOST: "rabbit"
24 changes: 16 additions & 8 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,26 +13,34 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ['py38', 'py312']
env-name: ['django42', 'quality']
python-version: ['py311', 'py312']
env-name: ['django42','django52', 'quality']
db-version: ['mysql80']

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Start container
run: |
docker compose -f .github/docker-compose-ci.yml up -d

- name: setup python
if: ${{ matrix.python-version == 'py312' }}
- name: Setup Python ${{ matrix.python-version }} inside container
run: |
docker exec -e TOXENV=${{ matrix.python-version }}-${{ matrix.env-name }} -e DB_HOST=${{ matrix.db-version }} xqueue bash -c \
"apt update && apt install -y software-properties-common && add-apt-repository ppa:deadsnakes/ppa -y && apt install python3.12 python3.12-dev -y"
PY_VER=$(if [ "${{ matrix.python-version }}" = "py312" ]; then echo "3.12"; else echo "3.11"; fi)

docker exec xqueue bash -c "
apt update &&
apt install -y software-properties-common curl &&
add-apt-repository ppa:deadsnakes/ppa -y &&
apt install -y python$PY_VER python$PY_VER-dev python$PY_VER-venv &&
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python$PY_VER 1 &&
python$PY_VER -m venv /tmp/venv &&
/tmp/venv/bin/pip install --upgrade pip
"

- name: Install test dependencies and run tests
env:
TOXENV: ${{ matrix.python-version }}-${{ matrix.env-name }}
run: |
docker exec xqueue bash -c "cd /edx/app/xqueue/xqueue/; pip3 install -r requirements/ci.txt"
docker exec xqueue bash -c "cd /edx/app/xqueue/xqueue/; /tmp/venv/bin/pip install -r requirements/ci.txt"
docker exec xqueue bash -c "cd /edx/app/xqueue/xqueue/ && DB_HOST=${{ matrix.db-version }} tox -e ${TOXENV}"
4 changes: 2 additions & 2 deletions .github/workflows/mysql8-migrations-check.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ jobs:

steps:
- name: Checkout repo
uses: actions/checkout@v2
uses: actions/checkout@v4

- name: Setup Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

Expand Down
53 changes: 20 additions & 33 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
Expand All @@ -8,25 +8,21 @@ asgiref==3.8.1
# via django
backoff==2.2.1
# via -r requirements/base.in
backports-zoneinfo==0.2.1 ; python_version < "3.9"
# via
# -c requirements/constraints.txt
# django
boto3==1.36.21
boto3==1.38.43
# via -r requirements/base.in
botocore==1.36.21
botocore==1.38.43
# via
# boto3
# s3transfer
certifi==2025.1.31
certifi==2025.6.15
# via requests
cffi==1.17.1
# via pynacl
charset-normalizer==3.4.1
charset-normalizer==3.4.2
# via requests
click==8.1.8
click==8.2.1
# via edx-django-utils
django==4.2.19
django==4.2.23
# via
# -c requirements/common_constraints.txt
# -r requirements/base.in
Expand All @@ -37,33 +33,31 @@ django==4.2.19
# edx-django-utils
django-crum==0.7.9
# via edx-django-utils
django-storages==1.14.4
django-storages==1.14.6
# via -r requirements/base.in
django-waffle==4.2.0
django-waffle==5.0.0
# via edx-django-utils
edx-django-release-util==1.4.0
edx-django-release-util==1.5.0
# via -r requirements/base.in
edx-django-utils==7.1.0
edx-django-utils==8.0.0
# via -r requirements/base.in
gunicorn==23.0.0
# via -r requirements/base.in
idna==3.10
# via requests
isort==5.13.2
isort==6.0.1
# via -r requirements/base.in
jmespath==1.0.1
# via
# boto3
# botocore
mysqlclient==2.2.7
# via -r requirements/base.in
newrelic==10.6.0
# via
# -r requirements/base.in
# edx-django-utils
packaging==24.2
newrelic==10.14.0
# via -r requirements/base.in
packaging==25.0
# via gunicorn
path-py==11.0.1
path==17.1.0
# via -r requirements/base.in
pbr==6.1.1
# via stevedore
Expand All @@ -77,32 +71,25 @@ python-dateutil==2.9.0.post0
# via botocore
python-memcached==1.62
# via -r requirements/base.in
python-termstyle==0.1.10
# via -r requirements/base.in
pytz==2025.1
# via -r requirements/base.in
pyyaml==6.0.2
# via edx-django-release-util
requests==2.32.3
requests==2.32.4
# via -r requirements/base.in
s3transfer==0.11.2
s3transfer==0.13.0
# via boto3
six==1.17.0
# via
# edx-django-release-util
# python-dateutil
sqlparse==0.5.3
# via django
stevedore==5.3.0
stevedore==5.4.1
# via edx-django-utils
typing-extensions==4.12.2
# via asgiref
urllib3==1.26.20
urllib3==2.2.3
# via
# -c requirements/common_constraints.txt
# botocore
# requests

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
6 changes: 1 addition & 5 deletions requirements/base.in
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,6 @@ edx-django-utils
gunicorn
isort
newrelic
path.py==11.0.1
path
python-memcached
python-termstyle==0.1.10
pytz
requests
# Pin pip to 18.1 since newer versions break tox and prevent merging
pip==18.1
24 changes: 9 additions & 15 deletions requirements/ci.txt
Original file line number Diff line number Diff line change
@@ -1,40 +1,34 @@
#
# This file is autogenerated by pip-compile with Python 3.8
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# make upgrade
#
cachetools==5.5.1
cachetools==6.1.0
# via tox
chardet==5.2.0
# via tox
colorama==0.4.6
# via tox
distlib==0.3.9
# via virtualenv
filelock==3.16.1
filelock==3.18.0
# via
# tox
# virtualenv
packaging==24.2
packaging==25.0
# via
# pyproject-api
# tox
platformdirs==4.3.6
platformdirs==4.3.8
# via
# tox
# virtualenv
pluggy==1.5.0
pluggy==1.6.0
# via tox
pyproject-api==1.8.0
pyproject-api==1.9.1
# via tox
tomli==2.2.1
# via
# pyproject-api
# tox
tox==4.24.1
tox==4.27.0
# via -r requirements/ci.in
typing-extensions==4.12.2
# via tox
virtualenv==20.29.2
virtualenv==20.31.2
# via tox
2 changes: 0 additions & 2 deletions requirements/constraints.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,5 +10,3 @@

# Common constraints for edx repos
-c common_constraints.txt

backports-zoneinfo==0.2.1; python_version < '3.9'
Loading