Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToon Claes <toon@gitlab.com>2017-04-05 17:36:14 +0300
committerKamil Trzcinski <ayufan@ayufan.eu>2017-04-07 00:50:37 +0300
commit9e89c93e167d66644fd771b106be5ce01b899fcf (patch)
tree2d27a9b525f0cd61dc565b132eafe6ba5cbdf2e4 /app/services/ci
parent26e24bbe533aaca94a7290509e2d608747b316fa (diff)
Enable polling for pipelines table other pages
Also poll for pipeline changes on: - Pipeline table on commit page - Pipeline table on merge request page - Pipeline table on new merge request page
Diffstat (limited to 'app/services/ci')
-rw-r--r--app/services/ci/expire_pipeline_cache_service.rb33
1 files changed, 32 insertions, 1 deletions
diff --git a/app/services/ci/expire_pipeline_cache_service.rb b/app/services/ci/expire_pipeline_cache_service.rb
index 95afe72e735..983b30056e3 100644
--- a/app/services/ci/expire_pipeline_cache_service.rb
+++ b/app/services/ci/expire_pipeline_cache_service.rb
@@ -1,9 +1,15 @@
module Ci
class ExpirePipelineCacheService < BaseService
+ attr_reader :pipeline
+
def execute(pipeline)
@pipeline = pipeline
+ store = Gitlab::EtagCaching::Store.new
- Gitlab::EtagCaching::Store.new.touch(project_pipelines_path)
+ store.touch(project_pipelines_path)
+ store.touch(commit_pipelines_path)
+ store.touch(new_merge_request_pipelines_path)
+ merge_requests_pipelines_paths.each { |path| store.touch(path) }
end
private
@@ -14,5 +20,30 @@ module Ci
project,
format: :json)
end
+
+ def commit_pipelines_path
+ Gitlab::Routing.url_helpers.pipelines_namespace_project_commit_path(
+ project.namespace,
+ project,
+ pipeline.commit.id,
+ format: :json)
+ end
+
+ def new_merge_request_pipelines_path
+ Gitlab::Routing.url_helpers.new_namespace_project_merge_request_path(
+ project.namespace,
+ project,
+ format: :json)
+ end
+
+ def merge_requests_pipelines_paths
+ pipeline.merge_requests.collect do |merge_request|
+ Gitlab::Routing.url_helpers.pipelines_namespace_project_merge_request_path(
+ project.namespace,
+ project,
+ merge_request,
+ format: :json)
+ end
+ end
end
end