Skip to content

Ensure Gitaly is installed properly even when cache is stale

What does this MR do?

Before, we'd pass vendor/gitaly-ruby as artifacts to other jobs in the pipeline but now that it's saved in cache, it can happen that the cache doesn't have the exact versions needed by the job since its key is fixed (i.e. currently "ruby-go-cache-v1").

This commit make sure that Gitaly dependencies are installed (with scripts/gitaly-test-build) in the jobs that call scripts/gitaly-test-spawn. It also makes the cache key dependent on the GITALY_SERVER_VERSION file so that each time this file changes, the cache key will change as well.

Note that we need to remove the tmp/tests/gitaly/.ruby-bundle file in the setup-test-env job since this file prevents gems from being installed even if vendor/gitaly-ruby doesn't have the correct gems.

Also, extend from .rails-cache in frontend-fixtures.

Testing

Same MR from a fork: !32448 (closed).

Does this MR meet the acceptance criteria?

Conformity

Closes #218274 (closed).

Edited by Yorick Peterse

Merge request reports

Loading