2017-02-17 6 views
3

Я использую Gitlab CI на одном из моих проектов, и я сталкиваюсь со следующей проблемой:Можно ли аннулировать кеш сборки на данной ветке?

  • Моего master построить не удается, так как много времени ...
  • я нажимаю новую ветвь, построенную из мастера (никаких новых коммитов) и нажмите на него, строительная работа.

Я думаю, что это связанно с созданием кэша, так как кодовое строго то же самое ... Последний кэш сборки может сделать текущий код базы не удались ...

Есть ли способ, чтобы очистить построить кеш на определенной ветке? В моем случае master? Из API?

ответ

6

Наконец, Gitlab Команда дала мне решение на Twitter: https://twitter.com/gitlab/status/832674380790394880

Поскольку мое хранилище размещается на gitlab.com, я не могу удалить кэш сам. Но в документации файла .gitlab-ci.yml объясняется, что мы можем использовать запись cache:key.

Этот cache:key используется для определения того, как названа запись в кеше, поэтому я могу изменить значение по умолчанию для запуска в пустом кеше.

Ниже образец моего .gitlab-ci.yml файла:

my-asset-build: 
    cache: 
    key: "$CI_COMMIT_REF_NAME-assets" 

С такой конфигурацией, мой кэш связан с текущим исх (так построить на том же исх будет использовать кэш) с суффиксом!

Благодаря команде Gitlab за их быстрый ответ на Twitter!

Если у вас возникли проблемы с именем переменной, может быть, вы должны проверить эту страницу: https://docs.gitlab.com/ce/ci/variables/README.html#9-0-renaming

Кроме того, поскольку Gitlab 10.4, у нас есть «Очистить кэш бегунка» кнопку в списке трубопровода. Нажатие на эту кнопку будет иметь тот же эффект, что и изменение имени переменной, не загрязняя историю фиксации.