0

Я ищу способ создания нового репозитория «newrepo» и нового проекта " newproject "в RhodeCode с использованием командной строки (вместо использования кликов с графическим интерфейсом на основе браузера на основе RhodeCode).Командная строка: создайте новый репозиторий (группа)/репозиторий (проект) внутри существующей группы репо в RhodeCode (использует Hg Mercurial)

версия для RhodeCode 2.2.5, и она получила все репозитории/проекты (после того, как мы перенесли с Hg Mercurial на интерфейс RhodeCode). Все отлично работает для перенесенных проектов или я создаю новый репозиторий/проект внутри существующего репозитория вручную с помощью интерфейса графического интерфейса RhodeCode.

Теперь я хочу создать новый репозиторий/проект с использованием командной строки CLI/API, чтобы я мог автоматизировать процесс создания репозитория/проекта (от Jenkins).

Я искал немного, и обнаружил, что я должен использовать следующую ссылку, но не смог найти простой пример того, как на самом деле запустить его: https://docs.rhodecode.com/RhodeCode-Enterprise/api/api.html#create-repo

Кто-нибудь из вас пытался создать новое хранилище в RhodeCode используя сценарий Shell или groovy и т. д.? Благодарю.

PS: Я не ищу создание нового хранилища Hg/Mercurial (hg init, затем hg push/hg pull и т. Д.).

автоматизации Я пытаюсь бы сделать это:

  1. Создать новый репо/проект или новый репозиторий группы затем репозиторий в нем. Вероятно, предоставите некоторый доступ к набору пользователей/групп или создайте один и т. Д. Также создайте пустой файл README/DELETE_ME_ANYTIME автоматически.

  2. После выше создается, то я создам структуру проекта локально на моей машине и выполнять рт.ст. толчка вышеназванного вновь созданное хранилище/проект или repositorygroup/хранилище, что вы называете его.

    рт.ст. клон http://[email protected]:8010/newrepo/newproject

    рт.ст. добавить README # добавить первый файл

    рт.ст. совершить -м "Начальные" # совершить с сообщением

    рт.ст. толчок # толчок меняется обратно

  3. Auto create Jenkins build/etc jobs и автоматически запускают первую сборку и выполняются с ней.

Я знаю, как сделать пулю 2, 3 автоматически (с использованием форматов шаблонов заданий и т.д., в Jenkins и работает Maven/Gradle построить для создания проекта), но 1-й пули, что я пытаюсь найти, как это сделать в командной строке?

Для пули 1: Я нашел это.

rhodecode-апи

RhodeCode API позволяет подключаться к RhodeCode Enterprise и выполнять задачи управления, для получения дополнительной информации о API см Документация по API. Для передачи аргументов в comamnd-строке используйте синтаксис метода:.

Пример использования:

# Run the get_repos API call and sample output 
$ rhodecode-api --instance-name=enterprise-1 create_repo repo_name:brand-new repo_type:hg description:repo-desc 
{ 
    "error": null, 
    "id": 1110, 
    "result": { 
    "msg": "Created new repository `brand-new`", 
    "success": true, 
    "task": null 
    } 
} 

ответ

1

Ваше решение с помощью нашего апи помощника является лучшим. Я также рекомендовал бы использовать auth-tokens для вызовов API jenkins, а также операции push. У вас таким образом гораздо больше контроля над учетными данными, и auth-tokens можно легко обойти. Они работают аналогично паролям, зависящим от приложений Google.