Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add support for olive release #28

Merged
merged 6 commits into from
Dec 19, 2022
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
20 changes: 11 additions & 9 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -47,15 +47,17 @@ Configuration
Compatibility
-------------

+-------------------+----------------+
| Open edX Release | Tutor Version |
+===================+================+
| Lilac | >= 12.x |
+-------------------+----------------+
| Maple | >= 13.x |
+-------------------+----------------+
| Nutmeg | >= 14.x |
+-------------------+----------------+
+------------------+---------------+
| Open edX Release | Tutor Version |
+==================+===============+
| Lilac | >= 12.x |
+------------------+---------------+
| Maple | >= 13.x |
+------------------+---------------+
| Nutmeg | >= 14.x |
+------------------+---------------+
| Olive | >= 15.x |
+------------------+---------------+

**NOTE**: For the Open edx version of the Lilac release, the changes required for the Codejail service to interact with ``edx-platform`` are
not included in ``open-release/lilac.master``. In order to use the service with the changes, please review `this PR`_.
Expand Down
69 changes: 36 additions & 33 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,96 +4,100 @@
#
# make upgrade
#
astroid==2.11.3
astroid==2.12.12
# via pylint
attrs==21.4.0
attrs==22.1.0
# via pytest
bleach==5.0.0
bleach==5.0.1
# via readme-renderer
certifi==2021.10.8
certifi==2022.9.24
# via requests
cffi==1.15.0
cffi==1.15.1
# via cryptography
charset-normalizer==2.0.12
charset-normalizer==2.1.1
# via requests
commonmark==0.9.1
# via rich
coverage==6.3.2
coverage==6.5.0
# via -r requirements/dev.in
cryptography==36.0.2
cryptography==38.0.1
# via secretstorage
dill==0.3.4
dill==0.3.6
# via pylint
docutils==0.18.1
docutils==0.19
# via readme-renderer
idna==3.3
idna==3.4
# via requests
importlib-metadata==4.11.3
importlib-metadata==5.0.0
# via
# keyring
# twine
iniconfig==1.1.1
# via pytest
isort==5.10.1
# via pylint
jaraco-classes==3.2.3
# via keyring
jedi==0.18.1
# via pudb
jeepney==0.8.0
# via
# keyring
# secretstorage
keyring==23.5.0
keyring==23.9.3
# via twine
lazy-object-proxy==1.7.1
# via astroid
mccabe==0.7.0
# via pylint
more-itertools==9.0.0
# via jaraco-classes
packaging==21.3
# via
# pudb
# pytest
parso==0.8.3
# via jedi
pkginfo==1.8.2
pkginfo==1.8.3
# via twine
platformdirs==2.5.2
# via pylint
pluggy==1.0.0
# via pytest
pudb==2022.1.1
pudb==2022.1.2
# via -r requirements/dev.in
py==1.11.0
# via pytest
pycodestyle==2.8.0
pycodestyle==2.9.1
# via -r requirements/dev.in
pycparser==2.21
# via cffi
pydocstyle==6.1.1
# via -r requirements/dev.in
pygments==2.12.0
pygments==2.13.0
# via
# pudb
# readme-renderer
# rich
pylint==2.13.7
pylint==2.15.5
# via -r requirements/dev.in
pyparsing==3.0.8
pyparsing==3.0.9
# via packaging
pytest==7.1.2
pytest==7.1.3
# via -r requirements/dev.in
readme-renderer==35.0
readme-renderer==37.2
# via twine
requests==2.27.1
requests==2.28.1
# via
# requests-toolbelt
# twine
requests-toolbelt==0.9.1
requests-toolbelt==0.10.0
# via twine
rfc3986==2.0.0
# via twine
rich==12.2.0
rich==12.6.0
# via twine
secretstorage==3.3.2
secretstorage==3.3.3
# via keyring
six==1.16.0
# via bleach
Expand All @@ -103,14 +107,16 @@ tomli==2.0.1
# via
# pylint
# pytest
twine==4.0.0
tomlkit==0.11.5
# via pylint
twine==4.0.1
# via -r requirements/dev.in
typing-extensions==4.2.0
typing-extensions==4.4.0
# via
# astroid
# pylint
# rich
urllib3==1.26.9
urllib3==1.26.12
# via
# requests
# twine
Expand All @@ -122,10 +128,7 @@ urwid-readline==0.13
# via pudb
webencodings==0.5.1
# via bleach
wrapt==1.14.0
wrapt==1.14.1
# via astroid
zipp==3.8.0
zipp==3.10.0
# via importlib-metadata

# The following packages are considered to be unsafe in a requirements file:
# setuptools
16 changes: 12 additions & 4 deletions requirements/pip-tools.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,22 @@
#
# make upgrade
#
click==8.1.2
build==0.8.0
# via pip-tools
pep517==0.12.0
click==8.1.3
# via pip-tools
pip-tools==6.6.0
packaging==21.3
# via build
pep517==0.13.0
# via build
pip-tools==6.9.0
# via -r requirements/pip-tools.in
pyparsing==3.0.9
# via packaging
tomli==2.0.1
# via pep517
# via
# build
# pep517
wheel==0.37.1
# via pip-tools

Expand Down
4 changes: 2 additions & 2 deletions requirements/pip.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ wheel==0.37.1
# via -r requirements/pip.in

# The following packages are considered to be unsafe in a requirements file:
pip==22.0.4
pip==22.3
# via -r requirements/pip.in
setuptools==62.1.0
setuptools==65.5.0
# via -r requirements/pip.in
9 changes: 3 additions & 6 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,12 @@ def load_about():
"Issue tracker": "https://github.com/edunext/tutor-contrib-codejail/issues",
},
license="AGPLv3",
author="Eric Herrera",
description="codejail plugin for Tutor",
author="eduNEXT",
description="Codejail plugin for Tutor",
long_description=load_readme(),
packages=find_packages(exclude=["tests*"]),
include_package_data=True,
python_requires=">=3.5",
python_requires=">=3.8",
install_requires=["tutor"],
entry_points={"tutor.plugin.v1": ["codejail = tutorcodejail.plugin"]},
classifiers=[
Expand All @@ -52,9 +52,6 @@ def load_about():
"License :: OSI Approved :: GNU Affero General Public License v3",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3.5",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
Expand Down
2 changes: 1 addition & 1 deletion tutorcodejail/__about__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
"""Helps you keep your cool when creating dozens of open edX and eduNEXT environments."""
__version__ = "14.1.0"
__version__ = "15.0.0"
11 changes: 5 additions & 6 deletions tutorcodejail/templates/codejail/build/codejail/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
FROM docker.io/ubuntu:20.04 as minimal
FROM docker.io/ubuntu:22.04 as minimal
MoisesGSalas marked this conversation as resolved.
Show resolved Hide resolved
MAINTAINER edunext.co <contact@edunext.co>

ENV DEBIAN_FRONTEND=noninteractive
RUN apt update && \
apt install -y build-essential curl git language-pack-en
apt install -y build-essential curl git language-pack-en llvm
ENV LC_ALL en_US.UTF-8

###### Install python with pyenv in /opt/pyenv and create virtualenv in /openedx/venv
Expand All @@ -12,9 +12,9 @@ FROM minimal as python
RUN apt update && \
apt install -y libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev libffi-dev liblzma-dev python-openssl git subversion
xz-utils tk-dev libffi-dev liblzma-dev python3-openssl git subversion
ENV PYENV_ROOT /opt/pyenv
RUN git clone https://github.com/pyenv/pyenv $PYENV_ROOT --branch v1.2.21 --depth 1
RUN git clone https://github.com/pyenv/pyenv $PYENV_ROOT --branch v2.3.5 --depth 1

ARG CODEJAILSERVICE_PYTHON_VERSION=3.8.6
RUN $PYENV_ROOT/bin/pyenv install $CODEJAILSERVICE_PYTHON_VERSION
Expand All @@ -40,7 +40,7 @@ ENV VIRTUAL_ENV /openedx/venv/
COPY --from=code /openedx/codejailservice /openedx/codejailservice
WORKDIR /openedx/codejailservice
RUN pip3 install -r requirements/base.txt
RUN pip3 install uwsgi==2.0.20
RUN pip3 install uwsgi==2.0.21

###### Install python requirements in virtualenv
FROM python as sandbox-python-requirements
Expand All @@ -51,7 +51,6 @@ ENV VIRTUAL_ENV /sandbox/venv/
WORKDIR /var/tmp
RUN mkdir -p common/lib/

COPY --from={{ DOCKER_IMAGE_OPENEDX }} /openedx/edx-platform/common/lib/sandbox-packages common/lib/sandbox-packages
COPY --from={{ DOCKER_IMAGE_OPENEDX }} /openedx/edx-platform/requirements/edx-sandbox/py38.txt py38.txt
RUN pip3 install -r py38.txt

Expand Down