Что такое стратегия ref в файле gitlab ci pipe? - PullRequest
2 голосов
/ 06 апреля 2020

Я использую Gitlab и добавил файл .gitlab-ci.yml для запуска моего конвейера. Что я не понимаю, так это цель refs при использовании в сочетании с ключевым словом only. Вот пример, который я использую:

only:
     - /^newlib.*$/

Но в другом примере я нашел это:

only:
    refs:
      - master

В документации только говорится:

The refs strategy can take the same values as the simplified only/except configuration.

Может ли кто-нибудь поделиться этим светом? В чем разница между ними?

1 Ответ

3 голосов
/ 07 апреля 2020

Нет разницы между вашими двумя примерами. Когда вы сами цитировали документы:

Стратегия refs может принимать те же значения, что и упрощенная конфигурация только / за исключением.

Тем не менее, вам нужно использовать только refs, если вы также хотите использовать другие опции: changes, kubernetes и variables.

В документах есть несколько примеров с использованием нескольких параметров , таких как:

test:
  script: npm run test
  only:
    refs:
      - master
      - schedules
    variables:
      - $CI_COMMIT_MESSAGE =~ /run-end-to-end-tests/
    kubernetes: active

Если вы удалите refs, вы получите недопустимый файл yml

...