2016-04-27 12 views
0

Ich installierte Jenkins, ich bin neu dazu. Habe einen Benutzer erstellt, das CMake Plugin installiert. Ich versuche, ein einfaches Projekt zu kompilieren, nur um anzufangen, aber ich kann das nicht mal machen.Jenkins und CMake: Erlaubnisfehler

Nach Beschwerde der einige Dateien nicht in der Lage zu öffnen (wie build/CMakeFiles/CMakeOutput.log), am Ende der Ausgabe heißt es:

-- Configuring incomplete, errors occurred! 
CMake Error: Cannot open file for write: /home/username/development/csa/build/CMakeCache.txt.tmp 
CMake Error: : System Error: Permission denied 
CMake Error: Unable to open cache file for save. /home/username/development/csa/build/CMakeCache.txt 
CMake Error: : System Error: Permission denied 
Build step 'CMake Build' marked build as failure 
Finished: FAILURE 

Für mich eindeutig ein Problem mit den Berechtigungen ist. Das Build-Verzeichnis ist leer, es hat nichts getan. Ich habe einen Benutzer, begann jenkins und eine der folgenden hatte keinen Einfluss auf den Ausgang:

sudo /etc/init.d/jenkins start --user jenkins 
sudo /etc/init.d/jenkins start --user username 
sudo /etc/init.d/jenkins start 

Ich bin nicht einmal versuchen, den Code zu kompilieren, sondern nur die cmake Dateien zu bauen versuchen ... meine Konfiguration ist wie folgt aus: (so einfach wie möglich)

enter image description here

ich ein Arbeitsverzeichnis hinzugefügt haben, die in meinem Home-Ordner ist, so habe ich Berechtigungen für sie.

EDIT: Ich änderte das Eigentum des Erstellungsordners zu jenkins, erstellte eine Benutzergruppe namens jenkinsusers, fügte mir und jenkins der Gruppe hinzu und gab der Gruppe Lese-/Schreibberechtigungen. Es scheint jetzt zu funktionieren. Aber ich bin mir nicht sicher, ob dies der Standard Weg ist ...

Antwort

1

Also ich bin mir nicht sicher, ob das der richtige Weg ist, aber so habe ich es gemacht: Ich habe den Besitzer des Verzeichnisses in jenkins geändert.

Der Arbeitsbereich Ordner befindet sich unter meinem Home-Verzeichnis (~/myproject/build). Das ist wahrscheinlich das Problem. Das Kompilieren erfolgt mit catkin_make, einem Tool von ROS.