Geo: Add repository verification failures to API
Repository/wiki verification errors are logged out to the geo.log
, but they can not be queried through the API.
We can currently query for the sync failures with the GET /geo_nodes/current/failures
endpoint, and it returns the following properties for secondary nodes.
expose :project_id
expose :last_repository_synced_at
expose :last_repository_successful_sync_at
expose :last_wiki_synced_at
expose :last_wiki_successful_sync_at
expose :repository_retry_count
expose :wiki_retry_count
expose :last_repository_sync_failure
expose :last_wiki_sync_failure
Nothing is returned on the primary, as these attributes only have meaning on the secondary.
However, verification errors can happen on both the primary and the secondary.
We either need to use the same GET /geo_nodes/current/failures
endpoint and remove the unused attributes (or just leave them nulled out, which might cause confusion), or we need a new endpoint such as GET /geo_nodes/current/verification_failures
Related to https://gitlab.com/gitlab-org/gitlab-ee/issues/5519
-
add tests into qa/qa/specs/features/ee/api/geo_nodes_spec.rb