Задание Gitlab не выполняется, если оно удаляет каталог сборки - PullRequest
0 голосов
/ 10 января 2020

В конце моего конвейера GitLab CI есть задание, предназначенное для очистки каталога сборки gitlab-runner.

Он постоянно терпит неудачу, но каждый шаг выполняется безупречно. Когда я реплицирую это локально вручную, я не получаю никаких ошибок.

Вот задание, о котором идет речь:

cleanup:
    only:
        - triggers
    allow_failure: true
    stage: teardown
    script:
         - docker kill PipeLineContainer_$CI_PIPELINE_ID
         - docker rm PipeLineContainer_$CI_PIPELINE_ID
         - sudo rm -rf /home/gitlab-runner/builds || true

Когда это задание выполняется, это то, что показывает вывод задания:

$ docker kill PipeLineContainer_$CI_PIPELINE_ID
PipeLineContainer_694
$ docker rm PipeLineContainer_$CI_PIPELINE_ID
PipeLineContainer_694
$ sudo rm -rf /home/gitlab-runner/builds || true
bash: ligne 87 : cd: /home/gitlab-runner/builds/5KQvSgfo/0/my_projects/project: No such file or directory
bash: ligne 87 : cd: /home/gitlab-runner/builds/5KQvSgfo/0/my_projects/project: No such file or directory

Я предполагаю, что это ошибка со стороны GitLab? Есть ли быстрый обходной путь, который не предполагает работы с локальными файлами (я полагаюсь на псевдонимы на стороне бегуна для моего конвейера)?

Удаление файлов root и gitlab-runner .bash_logout, как я рекомендовал в другом месте ничего не делал, кстати.

...