我正在寻找一种使用命令行方式(而不是使用基于 RhodeCode 浏览器的 GUI 点击)在 RhodeCode 中创建新存储库“newrepo”和新项目“newproject”的方法。
RhodeCode 版本是 2.2.5,它获得了所有存储库/项目(在我们从 Hg Mercurial 迁移到 RhodeCode 接口之后)。一切都适用于迁移的项目,或者如果我使用 RhodeCode GUI 界面手动在现有存储库中创建新的存储库/项目。
现在,我想使用命令行 CLI/API 方式创建一个新的存储库/项目,以便我可以自动化存储库/项目创建过程(来自 Jenkins)。
我搜索了一下,发现我必须使用以下链接,但找不到关于如何实际运行它的简单示例:https ://docs.rhodecode.com/RhodeCode-Enterprise/api/api.html#create -回购
你们有没有人尝试使用 Shell 脚本或 groovy 等在 RhodeCode 中创建新的存储库?谢谢。
PS:我不是在寻找创建新的 Hg/Mercurial 存储库(hg init,然后是 hg push / hg pull 等)。
我正在尝试的自动化会这样做:
创建一个新的存储库/项目或一个新的存储库组,然后在其中存储库。可能授予对一组用户/组的某些访问权限或创建一个等。还自动创建一个空的 README / DELETE_ME_ANYTIME 文件。
一旦创建了上述内容,我将在我的机器上本地创建一个项目结构,并对上面提到的新创建的存储库/项目或存储库组/存储库执行hg push ,无论你怎么称呼它。
hg 克隆http://e100020@servermerc.hola.company.com:8010/newrepo/newproject
hg add README # 添加第一个文件
hg commit -m "Initial" # 提交信息
hg push # 将更改推回
自动创建 Jenkins 构建 / 等作业并自动启动第一个构建并完成它。
我知道如何自动执行项目符号 2、3(在 Jenkins 中使用模板作业格式等并运行 Maven/Gradle build 来构建项目),但第一个项目符号是我想要找到的,如何在命令行中执行?
对于项目符号 1:我发现了这个。
rhodecode-api
RhodeCode API 允许您连接到 RhodeCode Enterprise 并执行管理任务,有关 API 的更多信息,请参阅 API 文档。要在命令行上传递参数,请使用 method:option 语法。
示例用法:
# 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
}
}