как прочитать параметры конфигурации из пользовательских перехватов?

#mercurial #buildbot #mercurial-hook #rhodecode

#mercurial #buildbot #mercurial-перехват #rhodecode

Вопрос:

Мы переходим с HG на Rhodecode и используем пользовательский перехват buildbot для построения на основе события push. Как уже упоминалось здесь, добавить пользовательский перехват mercurial в Rhodecode проще простого. Проблема в том, что мы считываем конфигурацию, например, учетные данные, из файла расширения rc через ui.config в перехвате

 def hook(ui, repo, hooktype, node=None, source=None, **kwargs):
     username = ui.config('hgbuildbot', 'user', '')
     password = ui.config('hgbuildbot', 'passwd', '')
  

А файл расширения rc находится по адресу :
/etc/mercurial-server/remote-hgrc.d/buildbot.rc

 [hgbuildbot]
user = username
passwd = secret-password
  

Установив эти настройки, mercurial вызывает этот перехват, и через ui.config мы получаем учетные данные. Как мы можем сделать то же самое в Rhodecode: как читать конфигурации из файла расширения rc?

Ответ №1:

Вместо разделения кода и конфигурации мы в итоге написали ansible playbook задачу, которая создает перехват rhodecode rcextension с учетными данными конфигурации — интерполяция — потому что разделение кода и конфигурации не было абсолютной необходимостью.

Если это необходимо, то одним из возможных вариантов является создание файла json, который содержит эти учетные данные, и чтение этого файла из перехвата.