Files
gitlabhq/app/controllers/projects/badges_controller.rb
Rémy Coutable 60f9ce6af8 Merge branch 'fix/invalidate-builds-badge-cache' into 'master'
Invalidate cache for builds badge

This fixes cache issue with badges (we should not cache badge images).

Closes #13982

See merge request !3086
2016-03-04 13:20:49 +01:00

25 lines
618 B
Ruby

class Projects::BadgesController < Projects::ApplicationController
before_action :set_no_cache
def build
respond_to do |format|
format.html { render_404 }
format.svg do
image = Ci::ImageForBuildService.new.execute(project, ref: params[:ref])
send_file(image.path, filename: image.name, disposition: 'inline', type: 'image/svg+xml')
end
end
end
private
def set_no_cache
expires_now
# Add some deprecated headers for older agents
#
response.headers['Pragma'] = 'no-cache'
response.headers['Expires'] = 'Fri, 01 Jan 1990 00:00:00 GMT'
end
end