Skip to content

Conversation

@puneetmatharu
Copy link
Contributor

No description provided.

@puneetmatharu puneetmatharu changed the title Bump Dockerfile Ubuntu versions Draft: Bump Dockerfile Ubuntu versions Nov 26, 2025
@jondea
Copy link
Contributor

jondea commented Nov 26, 2025

I think this will silently update the Python version because we just use the default with the OS, so may need some tweaking of build-wheel.sh (and some other places)

@puneetmatharu puneetmatharu force-pushed the bump-dockerfile-ubuntu-versions branch from 988e5b2 to d9131e8 Compare November 26, 2025 11:07
@puneetmatharu
Copy link
Contributor Author

puneetmatharu commented Nov 26, 2025

I think this will silently update the Python version because we just use the default with the OS, so may need some tweaking of build-wheel.sh (and some other places)

Ah! Good point. I'll pass PYTHON_VERSION to Dockerfile via dockerize.sh and control the Python version (with the necessary additional Dockerfile adjustments)

That was naive of me. Ubuntu 24.04 doesn't provide Python 3.10 via apt-get so we might just have to bump to 3.12 with this change too... so we very likely won't be able to get this change in for the Dec release.

@nSircombe
Copy link
Contributor

won't be able to get this change in for the Dec release.
May be better to hold 'til the new year - this would show up as a version change for every deb and python package in the build?

@puneetmatharu puneetmatharu force-pushed the bump-dockerfile-ubuntu-versions branch from d9131e8 to 6edca2b Compare November 26, 2025 14:10
@puneetmatharu
Copy link
Contributor Author

puneetmatharu commented Nov 26, 2025

May be better to hold 'til the new year - this would show up as a version change for every deb and python package in the build?

Yeah, I agree. In testing I found a lot of package updates:

Removed 31 packages, added 41 packages, changed 5 packages

Better off handling this in the new year...

@puneetmatharu puneetmatharu changed the title Draft: Bump Dockerfile Ubuntu versions Draft: Bump Ubuntu (24.04) and Python (3.12) versions Nov 26, 2025
@nSircombe
Copy link
Contributor

Thanks for taking a look. That's actually not as much as I thought, but still quite a delta!

@puneetmatharu puneetmatharu force-pushed the bump-dockerfile-ubuntu-versions branch from 6edca2b to 589bebc Compare November 26, 2025 15:57
@puneetmatharu
Copy link
Contributor Author

Thanks for taking a look. That's actually not as much as I thought, but still quite a delta!

Admittedly, if we wanted, I could actually get that knocked out in a day... I think a lot of those additions/deletions are just gonna be the same package but just for a different distribution so the licenses are gonna quite easy to identify. Up to you...

@puneetmatharu puneetmatharu force-pushed the bump-dockerfile-ubuntu-versions branch from 589bebc to 49d8a2f Compare November 27, 2025 10:06
USER $DOCKER_USER

# Create a per-user virtualenv and use that for everything Python
RUN python -m venv /home/$DOCKER_USER/.venv
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do we need to use a venv? Surely docker acts as our venv?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At least from Python 3.12, I can't easily install packages system-wide. I can try to pull out the previous runs where I tried to do this but I had to use a virtual environment to handle this

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was it something like this: LandSandBoat/server#6385 ? If so, that's fair enough. The original design was aimed at simplicity (not having to activate anything to get things running) and a minimal SBOM, so provided we can still fulfil those two principles, I'm fine with it. One positive of venvs is that it allows you to separate build/debug/test environments in the same image (although we don't officially provide this functionality).

{ name: c7g, label: ah-ubuntu_22_04-c7g_8x-100 },
{ name: c8g, label: ah-ubuntu_22_04-c8g_8x }
{ name: c7g, label: ah-ubuntu_24_04-c7g_8x-100 },
{ name: c8g, label: ah-ubuntu_24_04-c8g_8x }
Copy link
Contributor

@jondea jondea Dec 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not against this, but I wanted to note that it's not technically required in this change. The CI image should be distinct from the one used to build the wheel and the TS image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants