2015-11-02 11 views
18

私はgitlab-ci-multi-runnerをドッカーコンテナーで使用しています。すべてうまくいっていますが、ドッキングコンテナはすべての実行でcomposerキャッシュを保持しません。composerは何度も何度も依存関係をダウンロードしますが、時間がかかります。 composerキャッシュが保存されている各実行時に、composerキャッシュを保持するか、ボリュームをマウントするようにgitlab-ci-runnerドッカーコンテナを構成する方法はありますか?GitLab-CIマルチランナーphpコンポーザーキャッシュ

答えて

30

あなたのrunner configurationファイルに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" 
+0

ありがとう!これらのパッケージが何度も何度もダウンロードされているのを見ると、本当に刺激的になっていました。 – PJP