Hi internals,
currently, as far as I know, php does not have nightly builds.
By nighly I means builds/releases that are tested to pass all CI tests.
This is not the case with master branch, as that branch can be failing
tests.
I propose to introduce "nightly" branch that will point to "the latest
master head that passed all CI tests". To limit cache misses on
dependent projects/builds (like docker images), I propose to update
"nightly" branch no more than once per day.
This will allow php comunity reliable testing of new language/engine
features much more sooned until next php minor version has an alpha
release.
What is your opinion on this and is here someone that can implement it?
With kind regards / Mit freundlichen Grüßen / S přátelským pozdravem,
Michael Voříšek
ČVUT FEL
On Sat, Nov 28, 2020 at 12:44 PM Michael Voříšek - ČVUT FEL <
vorismi3@fel.cvut.cz> wrote:
Hi internals,
currently, as far as I know, php does not have nightly builds.
By nighly I means builds/releases that are tested to pass all CI tests.
This is not the case with master branch, as that branch can be failing
tests.I propose to introduce "nightly" branch that will point to "the latest
master head that passed all CI tests". To limit cache misses on
dependent projects/builds (like docker images), I propose to update
"nightly" branch no more than once per day.This will allow php comunity reliable testing of new language/engine
features much more sooned until next php minor version has an alpha
release.What is your opinion on this and is here someone that can implement it?
With kind regards / Mit freundlichen Grüßen / S přátelským pozdravem,
Michael Voříšek
ČVUT FEL
Hey Michael,
It's not entirely clear to me what you're asking for here. Is it about
producing actual build artifacts? It's not possible to produce useful build
artifacts for PHP, because the number of dynamically linked libraries will
make them non-portable. The only thing we could produce are Docker images
-- and other people already provide that service.
If what you want is to just determine whether a certain commit is a good
base for a nightly build, I'd suggest finding our how to query scheduled
builds on Azure pipelines (builds like these:
https://dev.azure.com/phpazuredevops/PHP/_build/results?buildId=13228&view=results)
and check whether they pass. Note though that these will commonly fail even
on good commits, because they run tests in more than 60 different
configurations, and as such spurious failures are common.
Nikita
Thanks - via api - externally - it should be possible -
https://dev.azure.com/phpazuredevops/PHP/_apis/pipelines/1/runs?orderBy=date%20desc&top=1000&api-version=6.0-preview.1
The only thing we could produce are Docker images
Yes, building nightly Docker image is the intended usecase and I may
help with it.
Is it ok to introduce "master-passing" branch in official repo, that
will be updated at the very end by CI job triggered by push to "master"
branch?
With kind regards / Mit freundlichen Grüßen / S přátelským pozdravem,
Michael Voříšek
ČVUT FEL
On Sat, Nov 28, 2020 at 12:44 PM Michael Voříšek - ČVUT FEL vorismi3@fel.cvut.cz wrote:
Hi internals,
currently, as far as I know, php does not have nightly builds.
By nighly I means builds/releases that are tested to pass all CI tests.
This is not the case with master branch, as that branch can be failing
tests.I propose to introduce "nightly" branch that will point to "the latest
master head that passed all CI tests". To limit cache misses on
dependent projects/builds (like docker images), I propose to update
"nightly" branch no more than once per day.This will allow php comunity reliable testing of new language/engine
features much more sooned until next php minor version has an alpha
release.What is your opinion on this and is here someone that can implement it?
With kind regards / Mit freundlichen Grüßen / S přátelským pozdravem,
Michael Voříšek
ČVUT FELHey Michael,
It's not entirely clear to me what you're asking for here. Is it about producing actual build artifacts? It's not possible to produce useful build artifacts for PHP, because the number of dynamically linked libraries will make them non-portable. The only thing we could produce are Docker images -- and other people already provide that service.
If what you want is to just determine whether a certain commit is a good base for a nightly build, I'd suggest finding our how to query scheduled builds on Azure pipelines (builds like these: https://dev.azure.com/phpazuredevops/PHP/_build/results?buildId=13228&view=results) and check whether they pass. Note though that these will commonly fail even on good commits, because they run tests in more than 60 different configurations, and as such spurious failures are common.
Nikita