2017-08-23 4 views
0

In meinem Test-Setup verwende ich einen Docker-Executor, um meine Builds auszuführen. Fast alle unsere Projekte laufen auf einem der offiziellen Knotenbilder (zB node:6).Übergeben Sie die Umgebungsvariable von Gitlab docker executor an image

Standardmäßig enthalten diese offiziellen Bilder eine Protokollierungsstufe, die ziemlich abit ausgegeben wird.

Nach der offiziellen Dokumentation kann, dass https://github.com/nodejs/docker-node/blob/master/README.md#verbosity

Verbosity 

By default the Node.js Docker Image has npm log verbosity set to info instead 
of the default warn. This is because of the way Docker is isolated from the 
host operating system and you are not guaranteed to be able to retrieve the 
npm-debug.log file when npm fails. 

When npm fails, it writes it's verbose log to a log file inside the container. 
If npm fails during an install when building a Docker Image with the docker 
build command, this log file will become inaccessible when Docker exits. 

The Docker Working Group have chosen to be overly verbose during a build to 
provide an easy audit trail when install fails. If you prefer npm to be less 
verbose you can easily reset the verbosity of npm using the following 
techniques: 

Dockerfile 

If you create your own Dockerfile which inherits from the node image you can 
simply use ENV to override NPM_CONFIG_LOGLEVEL. 

FROM node 
ENV NPM_CONFIG_LOGLEVEL warn 
... 

Docker Run 

If you run the node image using docker run you can use the -e flag to override 
NPM_CONFIG_LOGLEVEL. 

$ docker run -e NPM_CONFIG_LOGLEVEL=warn node ... 

NPM run 

If you are running npm commands you can use --loglevel to control the 
verbosity of the output. 

$ docker run node npm --loglevel=warn ... 

aber deaktiviert werden, wenn ich das Docker Bild von meiner gitlab-ci.yml Datei nur Referenz, etwa so:

image: node:6 

test: 
    script: 
     - npm install 

Wie kann ich den Pass Umgebungsvariable, um die Protokollierungsstufe zu meinem Docker Executor zu setzen?

Antwort

1

Wie in der gitlab-ci reference aufgeführt, können Sie Umgebungsvariablen in der Konfigurationsdatei mit dem Schlüsselwort variables angeben. In Ihrem Fall wäre dies

image: node:6 

test: 
    variables: 
     NPM_CONFIG_LOGLEVEL: warn 
    script: 
     - npm install 

Alternativ Sie --loglevel=warn alle node Befehle im Skript Teil Ihrer CI-Konfiguration hinzufügen könnten.

Verwandte Themen