Commit graph

291 commits

Author SHA1 Message Date
Zak B. Elep
70727fb79e generate.pl: Add patch for Time::Local on perls between 5.26 - 5.30
- https://github.com/Perl/docker-perl/issues/76
- https://github.com/Perl/perl5/issues/17410

For current-supported perls, only 5.28 is affected.
2020-01-22 14:03:29 +08:00
Zak B. Elep
b15d6d60e9 ⚙️ Fix GitHub Action workflows to run on push or pull-request 2020-01-21 18:14:25 +08:00
Zak B. Elep
4ca28f3d63 Add GitHub Actions for building latest supported Perls 2019-11-30 12:02:31 +08:00
Zak B. Elep
daa1556bfd Add GitHub Actions for testing generate.pl
Test using GitHub Actions for this repo.
2019-11-30 12:02:31 +08:00
Zak B. Elep
61f3aae15f ⚙️ Regenerate Dockerfiles 2019-11-23 11:04:11 +08:00
Zak B. Elep
b163317e64 generate.pl: set an always-accessible WORKDIR for any user
Ensure Perl containers can run even when the working `USER` is altered
by using `WORKDIR /`, as non-root users are unable to access `/root`.
This is especially noticeable in Kubernetes clusters (where container
processes are prevented from running as root.)

Fixes #72.
2019-11-23 11:01:34 +08:00
Zak B. Elep
bad811d7db ⚙️ Remove Perl 5.30.0 2019-11-17 15:10:04 +08:00
Zak B. Elep
4118110e48 ⚙️ Regenerate Dockerfiles and patches 2019-11-17 15:09:20 +08:00
Zak B. Elep
2d65cb7762 config.yml: Update for Perl 5.30.1 2019-11-17 15:08:26 +08:00
Zak B. Elep
0104479194 Add patch for GDBM_File on 5.26/5.28 Debian buster builds
This patch backports some test skips on GDBM_File against the newer
libgdbm on Debian 10 (buster) from Perl 5.30.

https://rt.perl.org/Public/Bug/Display.html?id=133295
0d9e812de5.patch
2019-07-27 10:32:22 +08:00
Zak B. Elep
867511fdf1 README.md: Update directory structure description
Note about the use of Debian release codename, and remove the obsolete
note about bit specification.
2019-07-27 10:32:22 +08:00
Zak B. Elep
881b8c3329 ⚙️ Regenerate/rename Dockerfiles and patches
Generate new Debian buster Dockerfiles and patches for Perls 5.26
through 5.30, and rename existing files to the new directory structure.
2019-07-27 10:32:22 +08:00
Zak B. Elep
55da8cbe45 config.yml: Explicitly specify Debian stretch for previous Perls
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.
2019-07-27 10:32:22 +08:00
Zak B. Elep
21414bb86b generate.pl: Default Debian release to build is buster
Switch over to the current latest Debian release.
2019-07-27 10:32:22 +08:00
Zak B. Elep
ebec210424 config.yml: Add Debian 10 (buster) support for current Perls
Prepare building buster-based images for Perl 5.26, 5.28, and 5.30.
2019-07-27 10:32:22 +08:00
Zak B. Elep
9e34ee448a generate.pl: Support building for multiple Debian releases
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.
2019-07-27 10:32:22 +08:00
Rolf Stöckli
92233bc529 Add Perl 5.30. 2019-05-27 14:25:34 +08:00
Rolf Stöckli
9c26484442 Update patch files for older versions. 2019-04-27 13:42:06 +08:00
Rolf Stöckli
d52144a6dc Remove 5.28.1. 2019-04-27 13:42:06 +08:00
Rolf Stöckli
8d750292cf Update config, create Dockerfiles for 5.28.2. 2019-04-27 13:42:06 +08:00
Wesley Schwengle
1d9b7503c9 Fix bug where git diff always differs with upstream
When running generate I get a lot of differences in DevelPatchPerl.patch
because git's `diff.mnemonicprefix` is set to `true`. To mitigate this,
use `git -c 'diff.mnemonicprefix=false' diff` so everything is the same
as upstream.
2019-03-29 14:39:27 +08:00
Wesley Schwengle
0b759cd7f8 Remove old config defintions
Commit 65ea3a9754 forgot to remove older
perl versions.
2019-03-29 11:09:44 +08:00
Zak B. Elep
65ea3a9754 💥 Remove older 5.26/5.28 releases 2019-01-28 14:16:44 +08:00
Henrik Andersen
423033ce3d added perl 5.26.3 and 5.28.1 2019-01-28 14:16:09 +08:00
Zak B. Elep
fdeef39b23 ⚙️ Regenerate all Dockerfiles
Fetch cpanm over HTTPS.
2018-08-26 13:44:06 +08:00
Zak B. Elep
6c54c839cc Fetch cpanm over HTTPS
Fixes #55, thanks @J0WI for spotting!
2018-08-26 13:41:46 +08:00
Zak B. Elep
892e2b4fbb 💄 Update README
As the Dockerfile directory names have changed, update the note here
regarding builds on multiple architectures.
2018-08-12 15:48:28 +08:00
Zak B. Elep
1cd70cc9e1 ⚙️ Regenerate all Dockerfiles
This renames the previous directories to use the new build scheme, as
well as adds new directories for the `slim` variants.
2018-08-12 15:36:16 +08:00
Zak B. Elep
0cb4fc3643 generate.pl: overhaul to support building slim images
Do a long-needed overhaul of this script allow building of `slim`
variants:

- Make the base image configurable through a new `builds` setting.
- Rename the `64bit` image to `main`, as bit-ness no longer applies as
  we already build on multiple architectures.
- Rename `Releases.yaml` to the more general `config.yml`, allowing it
  to contain the supported image variants and Configure options.
- Run through perltidy 💄

The `slim` variants installs the minimum build-deps needed to build
Perl, and removes them after (save for make and netbase, to retain being
able to install CPAN modules through cpanm.)
2018-08-12 15:36:16 +08:00
Zak B. Elep
b4032ceb63 💄 Add Perl::Tidy for development
Adapt a .perltidyrc from Mojo, modified for long lines support.
2018-08-04 19:46:34 +08:00
Zak B. Elep
c3e4a229b3 Generate 5.028.000 2018-06-25 19:59:24 +08:00
Zak B. Elep
0b12942363 Add 5.28.0
Cf. https://github.com/Perl/docker-perl/issues/48
2018-06-25 19:57:13 +08:00
Zak B. Elep
54f85d9b00 💄 Regenerate current Dockerfiles
Only change here is the `tar` option to use `--auto-compress` instead of
a specific compression option.
2018-06-25 19:53:27 +08:00
Zak B. Elep
7720ae37ff generate.pl: support perl dists of different compression types
Perl 5.28.0 seems to be distributed only in gzip and xz tarballs now, so
adjust accordingly.  This now requires a GNU tar with
`-a/--auto-compress` option support (tar version >= 1.20) which
buildpack-deps Docker image already includes; those wanting to use this
script to regenerate, however, should match their tar version as well.
2018-06-25 19:48:10 +08:00
Zak B. Elep
1c201e950e Regenerate all Dockerfiles for cpanm 1.7044 2018-04-19 22:14:18 +08:00
Zak B. Elep
28cb55bcf0 Update bundled cpanm to 1.7044
Better support for zip file dist with comments and using MetaCPAN for
HTTPS downloads by default.
2018-04-19 22:01:55 +08:00
Zak B. Elep
b1d0459e7a generate.pl: prefer to use VERSION with numeric form
As stated in `perldoc -f use`, using a v-string literal should be
avoided in favor of numeric form for backwards compatibility.
2018-04-19 21:39:16 +08:00
Zak B. Elep
c2454eadb0 Remove older 5.24/5.26 releases 2018-04-19 21:35:50 +08:00
Zak B. Elep
642ba5d1d3 Generate 5.024.004/5.026.002 2018-04-19 21:28:42 +08:00
Zak B. Elep
e208134d95 Update 5.24 and 5.26
New updates prior to the release of 5.28 this May.
2018-04-19 21:19:17 +08:00
Zak B. Elep
a5c2d6c896 Remove older 5.24/5.26 releases 2017-12-04 12:06:03 +08:00
Zak B. Elep
0bf7c670fe 💄 fix README.md links 2017-12-04 11:43:59 +08:00
Zak B. Elep
8fa44fb367 Add cpanfile 2017-12-04 10:56:56 +08:00
Zak B. Elep
717a26014d Update README.md
Now mention Docker Perl on architectures other than amd64, as well as
provide instructions for regenerating the Dockerfiles.
2017-12-04 10:55:20 +08:00
Zak B. Elep
7f1f1a3b17 Generate 5.024.003/5.026.001 2017-12-04 10:26:35 +08:00
Zak B. Elep
9bf439f4db Update 5.24 and 5.26 2017-12-04 10:24:57 +08:00
Tianon Gravi
cace6e7a2c Adjust "./Configure" for wider architecture support
This adds an appropriate "-Darchname" value for cross-building (arm32v7 builds on an arm64v8 kernel, i386 builds on an amd64 kernel, etc), and conditionally converts "-Duse64bitall" into "-Duse64bitint" (which is what Debian uses when compiling Perl).

See also https://sources.debian.net/src/perl/stretch/debian/config.debian/#L115 and https://sources.debian.net/src/perl/stretch/debian/config.debian/#L130.

> *** You have chosen a maximally 64-bit build,
> *** but your pointers are only 4 bytes wide.
> *** Please rerun Configure without -Duse64bitall.
> *** Since you have quads, you could possibly try with -Duse64bitint.
2017-09-05 01:12:38 +08:00
Zak B. Elep
8044d4ba76 Comment CHECKSUMS location for reference
We might probably update this later when cpanm/Menlo gets bumped.
2017-08-19 19:25:22 +08:00
Zak B. Elep
4ca9bccb3d Regenerate Dockerfiles to fetch cpanm dist with checksum
Now less ugly than copy a static fatpacked cpanm into our repo.
2017-08-19 19:25:22 +08:00
Zak B. Elep
f91962cfe6 Embed cpanm SHA256 checksum for verifying in image build
Install cpanm in the same fashion as Perl: via source dist with SHA256
checksum.  Thanks @tianon for the idea!
2017-08-19 19:25:22 +08:00