Gitlab — This job is stuck because the project doesn’t have any runners online assigned to it

Gitlab - This job is stuck because the project doesn't have any runners online assigned to it

Столкнулся с небольшой ошибкой при работе с gitlab и ci/cd. Настроил и запустил gitlab-runner, убедился, что он работает и зарегистрирован. Запушил в репозиторий изменения, но job не запустился. Висел в ожидании активных раннеров, хотя они были. Как оказалось, проблема была в тэгах, хотя я и не забыл про них.


Если у вас есть желание научиться профессионально строить и поддерживать процессы непрерывной разработки и доставки (continuous integration / continuous delivery), рекомендую пройти интенсив CI/CD или Непрерывная поставка с Docker и Kubernetes в OTUS. Подробности смотрите по .

Вот сам зарегистрированный runner:

А вот задание, которое висит в ожидании запуска:

При этом в .gitlab-ci.yml я выставил тэги следующим образом:

stages:
    - test

default:
    tags:
        - s009676
        - docker
        - local

Start job:
    stage: test

То есть должно работать. Я немного погуглил и насколько понял, это может быть баг конкретно моей версии gitlab. Она не сильно свежая. Исправить ситуацию можно двумя способами. Первый — разрешить gitlab-runner работать на джобах без тэгов.

Второй способ, прописать tags напрямую в job.

Start job:
    tags:
        - s009676
        - docker
        - local
    stage: test

Я пошел по второму пути и tags добавились к job.

Ошибка с тэгами весьма популярна при настройке ci/cd в gitlab. Погуглил и сразу понял, в чем проблема. Оформил в заметку, чтобы самому не забыть 🙂

Моя статья про локальную установку и настройку gitlab — https://serveradmin.ru/ustanovka-i-nastroyka-gitlab.

Онлайн курс Ansible

Если у вас есть желание научиться автоматизировать свою работу, избавить себя и команду от рутины, рекомендую пройти онлайн курс Ansible. Infrastructure as a code. в OTUS. Обучение длится 4 месяца.

Что даст вам этот курс:

  • Познакомитесь с Terraform.
  • Изучите систему управления конфигурацией Ansible.
  • Познакомитесь с другими системами управления конфигурацией — Chef, Puppet, SaltStack.
  • Узнаете, чем отличается изменяемая инфраструктура от неизменяемой, а также научитесь выбирать и управлять ей.
  • В заключительном модуле изучите инструменты CI/CD: это GitLab и Jenkins

Смотрите подробнее программу по .
Источник

Просмотров:

Добавить комментарий

Adblock
detector