You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
GH Actions/test: iterate on libxml installation steps
This commit updates the initial implementation for updating `libxml2` on the fly for select PHP versions.
Compared to the original implementation, the following changes were made:
* Use a `libxml_minor` flag in the matrix to indicate whether `libxml` should be updated for a particular job or not.
This `libxml_minor` flag also allows for specifying a specific minor to use for the update.
This flag is now set on the linux PHP 8.0 and PHP 8.3 builds.
_Take note: PHP 8.4 is explicitly not used, as the tests are not run in this job for that version (they are run in the `coverage` job instead)._
_In effect that meant that installing `libxml` on PHP 8.4 in the workflow, as per the original PR, wasn't safeguarding anything as without tests running, the tests couldn't fail._
* Based on the `libxml_minor` flag, update the job name to make it clear when a particular job uses a non-default `libxml` version.
* On the fly figure out what the latest relevant tag is for a certain `libxml` minor.
This makes the workflow more flexible by:
- Allowing for different minors.
- Prevents having a specific patch version hard-coded in the workflow (maintenance issue).
* Splits the `sudo apt-get update` command off to its own step as it is prone to intermittent failures.
* Splits the "Install" step into two steps: one to download and compile, one to install the newly compiled `libxml` version.
Doing this allows for caching the result of the compile step, diminishing the impact on the actions run time of compiling `libxml`.
* Adds an (unconditional) "debug" step to allow for verifying which `libxml` version is being used in each job.
0 commit comments