2017-02-16 3 views
1

Wie kann ich bower Befehl ohne Sudo mit gitlab öffentlichen Läufer laufen?Gitlab öffentliche Läufer wird nicht laufen, da in Sudo laufen

Das ist mein Skript

image: node:7 
before_script: 
    - npm install -g bower 
    - bower install 
... 

Dies ist das Ergebnis, das ich aus dem Test bekam.

... 
npm info ok 
$ bower install 
bower ESUDO   Cannot be run with sudo 

Additional error details: 
Since bower is a user command, there is no need to execute it with superuser permissions. 
If you're having permission errors when using bower without sudo, please spend a few minutes learning more about how your system should work and make any necessary repairs. 

http://www.joyent.com/blog/installing-node-and-npm 
https://gist.github.com/isaacs/579814 

You can however run a command with sudo using --allow-root option 
ERROR: Build failed: exit code 1 

Vielen Dank.

Antwort

2

Sie sollten --allow-root nach Ihrem bower Befehl hinzufügen.
Siehe: https://bower.io/docs/api/#allow-root

+0

Danke für die Antwort. Es löst das Problem, aber kann ich Bower in gitlab CI-Läufer ohne Wurzel laufen? –

+1

Ja, natürlich ist es möglich. Ich habe nicht genug Informationen, um zu sagen, warum es versucht, sudo hier zu verwenden, aber ich sehe, dass deine 'npm-Installation' das Flag '-g' verwendet, was möglicherweise der Grund dafür ist, dass es als sudo gestartet wird. Warum müssen Sie Bower global installieren? Das Entfernen des '-g' sollte funktionieren und kein root erfordern. – CCH

+0

Es ist möglich, aber in der lokalen Maschine verwende ich npm install -g und ich kann Bower ohne Problem laufen. –