Page MenuHomePhabricator

update.php failing, install path no longer recognized. SetupAfterCache.php complains "Expected an accessible /extensions/Bootstrap/.."
Closed, ResolvedPublic


I have a very automated build/deploy process, and it just broke.
I believe this suggests a bug/breaking change in mw REL1_29 ( 4e8366eae3 ) .

Specifically "php update.php --quick" is failing.
extensions/Bootstrap/src/Hooks/SetupAfterCache.php complains at line 162.
"Expected an accessible /extensions/Bootstrap/resources/bootstrap path"

however if I hardcode prepend so that the path is "/var/www/html/extensions/Bootstrap/resources/bootstrap" all proceeds as it used to. Since /var/www/html/ is where I'm installing, it seems the install path is missing. However the steps that trigger this have worked for years against numerous previous versions.

Event Timeline

Does it definitely work on the previous commit of REL1_29?

Or is this actually a bug with Bootstrap, and wants reporting at

My build was run on
2017-11-23 14:05:05 UTC+0000
when it worked fine.

2017-11-30 14:42:00 UTC +0000
it's failing at 4e8366eae3

I see only one commit between them

The files modified in that commit are
some text (license, readme, etc)
and the nature of the changes in
resources/Resources.php seems unlikely to be a factor.

There were no commits on that repo for months, until a burst of recent commits that smell like plausible sources of the break

Release Bootstrap 1.2.2
s7eph4n committed 4 days ago

Unbreak the extension when vendor/ is blocked
s7eph4n committed 4 days ago
Commits on Nov 20, 2017


Revert attempted fix. Does not work.
s7eph4n committed 10 days ago


Next attempt
s7eph4n committed 10 days ago

Unbreak the extension when vendor/ is blocked
s7eph4n committed 10 days ago

stack trace

php update.php --quick
checking /extensions/Bootstrap/resources/bootstrap[4802f35cd06137a03c6ecdb7] [no req] RuntimeException from line 163 of /var/www/html/extensions/Bootstrap/src/Hooks/SetupAfterCache.php: Expected an accessible /extensions/Bootstrap/resources/bootstrap path
#0 /var/www/html/extensions/Bootstrap/src/Hooks/SetupAfterCache.php(68): Bootstrap\Hooks\SetupAfterCache->isReadablePath(string)
#1 /var/www/html/extensions/Bootstrap/Bootstrap.php(83): Bootstrap\Hooks\SetupAfterCache->process()
#2 [internal function]: {closure}()
#3 /var/www/html/includes/Hooks.php(186): call_user_func_array(Closure, array)
#4 /var/www/html/includes/Setup.php(682): Hooks::run(string)
#5 /var/www/html/maintenance/doMaintenance.php(98): require_once(string)
#6 /var/www/html/maintenance/update.php(239): require_once(string)
#7 {main}

Sounds like you need to report it upstream then :)

Foxtrott claimed this task.