Commit da0c543e authored by Kamil Trzcinski's avatar Kamil Trzcinski Committed by Z.J. van de Weg
Browse files

Add MISSING e-tag refresh of resource for Job, and Pipeline Graph

parent 05d696ecef26
......@@ -89,6 +89,7 @@ class CommitStatus < ActiveRecord::Base
else
PipelineUpdateWorker.perform_async(pipeline.id)
end
ExpireJobCacheWorker.perform_async(pipeline.id, commit_status.id)
end
end
end
......
class ExpireJobCacheWorker
include Sidekiq::Worker
include BuildQueue
def perform(pipeline_id, job_id)
job = CommitStatus.joins(:pipeline, :project).find_by(id: job)
return unless job
pipeline = job.pipeline
project = job.project
store.touch(project_pipeline_path(project, pipeline))
store.touch(project_job_path(project, job))
end
private
def project_pipeline_path(project, pipeline)
Gitlab::Routing.url_helpers.namespace_project_pipeline_path(
project.namespace,
project,
pipeline,
format: :json)
end
def project_job_path(project, job)
Gitlab::Routing.url_helpers.namespace_project_build_path(
project.namespace,
project,
job.id,
format: :json)
end
def store
@store ||= Gitlab::EtagCaching::Store.new
end
end
......@@ -10,6 +10,7 @@ def perform(pipeline_id)
store = Gitlab::EtagCaching::Store.new
store.touch(project_pipelines_path(project))
store.touch(project_pipeline_path(project, pipeline))
store.touch(commit_pipelines_path(project, pipeline.commit)) if pipeline.commit
store.touch(new_merge_request_pipelines_path(project))
each_pipelines_merge_request_path(project, pipeline) do |path|
......@@ -28,6 +29,14 @@ def project_pipelines_path(project)
format: :json)
end
def project_pipeline_path(project, pipeline)
Gitlab::Routing.url_helpers.namespace_project_pipeline_path(
project.namespace,
project,
pipeline,
format: :json)
end
def commit_pipelines_path(project, commit)
Gitlab::Routing.url_helpers.pipelines_namespace_project_commit_path(
project.namespace,
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment