From 4fe0b98874eaae36575da74c184d584aad0fbddf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Behmo?= Date: Fri, 21 Jun 2024 17:54:19 +0200 Subject: [PATCH 1/7] fix: Docker image build Image was missing the pkg-config package, probably due to a recent upgrade of the mysql python package in the upstream ecommerce repo. --- changelog.d/20240621_175315_regis_nightly.md | 1 + tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 changelog.d/20240621_175315_regis_nightly.md diff --git a/changelog.d/20240621_175315_regis_nightly.md b/changelog.d/20240621_175315_regis_nightly.md new file mode 100644 index 00000000..e977836a --- /dev/null +++ b/changelog.d/20240621_175315_regis_nightly.md @@ -0,0 +1 @@ +- [Bugfix] Fix ecommerce image build, which was failing because of a missing pkg-config apt package. (by @regisb) diff --git a/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile b/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile index 32c1abd7..7304ff7c 100644 --- a/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile +++ b/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile @@ -33,7 +33,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ apt update && \ apt install -y libmysqlclient-dev libssl-dev build-essential \ - libsqlite3-dev libffi-dev mime-support + libsqlite3-dev libffi-dev mime-support pkg-config ARG APP_USER_ID=1000 RUN if [ "$APP_USER_ID" = 0 ]; then echo "app user may not be root" && false; fi From 78441c0680c91e91c12275db5d091a8c4ac1c2a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Behmo?= Date: Thu, 17 Oct 2024 08:35:13 +0200 Subject: [PATCH 2/7] docs: *.local.edly.io -> *.local.openedx.io The default URL to run a local platform switched from local.edly.io to local.openedx.io. This changes makes it clearer for everyone that Tutor is to run Open edX. See: https://github.com/overhangio/tutor/issues/1120 --- README.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.rst b/README.rst index d3aaef66..cb67b62e 100644 --- a/README.rst +++ b/README.rst @@ -95,17 +95,17 @@ Operations Creating a user ~~~~~~~~~~~~~~~ -The ecommerce user interface will be available at http://ecommerce.local.edly.io for a local instance, and at ``ECOMMERCE_HOST`` (by default: ``http(s)://ecommerce.``) in production. In order to run commands from the UI, a user with admin rights must be created. There are two ways to proceed. To create a brand new user in E-Commerce which will not exist in the LMS, run:: +The ecommerce user interface will be available at http://ecommerce.local.openedx.io for a local instance, and at ``ECOMMERCE_HOST`` (by default: ``http(s)://ecommerce.``) in production. In order to run commands from the UI, a user with admin rights must be created. There are two ways to proceed. To create a brand new user in E-Commerce which will not exist in the LMS, run:: tutor local run ecommerce ./manage.py createsuperuser -Then login with this new user at: http://ecommerce.local.edly.io/admin/ +Then login with this new user at: http://ecommerce.local.openedx.io/admin/ -To re-use an existing LMS user, first go to http://ecommerce.local.edly.io/login. You should be redirected to the LMS login page, then to the dashboard. Then this user must be made a staff/superuser in E-Commerce:: +To re-use an existing LMS user, first go to http://ecommerce.local.openedx.io/login. You should be redirected to the LMS login page, then to the dashboard. Then this user must be made a staff/superuser in E-Commerce:: tutor local run ecommerce ./manage.py shell -c "from django.contrib.auth import get_user_model; get_user_model().objects.filter(email='USER@EMAIL.COM').update(is_staff=True, is_superuser=True)" -Make sure to replace ``USER@EMAIL.COM`` by the actual user email address. You should then be able to view the Oscar dashboard at http://ecommerce.local.edly.io. +Make sure to replace ``USER@EMAIL.COM`` by the actual user email address. You should then be able to view the Oscar dashboard at http://ecommerce.local.openedx.io. Custom payment processors @@ -130,7 +130,7 @@ Then, build the image, pointing to your fork if necessary:: Development ~~~~~~~~~~~ -When running Tutor in development mode, the ecommerce service is accessible at http://ecommerce.local.edly.io:8130. +When running Tutor in development mode, the ecommerce service is accessible at http://ecommerce.local.openedx.io:8130. To mount a local ecommerce repository in the ecommerce container, add an auto-mounted repository with:: From abd9fe9f07c1f82a563193006dda56de7afaf469 Mon Sep 17 00:00:00 2001 From: Muhammad Faraz Maqsood Date: Mon, 11 Nov 2024 15:21:26 +0500 Subject: [PATCH 3/7] v19.0.0 - upgrade to sumac - add a deprecation warning in the readme as ecommerce and ecommerce-worker repositories have been archieved now. - dockerfile now includes link to archieved repositories of ecommerce and ecommerce-worker. --- CHANGELOG.md | 7 +++++++ README.rst | 5 +++++ setup.py | 8 ++++---- tutorecommerce/__about__.py | 2 +- .../templates/ecommerce/build/ecommerce-worker/Dockerfile | 2 +- .../templates/ecommerce/build/ecommerce/Dockerfile | 6 +++--- 6 files changed, 21 insertions(+), 9 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 40133af3..089ce975 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,13 @@ instructions, because git commits are used to generate release notes: + +## v19.0.0 (2024-12-16) + +- 💥[Feature] Upgrade to Sumac. (by @Faraz32123) + - tutor-ecommerce will be deprecated with this release as the underlying e-commerce repositories have been archived. For more details, please refer to the deprecation ticket .i.e. https://github.com/overhangio/tutor-ecommerce/issues/83. +- [BugFix] Updating the uwsgi version to the latest fixes `uwsgi: error while loading shared libraries: libpython3.12.so.1.0: cannot open shared object file: No such file or directory`. (by @Faraz32123) + ## v18.0.1 (2024-12-12) diff --git a/README.rst b/README.rst index eefc309c..1fb2e7f5 100644 --- a/README.rst +++ b/README.rst @@ -1,3 +1,8 @@ +⛔️ WARNING +========== + +This plugin is deprecated as the underlying e-commerce repositories have been archived. For more details, please refer to the deprecation ticket: [tutor-ecommerce deprecation ticket](https://github.com/overhangio/tutor-ecommerce/issues/83). + E-Commerce plugin for `Tutor `_ =============================================================== diff --git a/setup.py b/setup.py index 21ca6ec5..07d573bf 100644 --- a/setup.py +++ b/setup.py @@ -35,11 +35,11 @@ include_package_data=True, python_requires=">=3.9", install_requires=[ - "tutor>=18.0.0,<19.0.0", - "tutor-discovery>=18.0.0,<19.0.0", - "tutor-mfe>=18.0.0,<19.0.0", + "tutor>=19.0.0,<20.0.0", + "tutor-discovery>=19.0.0,<20.0.0", + "tutor-mfe>=19.0.0,<20.0.0", ], - extras_require={"dev": ["tutor[dev]>=18.0.0,<19.0.0"]}, + extras_require={"dev": ["tutor[dev]>=19.0.0,<20.0.0"]}, entry_points={"tutor.plugin.v1": ["ecommerce = tutorecommerce.plugin"]}, classifiers=[ "Development Status :: 5 - Production/Stable", diff --git a/tutorecommerce/__about__.py b/tutorecommerce/__about__.py index 28cc1491..0122a6fa 100644 --- a/tutorecommerce/__about__.py +++ b/tutorecommerce/__about__.py @@ -1 +1 @@ -__version__ = "18.0.1" +__version__ = "19.0.0" diff --git a/tutorecommerce/templates/ecommerce/build/ecommerce-worker/Dockerfile b/tutorecommerce/templates/ecommerce/build/ecommerce-worker/Dockerfile index 41a51542..7eb0b5ed 100644 --- a/tutorecommerce/templates/ecommerce/build/ecommerce-worker/Dockerfile +++ b/tutorecommerce/templates/ecommerce/build/ecommerce-worker/Dockerfile @@ -13,7 +13,7 @@ RUN useradd --home-dir /openedx --create-home --shell /bin/bash --uid ${APP_USER USER ${APP_USER_ID} RUN mkdir /openedx/ecommerce_worker && \ - git clone https://github.com/openedx/ecommerce-worker.git --branch {{ OPENEDX_COMMON_VERSION }} --depth 1 /openedx/ecommerce_worker + git clone https://github.com/openedx-unsupported/ecommerce-worker.git --branch open-release/sumac.master --depth 1 /openedx/ecommerce_worker WORKDIR /openedx/ecommerce_worker # Install pyenv diff --git a/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile b/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile index 7304ff7c..7a870dcb 100644 --- a/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile +++ b/tutorecommerce/templates/ecommerce/build/ecommerce/Dockerfile @@ -11,8 +11,8 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ ###### Checkout code FROM minimal AS checkout -ARG ECOMMERCE_REPOSITORY=https://github.com/openedx/ecommerce.git -ARG ECOMMERCE_VERSION='{{ OPENEDX_COMMON_VERSION }}' +ARG ECOMMERCE_REPOSITORY=https://github.com/openedx-unsupported/ecommerce.git +ARG ECOMMERCE_VERSION='open-release/sumac.master' RUN mkdir -p /openedx/ecommerce && \ git clone $ECOMMERCE_REPOSITORY --branch $ECOMMERCE_VERSION --depth 1 /openedx/ecommerce @@ -82,7 +82,7 @@ RUN --mount=type=cache,target=/openedx/.cache/bower,sharing=shared,uid=${APP_USE # python requirements RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared,uid=${APP_USER_ID} pip install -r requirements.txt # https://pypi.org/project/uWSGI/ -RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared,uid=${APP_USER_ID} pip install uwsgi==2.0.24 +RUN --mount=type=cache,target=/openedx/.cache/pip,sharing=shared,uid=${APP_USER_ID} pip install uwsgi==2.0.27 # Install private requirements: this is useful for installing custom payment processors. COPY --chown=app:app ./requirements/ /openedx/requirements From a48f25b26da82ea2614455a3eef6051868b4c4d8 Mon Sep 17 00:00:00 2001 From: Syed Muhammad Dawoud Sheraz Ali Date: Mon, 9 Dec 2024 19:04:10 +0500 Subject: [PATCH 4/7] chore: update changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 089ce975..3c020e64 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,10 @@ instructions, because git commits are used to generate release notes: - 💥[Feature] Upgrade to Sumac. (by @Faraz32123) - tutor-ecommerce will be deprecated with this release as the underlying e-commerce repositories have been archived. For more details, please refer to the deprecation ticket .i.e. https://github.com/overhangio/tutor-ecommerce/issues/83. +- 💥 [Deprecation] Drop support for python 3.8 and set Python 3.9 as the minimum supported python version. (by @Faraz32123) +- 💥[Improvement] Rename Tutor's two branches (by @DawoudSheraz): + * Rename **master** to **release**, as this branch runs the latest official Open edX release tag. + * Rename **nightly** to **main**, as this branch runs the Open edX master branches, which are the basis for the next Open edX release. - [BugFix] Updating the uwsgi version to the latest fixes `uwsgi: error while loading shared libraries: libpython3.12.so.1.0: cannot open shared object file: No such file or directory`. (by @Faraz32123) From 725822a5833b511b072a9ad0492f4d05930ea7ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Behmo?= Date: Fri, 13 Dec 2024 15:13:25 +0100 Subject: [PATCH 5/7] fix: incompatibility with MFE js configuration --- tutorecommerce/patches/mfe-dockerfile-pre-npm-build-orders | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 tutorecommerce/patches/mfe-dockerfile-pre-npm-build-orders diff --git a/tutorecommerce/patches/mfe-dockerfile-pre-npm-build-orders b/tutorecommerce/patches/mfe-dockerfile-pre-npm-build-orders new file mode 100644 index 00000000..9b4e7007 --- /dev/null +++ b/tutorecommerce/patches/mfe-dockerfile-pre-npm-build-orders @@ -0,0 +1,2 @@ +# orders MFE does not support js plugins +RUN rm /openedx/app/env.config.jsx From 44285c1be692c9a2fbeda5f980656bb09dcdbaac Mon Sep 17 00:00:00 2001 From: Syed Muhammad Dawoud Sheraz Ali Date: Mon, 16 Dec 2024 12:00:04 +0500 Subject: [PATCH 6/7] chore: update WARNING section on readme --- README.rst | 9 ++------- 1 file changed, 2 insertions(+), 7 deletions(-) diff --git a/README.rst b/README.rst index 1fb2e7f5..debb0dbf 100644 --- a/README.rst +++ b/README.rst @@ -1,18 +1,13 @@ ⛔️ WARNING -========== +=========== -This plugin is deprecated as the underlying e-commerce repositories have been archived. For more details, please refer to the deprecation ticket: [tutor-ecommerce deprecation ticket](https://github.com/overhangio/tutor-ecommerce/issues/83). +This plugin is deprecated as the underlying e-commerce repositories have been archived. For more details, please refer to the `tutor-ecommerce DEPR ticket `_ and `upstream Open edX DEPR ticket `_. E-Commerce plugin for `Tutor `_ =============================================================== This is a plugin for `Tutor `_ that integrates the `E-Commerce `__ application in an Open edX platform. -⛔️ WARNING -=========== - -e-commerce and e-commerce worker are under-maintained. The Open edX community is not fixing bugs or developing new features for it. We hope to deprecate and replace it soon. For updates, `follow along on the DEPR ticket `_. - Installation ------------ From 28a74cd5b329856c9359b83b315974e6190dd5c9 Mon Sep 17 00:00:00 2001 From: Syed Muhammad Dawoud Sheraz Ali Date: Mon, 16 Dec 2024 12:01:19 +0500 Subject: [PATCH 7/7] chore: update changelog --- CHANGELOG.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3c020e64..089ce975 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,10 +24,6 @@ instructions, because git commits are used to generate release notes: - 💥[Feature] Upgrade to Sumac. (by @Faraz32123) - tutor-ecommerce will be deprecated with this release as the underlying e-commerce repositories have been archived. For more details, please refer to the deprecation ticket .i.e. https://github.com/overhangio/tutor-ecommerce/issues/83. -- 💥 [Deprecation] Drop support for python 3.8 and set Python 3.9 as the minimum supported python version. (by @Faraz32123) -- 💥[Improvement] Rename Tutor's two branches (by @DawoudSheraz): - * Rename **master** to **release**, as this branch runs the latest official Open edX release tag. - * Rename **nightly** to **main**, as this branch runs the Open edX master branches, which are the basis for the next Open edX release. - [BugFix] Updating the uwsgi version to the latest fixes `uwsgi: error while loading shared libraries: libpython3.12.so.1.0: cannot open shared object file: No such file or directory`. (by @Faraz32123)