Replicação de um Gerrit para outro

Replicação de um Gerrit para outro

Quero replicar um projeto/repositório de um Gerrit para outro Gerrit. Minha configuração de replicação:

[remote "gerrit3"]
  url = 192.168.1.106:29418/${name}
  adminUrl = gerrit+ssh://192.168.1.106/
  push = refs/*:refs/*
  replicatePermissions = true
  replicateHiddenProjects = true
  mirror = false
  projects = tests/test1
  replicationDelay = 0
  createMissingRepositories = true

Depois de acionar a replicação, vejo as seguintes mensagens no log de replicação:

[2019-07-25 14:11:00,249] [] scheduling replication tests/test1:..all.. => 192.168.1.106:29418/tests/test1
[2019-07-25 14:11:00,251] [] scheduled tests/test1:..all.. => [f208c682] push 192.168.1.106:29418/tests/test1 to run after 0s
[2019-07-25 14:11:00,253] [f208c682] Replication to 192.168.1.106:29418/tests/test1 started...
[2019-07-25 14:11:00,463] [f208c682] Missing repository created; retry replication to 192.168.1.106:29418/tests/test1
[2019-07-25 14:12:00,465] [f208c682] Replication to 192.168.1.106:29418/tests/test1 started...
[2019-07-25 14:12:00,689] [f208c682] Missing repository created; retry replication to 192.168.1.106:29418/tests/test1
[2019-07-25 14:13:00,690] [f208c682] Replication to 192.168.1.106:29418/tests/test1 started...
[2019-07-25 14:13:00,996] [f208c682] Missing repository created; retry replication to 192.168.1.106:29418/tests/test1

As duas últimas linhas continuam se repetindo para sempre. Parece que a fonte Gerrit não vê o repositório remoto, não importa se o repositório remoto existe ou não. Caso contrário, ele cria um repositório vazio corretamente, mas depois disso Gerrit ainda não o vê.

Responder1

O problema estava na urlfila. Exemplos de documentação mostram url sem protocolo especificado, mas também mencionam que o urlparâmetro é compatível com git pusha sintaxe do url. Após alterar urla linha para:

url = ssh://[email protected]:29418/${name}

o problema desapareceu. Gerrit começa a ver o repositório remoto.

informação relacionada