ich habe Jenkins von der apt-Befehlszeile auf Ubuntu aktualisiert. Ich habe Sudo apt Upgrade-Jenkins sofort nach dem Update durchgeführt. Ich erhalte Folgendes:
jenkins.model.InvalidBuildsDir: ${ITEM_ROOTDIR}/builds does not exist and
probably cannot be created
at jenkins.model.Jenkins.checkRawBuildsDir(Jenkins.Java:3085)
at jenkins.model.Jenkins.loadConfig(Jenkins.Java:3009)
Caused: Java.io.IOException
at jenkins.model.Jenkins.loadConfig(Jenkins.Java:3012)
at jenkins.model.Jenkins.access$1200(Jenkins.Java:304)
at jenkins.model.Jenkins$14.run(Jenkins.Java:3104)
at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run
(TaskGraphBuilder.Java:169)
at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.Java:296)
at jenkins.model.Jenkins$5.runTask(Jenkins.Java:1068)
at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.Java:214)
at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.Java:117)
at Java.util.concurrent.ThreadPoolExecutor.runWorker
(ThreadPoolExecutor.Java:1149)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run
(ThreadPoolExecutor.Java:624)
at Java.lang.Thread.run(Thread.Java:748)
Caused: org.jvnet.hudson.reactor.ReactorException
at org.jvnet.hudson.reactor.Reactor.execute(Reactor.Java:282)
at jenkins.InitReactorRunner.run(InitReactorRunner.Java:48)
at jenkins.model.Jenkins.executeReactor(Jenkins.Java:1102)
at jenkins.model.Jenkins.<init>(Jenkins.Java:904)
at hudson.model.Hudson.<init>(Hudson.Java:85)
at hudson.model.Hudson.<init>(Hudson.Java:81)
at hudson.WebAppMain$3.run(WebAppMain.Java:233)
Caused: hudson.util.HudsonFailedToLoad
at hudson.WebAppMain$3.run(WebAppMain.Java:250)
Ich habe dies erlebt, als das $JENKINS_HOME/jobs
-Verzeichnis falsche Berechtigungen oder Besitzrechte hatte. In meinem speziellen Fall hatte ich Jobs auf einem Testserver und hatte vergessen, den Dateibesitz zu aktualisieren, damit er mit dem Benutzer übereinstimmt, auf dem Jenkins auf dem Testsystem ausgeführt wird. Durch das Ändern des Besitzes zum richtigen Benutzer wurde das Problem behoben.
Es gibt wahrscheinlich mehrere Gründe, warum dieser Fehler auftreten kann, aber ich würde zunächst die Dateien und Verzeichnisse unter $JENKINS_HOME
überprüfen, um sicherzustellen, dass der Benutzer, der den Jenkins-Prozess ausführt, sie lesen und schreiben kann.
Ich habe gerade eine Lösung gefunden. Nach dem Update hatte Jenkins Home-Verzeichnis eine Fülle von Dateien mit ubuntu
- und jenkins
-Besitzern. Ich habe gerade den Besitzer für alle zurück auf jenkins
gewechselt:
Sudo chown -R jenkins:jenkins $JENKINS_HOME