Error building openedx image with Tutor redwood

Thanks @meet1 that makes sense.

That fixes the particular libc mismatch error.

It did unveil a further error about a missing package:

 > [python 1/4] RUN --mount=type=cache,target=/var/cache/apt,sharing=locked     --mount=type=cache,target=/var/lib/apt,sharing=locked     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:
0.312
0.312 WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
0.312
1.015 Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
1.064 Hit:2 http://security.ubuntu.com/ubuntu jammy-security InRelease
1.253 Hit:3 http://archive.ubuntu.com/ubuntu jammy-updates InRelease
1.495 Hit:4 http://archive.ubuntu.com/ubuntu jammy-backports InRelease
1.553 Reading package lists...
2.093 Building dependency tree...
2.206 Reading state information...
2.213 All packages are up to date.
2.220
2.220 WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
2.220
2.290 Reading package lists...
2.856 Building dependency tree...
2.965 Reading state information...
2.975 E: Unable to locate package python-openssl
------
Dockerfile:17
--------------------
  16 |     # https://github.com/pyenv/pyenv/wiki/Common-build-problems#prerequisites
  17 | >>> RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \
  18 | >>>     --mount=type=cache,target=/var/lib/apt,sharing=locked \
  19 | >>>     apt update && \
  20 | >>>     apt install -y libssl-dev zlib1g-dev libbz2-dev \
  21 | >>>     libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
  22 | >>>     xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
  23 |
--------------------
ERROR: failed to build: failed to solve: process "/bin/sh -c 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" did not complete successfully: exit code: 100

I can fix that by changing python-openssl to python3-openssl.

Then I can get it to build by:

tutor images build openedx-dev
tutor dev launch -I --skip-build

Tutor auto regenerates the files under env/ when you run dev launch. So I needed to use --skip-build to not try rebuilding the openedx-dev image, without my temporary changes. EDIT: I could also patch the Dockerfile template in Tutor itself, that made it easier. EDIT2: actually I still need --skip-build, because otherwise I get TypeError: expected string object, got 'Sentinel'.

Then it launches successfully, but there is a runtime error:

lms-1            | RuntimeError: Model class openedx.core.djangoapps.content_libraries.models.ContentLibrary doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

It appears to be the same as Django Installed Apps Error after Quickstart on M1. I can’t try running something in the lms or cms containers, because they’re stuck in restarting status. I’ll have to try the other solution from the thread which is to not use a locally mounted edx-platform…