Gitlab-CI (под gitlab.com) «системный сбой» запускает контейнерный процесс - PullRequest
0 голосов
/ 04 октября 2019

Это моя первая попытка настроить базовый рабочий процесс CI на gitlab.com. Речь идет о базовом статическом веб-сайте, и я хотел запустить npm install и gulp build непосредственно на gitlab.

Я создал файл .gitlab-ci.yml, который распознается и запускается. Но первые реализации потерпели неудачу, поэтому я вернулся к более простому скрипту CI:

image: debian:jessie

stages:
  - build

build:
  stage: build
  script: echo "Building the app"

Даже в этом случае я сталкиваюсь с той же ошибкой:

ERROR: Job failed (system failure): Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"gitlab-runner-build\": executable file not found in $PATH": unknown (executor_docker.go:833:0s) 

Я пыталсясо следующими изображениями: debian:jessie, node:latest & busybox.

Как можно решить эту проблему, пожалуйста? Я что-то не так делаю?

СОВЕТ : Обратите внимание, что это экземпляр, размещенный на Gitlab.com. Не местный. Используемый мной бегун размещен на серверах Gitlab.

Полное сообщение об ошибке:

Running with gitlab-runner 12.3.0 (a8a019e0)
  on docker-auto-scale fa6cab46
Using Docker executor with image node:latest ...
Pulling docker image node:latest ...
Using docker image sha256:e498dabfee1c6735c9da947e0d438edd13593b7d721c989ba8ede14ab603b900 for node:latest ...

ERROR: Job failed (system failure): Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: \"gitlab-runner-build\": executable file not found in $PATH": unknown (executor_docker.go:833:0s)

1 Ответ

1 голос
/ 08 октября 2019

Я протестировал именно вашу модель в новом новом проекте на Gitlab.com

gitlab-ci.yml (debian)

image: debian:jessie

stages:
  - build

build:
  stage: build
  script: echo "Building the app"

Мой проектПроект по умолчанию Node.js на базе, и я просто изменил по умолчанию docker gitlab-ci.yml, чтобы он соответствовал вашему.

Мои результаты таковы:

Running with gitlab-runner 12.3.0 (a8a019e0)
  on docker-auto-scale ed2dce3a
Using Docker executor with image debian:jessie ...
Pulling docker image debian:jessie ...
Using docker image sha256:c9d6adb06e4d1092f4dae842e41ba34566481ac002ad52102389122ea6969fd4 for debian:jessie ...
Running on runner-ed2dce3a-project-14701224-concurrent-0 via runner-ed2dce3a-srm-1570489833-8fc7b7db...
Fetching changes with git depth set to 50...
Initialized empty Git repository in /builds/alejandroteixeiraconsultoria/my-awesome-response/.git/
Created fresh repository.
From https://gitlab.com/alejandroteixeiraconsultoria/my-awesome-response
 * [new branch]      master     -> origin/master
Checking out 39d7cf97 as master...

Skipping Git submodules setup
$ echo "Building the app"
Building the app
Job succeeded

Как вы увидите, все прошло идеально.

Разница, которую я вижу, такова:

Моя:

Работа с gitlab-runner 12.3.0 (a8a019e0) в автоматическом масштабировании Docker ed2dce3a

Ваш:

Работа с gitlab-runner 12.3.0 (a8a019e0) в автоматическом масштабировании Docker fa6cab46

Если вы переходите в раздел общих бегунов, просто убедитесь, что ed2dce3a и fa6cab46 являются ссылками для наших бегунов.

enter image description here

Если вы сейчас внимательно посмотрите на теги, вы увидите, что они разные: минтолько docker и gce, но у вас гораздо больше тегов.

shared-runners-manager-6.gitlab.com 
shared-runners-manager-3.gitlab.com 

В качестве второй попытки я попытался создать node:latest изображение с помощью этого gitlab-yml

gitlab-ci.yml (узел)

image: node:latest

stages:
  - build

build:
  stage: build
  script: 
    - echo "Building the app"
    - echo "Calling npm "
    - npm update

И результаты снова оказались успешными:

Running with gitlab-runner 12.3.0 (a8a019e0)
  on docker-auto-scale fa6cab46
Using Docker executor with image node:latest ...
Pulling docker image node:latest ...
Using docker image sha256:e498dabfee1c6735c9da947e0d438edd13593b7d721c989ba8ede14ab603b900 for node:latest ...
Running on runner-fa6cab46-project-14701224-concurrent-0 via runner-fa6cab46-srm-1570491263-da01e8a0...
Fetching changes with git depth set to 50...
Initialized empty Git repository in /builds/alejandroteixeiraconsultoria/my-awesome-response/.git/
Created fresh repository.
From https://gitlab.com/alejandroteixeiraconsultoria/my-awesome-response
 * [new branch]      NodeApp    -> origin/NodeApp
Checking out e1235047 as NodeApp...

Skipping Git submodules setup
$ echo "Building the app"
Building the app
$ echo "Calling npm "
Calling npm 
**$ npm update**

> core-js@2.6.9 postinstall /builds/alejandroteixeiraconsultoria/my-awesome-response/node_modules/core-js
> node scripts/postinstall || echo "ignore"

+ http-errors@1.6.3
+ cookie-parser@1.4.4
+ express@4.16.4
+ morgan@1.9.1
+ debug@2.6.9
+ pug@2.0.0-beta11
added 165 packages from 606 contributors and audited 305 packages in 7.972s
found 1 low severity vulnerability
  run `npm audit fix` to fix them, or `npm audit` for details
Job succeeded

Как видите, мои проекты прошли идеально по умолчаниюпроект.

Вот мой пример проекта с двумя разными ветками, созданными на gitlab.com.

На вашем месте я бы попробовалзаново сгенерировать ключ для бегунов, отключить общих бегунов и снова включить их, чтобы проверить, что-то пошло не так в вашем проекте. Если это не работает, просто заново создайте новый проект с нуля. Это кажется ошибкой в ​​некоторых версиях. Может быть, это случилось какое-то время и вернулось снова.

Надеюсь, по крайней мере, это поможет вам

...