GitLab-CI Multi Runner PHP composer кэш

я использую gitlab-ci-multi-runner с контейнерами docker. Все идет хорошо, но контейнеры docker не держат composer кэш так в каждом запуске composer загружает зависимости снова и снова, что занимает много времени. Есть ли способ настроить gitlab-ci-runner контейнер docker для хранения composer кэшировать или монтировать том на каждом запуске, где composer кэш хранится?

2 ответов


вы можете изменить путь кэша композитора и записать материал на том docker.

это хранилище является постоянным и может использоваться совместно в контейнерах.

ссылки:


вы можете изменить путь кэша композитора, экспортировав COMPOSER_CACHE_DIR переменная окружения в вашем настройки бегун файл, а затем добавьте том в [runners.docker] раздел, чтобы соответствовать ему.

если вы запускаете gitlab-runner как root или с sudo, то ваш файл конфигурации находится в /etc/gitlab-runner/config.toml. В противном случае он расположен в $HOME/.gitlab-runner/config.toml.

# config.toml

[[runners]]
  name = "Generic PHP Test Runner"
  ...
  environment = ["COMPOSER_CACHE_DIR=/cache"]
  executor = "docker"
  [runners.docker]
    ...
    volumes = ["/var/cache:/cache:rw"]
    cache_dir = "/cache"