-
Notifications
You must be signed in to change notification settings - Fork 294
Build pipeline for multiple PHP versions and targets #7
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
Labels
Comments
Multiple PHP versions are now supported via |
brandonpayton
pushed a commit
that referenced
this issue
Feb 25, 2025
## Motivation for the change, related issues Files in a zip file should only have relative urls as per spec. Right now, when exporting the backup for the site, we create a zip file with a leading slash in the files inside it. This got surfaced in Studio app when we switched to a diff zip library that strictly adheres to zip spec and PG exported zip files fail to process. Related to: Automattic/dotcom-forge#10369 Note: There are other places where `ZipArchive` is used but this PR only modifies the location that impacts the site export. <img width="531" alt="Screenshot 2025-01-30 at 11 44 32" src="https://github.com/user-attachments/assets/561896ee-0fe9-40c1-b413-d226c68fc0be" /> Probably other places can use the same change, and I can follow that up in a separate PR, if you like. ## Testing Instructions (or ideally a Blueprint) Export zip of a site and examine the file paths inside it using the following script: ```php <?php $zip = new ZipArchive(); $zip->open('/Users/ashfame/Downloads/wordpress-playground-16.zip'); echo "=== ZIP Contents ===".PHP_EOL; for($i = 0; $i < $zip->numFiles; $i++) { echo $zip->getNameIndex($i) . PHP_EOL; } echo "=== End ZIP Contents ===".PHP_EOL; $zip->close(); ``` Prior to this PR, you would see file paths like: ``` /wp-content/themes/twentytwentyfive/patterns/more-posts.php ``` and with this PR you will see file paths without the leading slash: ``` wp-content/themes/twentytwentyfive/patterns/more-posts.php ```
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
What problem is this issue looking to solve?
A pipeline that builds all the listed PHP versions would pave the way to one-click switching of the PHP version:
How does this issue proposes to solve it?
The technical foundation was shipped in 45ba8ce. Since that commit, the docker build process can be build a specific PHP version as follows:
I confirmed it works with
7.0.0
,7.0.24
and even8.0.29
when vrzno is disabled. It may break for versions that are not compatible with the PHP patches shipped in this repo.The text was updated successfully, but these errors were encountered: