-
Notifications
You must be signed in to change notification settings - Fork 3.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Third party PHP repository will be removed from the Ubuntu 22.04 image #6331
Comments
Oh, dear. This will be a big blow for people using the defaults. Really badly out dated versions only available by default. |
The effect will be massively more bandwidth and compute time for PHP users as they start turning on the force update flag in order to get a usable version of PHP. https://github.com/shivammathur/setup-php#force-update-setup. Please re-consider this change. |
I sympathise with the Has this been communicated by email by any chance for orgs that uses PHP on GH Actions or people that didn't see Graham's Tweet will just have a touch-luck in 2 weeks? |
@deleugpn it is very good idea to ask about additional information for better understanding. I will answer with great pleasure all questions for which I have answers. @GrahamCampbell take a look here, please. So! What we have now? We have Ubuntu 18, 20 and 22 images. Let's take a look under the hood! Here are the lists of preinstalled PHP versions for all these images: Ubuntu 18, Ubuntu 20, Ubuntu 22. For now, the only change is that the Ubuntu 22 image will use the official repository as the PHP source. In some not too distant future, after migrating YAML label "latest" from Ubuntu 20 runner image to Ubuntu 22, this will mean that the "ubuntu-latest" image will have only the latest available version of PHP officially distributed in the Canonical repository. These changes practically do not affect the current state of the images, no one plans to remove the pre-installed versions of PHP from Ubuntu 20. In this way, we can be practically sure that nothing particularly breaking will happen after two weeks. |
This encourages projects to use containers in their actions and workflows. That has both pros and cons. |
@erik-bershel So just to understand this: when always using the most recent version is fine, nothing changes? |
This is exactly the problem, however. The officially distributed PHP versions with Ubuntu are very, very old, and unusable to most people. This is why everyone uses the PPA that you have currently installed. |
@hrst I can't say that nothing will change at all in answer to your question. To be brief, for Ubuntu 20, nothing really will change according to that announcement. |
This effectively means that the PHP version included in the Ubuntu 22 image cannot be used if you want (or need) to test your application with a PHP version that includes the latest bugfixes and security patches. For me personally, this would mean broken builds as soon as This change is far from ideal and the proposed mitigation comes with its own set of drawbacks, as others in this issue have already pointed out. |
GitHub is tightening security on our images. This change has the opposite effect and at a minimum should be paused for the impact to be properly assessed. It reads as if there's a fundamental misunderstanding of what php packages are available, and how they're managed in the default Ubuntu repos. |
Does this mean best solution is to go back to maintaining a custom image to run on again? |
No, but if people did do that, it would definitely have the opposite effect of security hardening. |
Changes applied. The new image has been deployed. |
And the setup-php action has put in mitigations to precisely undo this change. |
Actually Large Runners are not updated it, lets preserve it open for a while |
What is the recommended migration way, when using Azure DevOps Pipelines? |
@sgloe you can still add the repo's addition step to your pipeline and then install a php version of your choice |
@mikhailkoliada Thanks, that's what we did now. Unfortunately, this increases build time by 90 seconds. |
… versions than what's installed on ubuntu-latest which is just 8.1 at the moment - actions/runner-images#6399 - actions/runner-images#6331
… versions than what's installed on ubuntu-latest which is just 8.1 at the moment - actions/runner-images#6399 - actions/runner-images#6331
… versions than what's installed on ubuntu-latest which is just 8.1 at the moment - actions/runner-images#6399 - actions/runner-images#6331
What is the YAML settings to install PHP8.2 on Microsoft hosted action runners? This is what I have in my YAML file, and it is failing on
|
Breaking changes
The third party repository for PHP will be removed from the Ubuntu 22.04 image in favor of the official Ubuntu software repository.
Target date
October, 31. The propagation will take 2-3 days.
The motivation for the changes
GitHub is tightening security on our images and will only use official sources for packages we install on our runner images going forward.
Possible impact
GitHub will not be able to add / pre-cache more versions of PHP on images in the future than what the Ubuntu repository offers. If your build depends on a pre-installed PHP version that is not the most up-to-date, they may break in the future. (for example there are 3 PHP versions pre-cached on Ubuntu 20.04 but this will not be the case for Ubuntu 22.04)
Platforms affected
Runner images affected
Mitigation ways
GitHub recommends using the setup-php action for any customers who want to use any other (non-installed) versions of PHP or want to get latest PHP faster.
The text was updated successfully, but these errors were encountered: