[Regression] GITALY_REPO no longer available following upgrade to Gitlab 13.1
Hi Gitaly Team,
Following the update from Gitlab 13.0 to Gitlab 13.1, we discovered that the GITALY_REPO environment variable, which previously contained a JSON payload with numerous bits of helpful information in it is no longer available.
The payload was as follows:
{"storageName":"default","relativePath":"@hashed/ee/af/eeafcf2e9d8037ab51da8788043fdd0829500b7d8cc36aeb4503128b8a864cc5.git","glRepository":"project-1227","glProjectPath":"qt/qt/qtshadertools"}
Our hooks were relying on this for the "glRepository" and "glProjectPath" fields in particular.
It is not possible to rely on repositories having gitlab.path
set in them, as this configuration is not written in repositories that are forked. Originally we had relied on the gitlab.path
setting being fetched via git config
but were forced to switch when we discovered this broken behaviour in Gitaly.
The removal of GITALY_REPO has left us with no reliable way of retrieving the information needed when using hashed repositories, and has broken our hooks for a second time running.
I should further note that while performing the upgrade to Gitlab 13.1, I had to manually update our gitaly/config.toml file as the change to using a workhorse socket url was not automatically propagated, and Gitaly failed to start, complaining of an inability to contact Gitlab.
This is the second upgrade in a row now that Gitaly changes have broken our custom hook setup, and required intervention above and beyond that mentioned in the upgrade documentation for a given release.