Skip to content

Fix builds of old PHP images - #138

Merged
le0m merged 4 commits into
mainfrom
fix-build
Oct 21, 2026
Merged

le0m merged 4 commits into
mainfrom
fix-build

Conversation

@fquffio

@fquffio fquffio commented Oct 21, 2026 •

Copy link
Copy Markdown
Collaborator
  • PECL: old images ship PEAR < 1.10.18, which can't parse pecl.php.net responses anymore (No releases available for package …). Upgrade PEAR to 1.10.18 before installing extensions.
  • Retry: retry install-php-extensions up to 3 times to absorb transient PECL errors.
  • Compat 5.6: secure.php.net/get/… returns 404 and rejects Stretch's TLS. Download sources from www.php.net/distributions/ instead.
  • CI: set fail-fast: false on all matrices.

@fquffio fquffio changed the title Make CI resilient to transient PECL errors Fix PECL installs on old PHP images Oct 21, 2026
secure.php.net/get/... now returns 404, and its TLS setup is rejected by
Stretch's GnuTLS (alert 70: protocol version).
@fquffio fquffio changed the title Fix PECL installs on old PHP images Fix builds of old PHP images Oct 21, 2026
@fquffio
fquffio marked this pull request as ready for review October 21, 2026 16:10
@fquffio
fquffio requested review from le0m and a balanced review from Copilot October 21, 2026 16:10
@le0m
le0m merged commit 35df56c into main Oct 21, 2026
62 checks passed
@le0m
le0m deleted the fix-build branch October 21, 2026 16:19

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

🔵 Needs a closer look

Retry cleanup remains unresolved, and legacy PEAR/TLS compatibility needs full-matrix build validation and human review.

1 open issue
What changed in this PR

Improves build reliability for legacy PHP images and keeps CI matrix jobs running independently.

Changes:

  • Upgrades PEAR before extension installation and adds three-attempt retries.
  • Updates PHP 5.6 source and signature download URLs.
  • Disables fail-fast across test and publish matrices.
File Description
xhprof/​Dockerfile Retries XHProf installation.
pcov/​Dockerfile Retries PCOV installation.
otel/​Dockerfile Retries telemetry extension installation.
Dockerfile.alpine Upgrades PEAR and retries extensions.
Dockerfile Upgrades PEAR and retries extensions.
dev/​Dockerfile Retries Xdebug installation.
compat/​Dockerfile.5.6-fpm Updates downloads, PEAR, and retries.
compat/​Dockerfile.5.6-apache Updates downloads, PEAR, and retries.
compat/​Dockerfile.5.6 Updates downloads, PEAR, and retries.
.github/​workflows/​test.latest.yml Disables matrix fail-fast.
.github/​workflows/​test.compat.yml Disables matrix fail-fast.
.github/​workflows/​test.8.yml Disables matrix fail-fast.
.github/​workflows/​test.7.yml Disables matrix fail-fast.
.github/​workflows/​test.5.yml Disables matrix fail-fast.
.github/​workflows/​publish.latest.yml Disables matrix fail-fast.
.github/​workflows/​publish.compat.yml Disables matrix fail-fast.
.github/​workflows/​publish.8.yml Disables matrix fail-fast.
.github/​workflows/​publish.7.yml Disables matrix fail-fast.
.github/​workflows/​publish.5.yml Disables matrix fail-fast.

Review effort: Balanced

Comment thread Dockerfile
&& if [ "${PHP_VERSION%%.*}" = "7" ]; then \
install-php-extensions amqp \
&& install-php-extensions $(echo "$PHP_EXTENSIONS" | sed 's/amqp//'); \
retry install-php-extensions amqp \
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants