Use correct integrity hash for sprockets caching

Use self.integrity_uri over self.hexdigest_integrity_uri(digest), as the
latter always returned nil leading to improper cache invalidation.

We are alos enabling caching of `tmp/cache/assets/sprockets` again, to
get those performance gains.
This commit is contained in:
Lukas Eipert 2019-02-08 13:11:15 +01:00
parent acb939d7e9
commit 8ccf1ea310
No known key found for this signature in database
GPG Key ID: 148BEA37CB35B2AC
2 changed files with 3 additions and 5 deletions

View File

@ -388,13 +388,11 @@ flaky-examples-check:
.assets-compile-cache: &assets-compile-cache
cache:
key: "assets-compile:vendor_ruby:.yarn-cache:tmp_cache_assets_sprockets:v4"
key: "assets-compile:vendor_ruby:.yarn-cache:tmp_cache_assets_sprockets:v5"
paths:
- vendor/ruby/
- .yarn-cache/
# We have disabled caching of sprockets for now, as it fails to pick up changes in SCSS:
# https://gitlab.com/gitlab-org/gitlab-ce/issues/57431
# - tmp/cache/assets/sprockets
- tmp/cache/assets/sprockets
compile-assets:
<<: *dedicated-runner

View File

@ -9,7 +9,7 @@ module Gitlab
def file_digest(path)
if stat = self.stat(path)
digest = self.stat_digest(path, stat)
integrity_uri = self.hexdigest_integrity_uri(digest)
integrity_uri = self.integrity_uri(digest)
key = Sprockets::UnloadedAsset.new(path, self).file_digest_key(integrity_uri)
cache.fetch(key) do