diff options
author | Stan Hu <stanhu@gmail.com> | 2019-02-21 14:30:33 -0800 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2019-02-26 12:54:31 +0100 |
commit | c5c71299afa6282026405dd51ba32232499c6fdb (patch) | |
tree | bd4a2763eb7b495ac6924ae8e4e04b38030164ec | |
parent | d19331833844b8f0bab46b4a0e5f1ae43b0eab0c (diff) | |
download | gitlab-ce-c5c71299afa6282026405dd51ba32232499c6fdb.tar.gz |
Fix Etag expiration for forked projects
When a pipeline is for a forked merge request, we have to invalidate
the ETag for both the target and source project pipelines. Before
we were only invalidating the target project's pipeline.
-rw-r--r-- | app/workers/expire_pipeline_cache_worker.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/app/workers/expire_pipeline_cache_worker.rb b/app/workers/expire_pipeline_cache_worker.rb index 148384600b6..2c070d482a1 100644 --- a/app/workers/expire_pipeline_cache_worker.rb +++ b/app/workers/expire_pipeline_cache_worker.rb @@ -37,9 +37,9 @@ class ExpirePipelineCacheWorker Gitlab::Routing.url_helpers.project_new_merge_request_path(project, format: :json) end - def each_pipelines_merge_request_path(project, pipeline) + def each_pipelines_merge_request_path(pipeline) pipeline.all_merge_requests.each do |merge_request| - path = Gitlab::Routing.url_helpers.pipelines_project_merge_request_path(project, merge_request, format: :json) + path = Gitlab::Routing.url_helpers.pipelines_project_merge_request_path(merge_request.target_project, merge_request, format: :json) yield(path) end @@ -59,7 +59,7 @@ class ExpirePipelineCacheWorker store.touch(project_pipeline_path(project, pipeline)) store.touch(commit_pipelines_path(project, pipeline.commit)) unless pipeline.commit.nil? store.touch(new_merge_request_pipelines_path(project)) - each_pipelines_merge_request_path(project, pipeline) do |path| + each_pipelines_merge_request_path(pipeline) do |path| store.touch(path) end end |