exit (1) in Datei führt zum Skriptstatuscode 0

8

Auf Ubuntu-Maschine:

%Vor%

Meine test.php Datei ist einfach:

%Vor%

Ich würde erwarten, dass dieser Befehl php test.php || echo "error" "error" anzeigt, aber mit dem Statuscode 0 endet.

%Vor%

Aber auf der gleichen Maschine funktioniert der gleiche Code, aber nicht in der Datei wie erwartet:

%Vor%

oder

%Vor%

Auf einem anderen Rechner (archlinux) mit php:

%Vor%

Alle Fälle funktionieren wie erwartet, selbst wenn der Code aus der Datei ausgeführt wird, ist der Statuscode 1.

Das ist ein echtes Problem, weil Git-Hooks von diesen Statuscodes und Jenkins abhängen und ich es nicht googlen konnte.

Könnte es irgendwie config-bezogen sein? Ich habe cli php.ini überprüft und konnte nichts Verdächtiges finden.

    
meta 25.06.2014, 09:26
quelle

1 Antwort

7

Die Erweiterung uopz ist das Problem. Es "korrumpiert" den Exit-Code. Über dieses Problem wurde ein Fehler geöffnet.

Sie können versuchen, die Konfiguration uopz.overloads=0 so einzustellen, wie es in den Fehlerkommentaren empfohlen wurde. Das hat leider nicht für mich funktioniert. Nur durch Deaktivieren der Erweiterung wurde das Problem behoben.

    
Christian P 25.06.2014, 10:26
quelle

Tags und Links