Repository navigation
Fix removal of legacy ondrej/php PPA sources - #1696
Merged
Merged
Conversation
#1680 removes `ondrej-ubuntu-php-<release>.list`, which is the filename `add-apt-repository` creates. Trellis added the PPA with Ansible's `apt_repository` module, which names the file `ppa_ondrej_php_<release>.list`, so the PPA stayed configured on existing servers alongside packages.sury.org. Remove all known filenames for the PPA source, including the deb822 `.sources` file newer `add-apt-repository` versions create. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ansible-core 2.21 fails to import on Python 3.15 (`module 'dataclasses' has no attribute '_is_type'`), and `3.x` now resolves to 3.15.0. Match the integration workflow, which already pins 3.14. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #1680.
Problem
#1680 removes
/etc/apt/sources.list.d/ondrej-ubuntu-php-<release>.list, which is the filenameadd-apt-repositorycreates. Trellis added the PPA with Ansible'sapt_repositorymodule, which names the fileppa_ondrej_php_<release>.list. On existing servers the PPA stays configured alongside packages.sury.org after upgrading to v1.32.0.Found on a noble server provisioned with Trellis:
With the PPA overloaded during today's PHP security release, its fetches failed, so the "Add Sury PHP repository" task's cache update kept failing and retrying, and provisioning appeared stuck for minutes.
Fix
Loop over every known filename for the PPA source:
ppa_ondrej_php_<release>.list(Ansibleapt_repository)ondrej-ubuntu-php-<release>.list(add-apt-repository)ondrej-ubuntu-php-<release>.sources(deb822, neweradd-apt-repository)The legacy PPA signing key can also live in
/etc/apt/trusted.gpgrather thantrusted.gpg.d, which this doesn't address. It's harmless once the source is removed.CI
Also pins the template test job to Python 3.14.
3.xnow resolves to Python 3.15.0, where ansible-core 2.21 fails to import (module 'dataclasses' has no attribute '_is_type'). The integration workflow already pins 3.14.🤖 Generated with Claude Code