metabrainz / musicbrainz-docker

Docker Compose project for the MusicBrainz Server with replication, search, and development setup
https://musicbrainz.org/doc/MusicBrainz_Server/Setup
297 stars 75 forks source link

MBS-13358 (III): Upgrade Perl version to 5.38.2 for mirrors #276

Closed yvanzo closed 4 months ago

yvanzo commented 5 months ago

MBS-13358 (III)

This patch upgrades Perl version to 5.38.2 for the MusicBrainz Server for mirrors.

See commit messages for the details of the implementation which is adapted from the official docker-perl.

This is the third and last step to implement the above linked ticket.

This pull request is targeting the branch schema-change-2024-q2 in order to avoid messing up new installations until the schema change is released, and to allow for potential hotfixes to the current release in the meantime if needed.

Additional changes

Install the Perl module dependencies of MusicBrainz Server using Carton, as in musicbrainz-* Docker images. It prevents breaking the build when a new version of a dependency is released with some incompatibility.

yvanzo commented 5 months ago

I did set MUSICBRAINZ_SERVER_VERSION=master, build image with --no-cache, put the mirror website up and resume replication. However I was wrongly using a development setup. Testing it again with a mirror setup failed when building perl without build-essential but also when installing DateTime::Locale with cpanm instead of carton. I’m working on a patch which is almost ready but each build takes some time.

yvanzo commented 5 months ago

Now fixed the build and tested against both MBS v-2024-04-09 and the current master branch (requiring Perl 5.38.0).

@reosarevok, please also test it in some way, building, running and using.

yvanzo commented 4 months ago

Reviewed by @reosarevok on IRC.