华为云用户手册

  • 请求示例 GET https://{endpoint}/v2/repositories/{repository_id}/merge_requests/{merge_request_iid}/discussions { "body" : "获取意见内容", "position" : { "new_path" : "a.txt", "old_path" : "a.txt", "new_line" : 1, "old_line" : -1 }, "severity" : "suggestion" }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result MergeRequestDiscussionDto object 响应结果 status String 响应状态 表4 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表5 MergeRequestDiscussionDto 参数 参数类型 描述 id String 评论id individual_note Boolean individual_note notes Array of NoteDto objects 主评和回复列表 数组长度:0 - 1 project_id Integer 仓库id 最小值:1 最大值:2147483647 noteable_type String 目标类型 commit_id String 关联的提交id project_full_path String 仓库路径 a_mode String 变更前文件模式 b_mode String 变更后文件模式 deleted_file Boolean 此次变更是否删除文件 new_file Boolean 此次变更是否新增文件 resolved Boolean 检视意见是否解决 archived Boolean 检视意见是否存档 review_categories String 检视意见分类 review_categories_cn String 检视意见分类中文名 review_categories_en String 检视意见分类英文名 review_modules String 检视意见模块 severity String 严重程度 severity_cn String 严重程度中文名 severity_en String 严重程度英文名 assignee UserBasicDto object 指派人 proposer UserBasicDto object 提出人 merge_request_version_params MergeRequestVersionParamsDto object MR版本信息 diff_file String 变更文件 added_lines Integer 新增行数 最小值:1 最大值:2147483647 removed_lines Integer 删除行数 最小值:1 最大值:2147483647 表6 NoteDto 参数 参数类型 描述 id Integer note id 最小值:1 最大值:2147483647 type String note类型 body String 检视意见内容 attachment String 附件 author UserBasicDto object 作者 created_at String 创建时间 updated_at String 更新时间 system Boolean 是否是系统生成的日志 noteable_id Integer 目标id 最小值:1 最大值:2147483647 noteable_type String 目标类型 commit_id String 关联的提交id resolvable Boolean 是否可解决 is_reply Boolean 是否是回复 resolved_by UserBasicDto object 解决人 noteable_iid Integer 目标iid 最小值:1 最大值:2147483647 discussion_id String 讨论id project String 所属项目 diff_file String 变更文件 diff String 变更内容 archived Boolean 是否存档 review_categories String 检视意见分类 review_categories_cn String 检视意见分类中文名 review_categories_en String 检视意见分类英文名 review_modules String 检视意见模块 severity String 严重程度 severity_cn String 严重程度中文名 severity_en String 严重程度英文名 file_path String 文件路径 line String 行号 assignee UserBasicDto object 指派人 proposer UserBasicDto object 提出人 position PositionDto object 关联的代码位置 resolved Boolean 是否解决 is_outdated Boolean 是否过时 表7 PositionDto 参数 参数类型 描述 base_sha String 源分支base提交节点 start_sha String 目标分支最新提交节点 head_sha String 源分支最新提交节点 old_path String 修改前文件路径 new_path String 修改后文件路径 position_type String 变更类型 old_line Integer 修改前行号 new_line Integer 修改后行号 表8 UserBasicDto 参数 参数类型 描述 id Integer 用户id 最小值:1 最大值:2147483647 name String 姓名 username String 用户名 state String 状态 avatar_url String 头像url avatar_path String 头像路径 email String 邮箱 name_cn String 中文名 web_url String 主页 nick_name String 昵称 tenant_name String 租户名称 表9 MergeRequestVersionParamsDto 参数 参数类型 描述 diff_id Integer MR最新变更id 最小值:1 最大值:2147483647 start_sha String 目标分支最新提交 commit_id String 源分支最新提交
  • URI GET /v2/repositories/{repository_id}/merge_requests/{merge_request_iid}/discussions 表1 路径参数 参数 是否必选 参数类型 描述 repository_id 是 String The ID of a project merge_request_iid 是 Integer The ID of the merge request 表2 Query参数 参数 是否必选 参数类型 描述 type 否 String To filter discussions between user and system 枚举值: user system unresolved 否 String To filter unresolved discussions author_id 否 String Filter by author user ID or username page 否 Integer Current page number 缺省值:1 per_page 否 Integer Number of items per page 缺省值:20
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表2 请求Body参数 参数 是否必选 参数类型 描述 branch 是 String 分支名 project_id 是 String 项目ID,获取方式请参见获取项目ID。 related_id 是 Array of strings 工作项集合 repo_id 是 String 仓库id
  • 请求示例 GET https://{endpoint}/v2/repositories/{repository_id}/review_setting { "body" : "检视意见标题", "review_categories" : "", "review_modules" : "", "severity" : "suggestion", "assignee_id" : 9124 }
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result ReviewSettingDto object 响应结果 status String 响应状态 表4 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表5 ReviewSettingDto 参数 参数类型 描述 categories_and_modules_enabled Boolean 是否开启检视意见分类和模块 secondary_category_enabled Boolean 是否开启二级分类 forbidden_add_to_issue Boolean 是否禁止关联issue primary_categories Array of CategoryDto objects 一级分类 数组长度:0 - 100 review_default_categories Array of strings 默认分类 数组长度:0 - 100 review_customized_categories Array of strings 自定义分类 数组长度:0 - 100 review_modules Array of strings 检视意见模块 数组长度:0 - 100 source_id Integer 目标id 最小值:1 最大值:2147483647 source_type String 目标类型 source_path String 目标路径 secondary_category_type String 二级分类类型 secondary_categories Array of CategoryDto objects 二级分类 表6 CategoryDto 参数 参数类型 描述 key String key name_zh String 中文名 name_en String 英文名 sub_categories Array of CategoryDto objects 二级分类 数组长度:0 - 100
  • 响应示例 状态码: 200 OK { "result" : { "categories_and_modules_enabled" : true, "secondary_category_enabled" : false, "primary_categories" : [ { "key" : "design", "name_zh" : "代码设计", "name_en" : "Code design" }, { "key" : "regulations", "name_zh" : "编程军规问题", "name_en" : "Programming guideline" } ], "review_default_categories" : [ "design", "regulations" ], "review_customized_categories" : [ "xxx", "yyy" ], "review_modules" : [ "aaa", "bbb", "ccc" ], "source_id" : 2111699786, "source_type" : "Project", "source_path" : "DevOpsqlcylxm00004/project-test" }, "status" : "success" }
  • 请求示例 POST https://{endpoint}/v2/projects/{project_uuid}/repositories/fork { "project_name" : "testworld", "repo_name" : "demotest1", "template_id" : 453489, "import_members" : 0, "visibility_level" : 20, "type" : "normal" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result ProjectRepository object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 ProjectRepository 参数 参数类型 描述 projectUuid String 项目ID,获取方式请参见获取项目ID。 最小长度:32 最大长度:32 repositoryUuid String 仓库UUID 最小长度:32 最大长度:32
  • 响应示例 状态码: 200 OK { "result" : [ { "file_name" : "README.md", "file_path" : "README.md", "size" : 666, "encoding" : "base64", "ref" : "master", "blob_id" : "75c19b5b1904a72c8a9959c98ae6884d0ace0279", "file_type" : "text/plain; charset=utf-8", "content" : "RUVFRUVFRUU=" } ], "status" : "success" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result FilesResponseInfo object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 FilesResponseInfo 参数 参数类型 描述 file_name String 文件名称 file_path String 文件路径 size String 文件大小 encoding String 编码类型 ref String 分支名称 blob_id String 文件块id file_type String 文件类型 content String 文件内容
  • 响应示例 状态码: 200 OK { "result" : { "total" : 2, "users" : [ { "user_id" : "5836", "name" : "repo", "domain_name" : "repo", "description" : null, "enabled" : null, "role" : 40, "domain_id" : "159b65b41ead484d8ddff250a4731781", "email" : null }, { "user_id" : "6057", "name" : "repo", "domain_name" : "repo", "description" : null, "enabled" : null, "role" : 30, "domain_id" : "159b65b41ead484d8ddff250a4731781", "email" : null } ] }, "status" : "success" }
  • URI GET /v1/repositories/{repository_uuid}/members 表1 路径参数 参数 是否必选 参数类型 描述 repository_uuid 是 String 仓库uuid(由CreateRepository接口返回) 表2 Query参数 参数 是否必选 参数类型 描述 page_index 否 Integer 第几页 page_size 否 Integer 每页显示size subject 否 String 搜索关键字
  • 响应示例 状态码: 200 OK { "result" : { "name" : "master", "commit" : { "id" : "3b68902cf0eb7de3d5c8757e4a990bc3fe0af349", "short_id" : "3b68902c", "title" : "新建文件", "created_at" : "2022-03-08T03:14:39.000Z", "parent_ids" : [ "08618c900a4048aae7e4cd88913d3d521eae02eb" ], "message" : "新建文件", "author_name" : "repo", "committer_name" : "repo", "committed_date" : "2022-03-08T03:14:39.000Z" }, "protected" : true, "developers_can_push" : false, "developers_can_merge" : false, "master_can_push" : false, "master_can_merge" : false, "no_one_can_push" : true, "no_one_can_merge" : true, "in_an_opened_merge_request" : false }, "status" : "success" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result AddProtectResponse object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 AddProtectResponse 参数 参数类型 描述 name String 分支名称 commit CommitRepoV2 object 提交信息 protected Boolean 是否保护 developers_can_push Boolean 是否允许开发者提交 developers_can_merge Boolean 是否允许开发者合并 master_can_push Boolean 是否允许管理员提交 master_can_merge Boolean 是否允许管理员合并 no_one_can_push Boolean 没有人允许提交 no_one_can_merge Boolean 没有人允许合并 in_an_opened_merge_request Boolean 是否在一个打开的合并请求 表7 CommitRepoV2 参数 参数类型 描述 id String 提交对应的SHA id short_id String 提交对应的短SHA id created_at String 创建时间 title String 提交标题 parent_ids Array of strings 父提交id message String 提交信息 author_name String 作者 committer_name String 提交作者 committed_date String 提交时间
  • URI GET /v1/repositories/{repository_uuid}/branch/{branch_name}/sub-files 表1 路径参数 参数 是否必选 参数类型 描述 repository_uuid 是 String 仓库id branch_name 是 String 分支名称 表2 Query参数 参数 是否必选 参数类型 描述 path 否 String 文件路径 offset 否 Integer 偏移量 limit 否 Integer 记录数量
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result LogsTreeList object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 LogsTreeList 参数 参数类型 描述 trees Array of LogsTree objects 文件日志树 total Integer 记录总数 表7 LogsTree 参数 参数类型 描述 blob_id String 存储块id commit Commit object 提交信息 file_name String 文件名称 file_path String 文件路径 md5 String MD5 type String 存储类型 表8 Commit 参数 参数类型 描述 author_email String 作者邮箱 author_name String 作者 authored_date String 作者提交时间 committed_date String 提交时间 committer_email String 提交作者邮箱 committer_name String 提交作者 format Object 文件变更的详情信息,其格式由请求查询参数 stat_format 决定 id String 提交对应的SHA id message String 提交的信息 parent_ids Array of strings 父提交id
  • 响应示例 状态码: 200 OK { "result" : { "trees" : [ { "blob_id" : "ef69ef5dc0c53022fe52a4d02de15f73d96e055c", "file_name" : "csharpDemo.png", "file_path" : "images/csharpDemo.png", "md5" : "8830d25fe6b4e2cd14d75ddb5cae73a7", "type" : "blob", "commit" : { "id" : "1cfd6d81fff948828c7f59bda74c0ef80e53def0", "message" : "init", "parent_ids" : [ ], "author_name" : "repo", "author_email" : "repo@huawei.com", "committed_date" : "2019-11-13 11:29:26", "committer_name" : "repo", "committer_email" : "repo@huawei.com" } } ], "total" : 5 }, "status" : "success" }
  • 请求示例 POST https://{endpoint}/v2/repositories/{repository_id}/deploy-keys { "key_title" : "repo@huawei.com", "key" : "ssh-rsa AAAAB3NzaC1yc2EA*********************************************************U7xcma6HU8nj1E0i46VObWyOONl3gh142BV repo@huawei.com", "can_push" : true, "application" : "" }
  • 响应示例 状态码: 200 OK { "result" : { "key_id" : "1034546", "key_title" : "repo@huawei.com", "key" : "ssh-rsa AAAAB3NzaC1yc2EA*********************************************************U7xcma6HU8nj1E0i46VObWyOONl3gh142BV repo@huawei.com" }, "status" : "success" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result Key object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 Key 参数 参数类型 描述 can_push Boolean 是否允许推送 created_at String 部署密钥新建时间 key String 部署密钥 key_id String 部署密钥id 最小长度:1 最大长度:40 key_title String 部署密钥名称
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 application 是 String 部署使用的SSH密钥的来源 can_push 是 Boolean 部署使用的SSH密钥是否可以推送代码 key 是 String 部署使用的SSH密钥 key_title 是 String 部署使用的SSH密钥名称
  • 请求示例 POST https://{endpoint}/v1/users/sshkey/privatekey/verify { "private_key" : "-----BEGIN RSA PRIVATE KEY-----****-----END RSA PRIVATE KEY-----", "repository_uuid" : "9b2fab276e9240e09cd01ed0400fc439" }
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表2 请求Body参数 参数 是否必选 参数类型 描述 repository_uuid 是 String 仓库UUID(由CreateRepository接口返回) 最小长度:32 最大长度:32 private_key 是 String 私钥 最小长度:0 最大长度:2048
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result AddProtectTagResponse object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 AddProtectTagResponse 参数 参数类型 描述 name String 保护tag名称 create_access_levels CreateAccessLevels object 保护tag创建权限 表7 CreateAccessLevels 参数 参数类型 描述 access_level Integer 权限 access_level_description String 权限描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 保护tag名称 create_access_level 否 Integer 保护tag创建权限
  • 响应示例 状态码: 200 OK { "result" : { "name" : "test_tag_name", "message" : "test message", "commit" : { "id" : "3b68902cf0eb7de3d5c8757e4a990bc3fe0af349", "short_id" : "3b68902c", "created_at" : "2022-03-08T03:14:39.000Z", "title" : "新建文件", "parent_ids" : [ "08618c900a4048aae7e4cd88913d3d521eae02eb" ], "message" : "新建文件", "author_name" : "repo", "committer_name" : "repo", "committed_date" : "2022-03-08T03:14:39.000Z" } }, "status" : "success" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 tag_name 是 String 标签名称 ref 是 String 分支名称 message 否 String 备注
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result AddTagsResponse object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 AddTagsResponse 参数 参数类型 描述 name String 标签名称 message String 备注 commit CommitRepoV2 object 提交信息 表7 CommitRepoV2 参数 参数类型 描述 id String 提交对应的SHA id short_id String 提交对应的短SHA id created_at String 创建时间 title String 提交标题 parent_ids Array of strings 父提交id message String 提交信息 author_name String 作者 committer_name String 提交作者 committed_date String 提交时间
  • 响应示例 状态码: 200 OK { "result" : { "repoName" : "repoName", "commitCount" : "111", "repoSize" : "0.26 MB", "lastCommitTime" : "2020-01-01 11:11:11", "codeLines" : "368965", "branchCount" : "222", "archiveUrl" : "https://devcloud.cn-north-7.ulanqab.huawei.com/repo/v1/repo/repository/2111663431/archive" }, "status" : "success" }
共100000条