Skip to content

Conversation

@zakame
Copy link
Member

@zakame zakame commented Jul 18, 2019

This adds generating Dockerfiles for each Perl version on multiple
Debian releases, such as for the current 5.30.x to support both Debian
10 (buster) and 9 (stretch). We also change the directory structure to
better indicate which Debian release it provides for.

Fixes #66 (after generating new Dockerfiles)

zakame added 2 commits July 18, 2019 12:08
This adds generating Dockerfiles for each Perl version on multiple
Debian releases, such as for the current 5.30.x to support both Debian
10 (buster) and 9 (stretch).  We also change the directory structure to
better indicate which Debian release it provides for.
Prepare building buster-based images for Perl 5.26, 5.28, and 5.30.
@Tekki
Copy link
Contributor

Tekki commented Jul 18, 2019

Looks good, builds all the buster and stretch folders if I set 5.30 to

debian_releases:
  - buster
  - stretch

Shouldn't the default release in line 146 be set to 'buster'?

@zakame
Copy link
Member Author

zakame commented Jul 18, 2019

Shouldn't the default release in line 146 be set to 'buster'?

Good catch, thanks! This will also need updating the configs for older unsupported Perls to specify stretch explicitly (save for those already on jessie.)

zakame added 2 commits July 18, 2019 12:52
Switch over to the current latest Debian release.
Retain older Perls 5.20 through 5.24 under Debian stretch for less
suprises; people can copy and modify these over to Debian buster
manually if needed.
@Tekki
Copy link
Contributor

Tekki commented Jul 18, 2019

One more thing: If I delete all 5.030* folders and run the script then no '5.030.000-main' (without Debian release name) is built. What will the perl:5.30 tag on Dockerhub contain, stretch or buster?

@zakame
Copy link
Member Author

zakame commented Jul 18, 2019

perl:5.30 will default to buster. I'll post a PR on https://github.com/docker-library/official-images/blob/master/library/perl after regenerating Dockerfiles and adjust the tags.

zakame added 2 commits July 18, 2019 14:03
Generate new Debian buster Dockerfiles and patches for Perls 5.26
through 5.30, and rename existing files to the new directory structure.
Note about the use of Debian release codename, and remove the obsolete
note about bit specification.
@zakame
Copy link
Member Author

zakame commented Jul 23, 2019

Sorry for the delay, I'm seeing a failure on building perl:5.28-buster:

#   Failed test 'Trapped error when attempting to write to knobbled GDBM_File'
#   at t/fatal.t line 37.
#          got: '1'
#     expected: undef

#   Failed test 'expected error message from GDBM_File'
#   at t/fatal.t line 46.
#                   ''
#     doesn't match '(?^: at .*\bfatal\.t line \d+\.\n\z)'
# Looks like you failed 2 tests of 8.
../ext/GDBM_File/t/fatal.t ......................................... 
Dubious, test returned 2 (wstat 512, 0x200)
Failed 2/8 subtests 

Have yet to recheck perl:5.26-buster, but this seems like https://rt.perl.org/Public/Bug/Display.html?id=133295. Might need a Devel::PatchPerl update/PR for this to patch in Perl/perl5@0d9e812

@zakame
Copy link
Member Author

zakame commented Jul 23, 2019

https://metacpan.org/pod/Devel::PatchPerl#CAVEAT

Devel::PatchPerl is intended only to facilitate the building of perls, not to facilitate the testing of perls. This means that it will not patch failing tests in the perl testsuite.

So for this case, likely just need to copy in Perl/perl5@0d9e812 manually under the 5.2{6,8} directories.

@zakame
Copy link
Member Author

zakame commented Jul 27, 2019

I was hoping to get #68 done first, but local testing of all the new Dockerfiles for 5.26 through 5.30 seem OK for me now. I'll merge this and make a PR for Hub publication soon.

Thanks everyone!

@zakame zakame merged commit 0104479 into Perl:master Jul 27, 2019
@zakame zakame deleted the support-multiple-debian-releases branch July 27, 2019 02:32
zakame added a commit to zakame/docker-library-official-images that referenced this pull request Jul 27, 2019
Provide Perl images built on both Debian 9 (stretch) and Debian
10 (buster) with the latter now set as the default base.

Perl/docker-perl#66
Perl/docker-perl#67
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.

Switch Perl 5.30 to Buster?

2 participants