No URL provided, cache will not be downloaded from shared cache server - GitLab 17.5 with MinIO
Sofern Sie GitLab 17.5
mit einem Distributed Cache auf Basis von MinIO einsetzen, ist seit dem GitLab 17.5
Update eine Anpassung der Runner-Konfiguration erforderlich.
Fehlermeldung (Pipeline)
Skipping Git submodules setup
Restoring cache
00:00
Checking cache for ...
No URL provided, cache will not be downloaded from shared cache server.
Instead a local version of cache will be extracted.
Fehlermeldung (Runner)
Okt 18 14:00:00 sXXXX.creolineserver.com gitlab-runner[PID]:
ERROR: error while generating S3 pre-signed URL error=operation error S3:
GetObject, failed to resolve service endpoint, endpoint rule error, A region must be set when
sending requests to S3
Der Fehler entsteht, da die GitLab-Pipeline versucht, eine pre-signed S3 URL zu generieren. Dieser Befehl schlägt allerdings fehl, da der neue AWS SDK v2 for Go Adapter eine REGION
Konfiguration benötigt.
Fehlerbehebung
Lösungvariante 1 (Empfohlen)
Fügen Sie in Ihrer GitLab-Runner Umgebungskonfiguration die in MinIO konfigurierte Region als BucketLocation
hinzu:
[[runners]]
name = "sXXXXX.creolineserver.com"
[runners.cache]
Type = "s3"
Shared = true
[runners.cache.s3]
ServerAddress = "sXXXX.creoline.cloud"
AccessKey = "**********"
SecretKey = "**********"
BucketName = "gitlab-distributed-cache"
# [...]
BucketLocation = "us-east-1"
Sofern Sie in Ihrem Distributed Cache (MiniIO) Server keine Region definiert haben, ist der Standard-Region-Wert: us-east-1
.
Falls Sie die MinIO-Region ändern möchten, melden Sie sich im MinIO Webinterface an und navigieren Sie zu MinIO Configuration → Region → Server Location.
Lösungsvariante 2
Fügen Sie in der GitLab-Runner-Umgebungskonfiguration das Feature-Flag FF_USE_LEGACY_S3_CACHE_ADAPTER
hinzu:
[[runners]]
name = "sXXXXX.creolineserver.com"
# [..]
environment = ["FF_USE_LEGACY_S3_CACHE_ADAPTER=1"]
Anschließend ist keine Angabe der Region erforderlich und die pre-signed S3 URL kann erneut problemlos generiert werden.
Quellen
- https://docs.gitlab.com/ee/update/versions/gitlab_17_changes.html#1750
- https://gitlab.com/gitlab-org/gitlab-runner/-/merge_requests/4987