Dies ist, wie ich einige Lintertest (eslint).Gitlab CI/Docker: Verwenden Sie benutzerdefinierte Bild für Job
Aber damit muss jeder Test die Pakete auf dem Ubuntu-Image installieren, das braucht Zeit.
Also dachte ich, um ein Bild mit genau diesem zu bauen. Ich kam mit dieser Dockerfile up:
FROM ubuntu:16.04
RUN apt-get update -y
RUN apt-get install nodejs-legacy -yqq
RUN apt-get install curl -yqq
RUN apt-get clean && apt-get autoclean && apt-get autoremove
RUN curl https://install.meteor.com/ | sh
Dann ich
$ docker build -t linter-testing:latest .
und diese yml Datei:
linter:
image: linter-testing:latest
stage: test
tags:
- testing
before_script:
- meteor npm install eslint eslint-plugin-react
script:
- ./node_modules/.bin/eslint --ext .js --ext .jsx .
aber es funktioniert nicht mit diesem Fehler:
ERROR: Job failed: Error response from daemon: repository linter-testing not found: does not exist or no pull access
Also warum ist dieses Bild nicht vorhanden, obwohl docker images
zeigt mir genau das Bild ...
Ich bin mir nicht sicher, wo ich die Toml-Datei erstellen soll. – user3142695
Die Datei sollte in '/ etc/gitlab-runner' sein. Ich habe die Antwort mit dieser Info bearbeitet. – Jawad
Es sollte schon existieren. Möglicherweise müssen Sie es jedoch als root bearbeiten. Finden Sie einfach den '[runners.docker]' Abschnitt und fügen Sie hinzu/ändern Sie 'pull_policy =" wenn-nicht-anwesend "' – Jawad