创建构建任务(旧)
功能介绍
创建构建任务(旧)。
调用方法
请参见如何调用API。
URI
POST /v3/jobs/create
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
参数解释: 用户Token。(响应消息头中X-Subject-Token的值)。通过调用IAM服务接口获取,参考获取IAM用户Token。 约束限制: 不支持租户全局token,请使用scope为project的region级token。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
arch |
是 |
String |
参数解释: 使用机器的架构。 约束限制: 不涉及。 取值范围: x86-64或者arm。 默认取值: 不涉及。 |
project_id |
是 |
String |
参数解释: CodeArts项目ID。获取方式请参考获取CodeArts项目ID。 约束限制: 不涉及。 取值范围: UUID,32位数字、字母组合的字符串。 默认取值: 不涉及。 |
job_name |
是 |
String |
参数解释: 构建任务名称。 约束限制: 不涉及。 取值范围: • 支持中英文,数字,下划线“_”和连接符“-”。 • 字符长度范围为1~115。 默认取值: 不涉及。 |
auto_update_sub_module |
否 |
String |
参数解释: 是否自动更新子模块。 约束限制: 不涉及。 取值范围: false:不更新子模块。 true:更新子模块。 默认取值: false |
flavor |
否 |
String |
参数解释: 执行机规格。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
host_type |
否 |
String |
参数解释: 主机类型。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
build_config_type |
否 |
String |
参数解释: 构建配置类型,YAML或ACTION。 约束限制: 不涉及。 取值范围: YAML或ACTION。 默认取值: 不涉及。 |
build_if_code_updated |
否 |
Boolean |
参数解释: 提交代码触发构建开关。 约束限制: 不涉及。 取值范围: true:提交代码触发执行构建任务。 false:提交代码不触发执行构建任务。 默认取值: 不涉及。 |
parameters |
否 |
Array of CreateBuildJobParameter objects |
参数解释: 构建任务的执行参数列表。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
group_id |
否 |
String |
参数解释: 任务分组ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
timeout |
否 |
CreateBuildTimeout object |
参数解释: 构建任务超时时间。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
scms |
否 |
Array of CreateBuildJobScm objects |
参数解释: 构建执行代码仓信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
steps |
是 |
Array of CreateBuildJobSteps objects |
参数解释: 构建执行的步骤。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
triggers |
否 |
Array of Trigger objects |
参数解释: 定时任务触发器集合。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
String |
参数解释: 参数定义名,默认为hudson.model.StringParameterDefinition。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
params |
否 |
Array of CreateBuildJobParameterParam objects |
参数解释: 构建执行参数子参数。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
否 |
String |
参数解释: 参数字段名。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
value |
否 |
String |
参数解释: 参数字段值。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
limits |
否 |
Array of LimitsParam objects |
参数解释: 枚举类参数限制。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
disable |
否 |
String |
参数解释: 是否生效,默认为"0",为生效状态。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
display_name |
否 |
String |
参数解释: 参数展示的名字。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
name |
否 |
String |
参数解释: 参数名字。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
limit |
否 |
String |
参数解释: 构建任务执行的超时时间。 约束限制: 不涉及。 取值范围: 0~4。 默认取值: 4 |
unit |
否 |
String |
参数解释: 超时时间单位。 约束限制: 不涉及。 取值范围: seconds,minute,hour。 默认取值: hour |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
branch |
否 |
String |
参数解释: 代码分支名称。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
url |
是 |
String |
参数解释: 代码仓地址。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
repo_id |
否 |
String |
参数解释: Repo代码仓的ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
web_url |
否 |
String |
参数解释: 代码仓https地址。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
scm_type |
是 |
String |
参数解释: 仓库类别。 约束限制: 不涉及。 取值范围: repo、github、gitee、gerrit、gitcode、codehub 默认取值: 不涉及。 |
is_auto_build |
否 |
Boolean |
参数解释: 提交代码后是否触发构建。 约束限制: 不涉及。 取值范围: ● true:自动构建。 ● false:非自动构建。 默认取值: true |
enable_git_lfs |
否 |
Boolean |
参数解释: 是否启用gitlfs。 约束限制: 不涉及。 取值范围: ● true:启用gitlfs。 ● false:不启用gitlfs。 默认取值: ● true |
build_type |
否 |
String |
参数解释: 构建类型,分支构建、Tag构建、Commit构建。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
depth |
否 |
String |
参数解释: 克隆深度。克隆深度是指距离最近一次提交的提交次数,该值越大,检出代码的深度越深。 约束限制: 不涉及。 取值范围: 1~25。 默认取值: 1 |
end_point_id |
否 |
String |
参数解释: 通用Git等代码拉取的服务扩展点ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
source |
否 |
String |
参数解释: 代码仓库来源。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
group_name |
否 |
String |
参数解释: 仓库分组名称。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
repo_name |
否 |
String |
参数解释: 仓库名称。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
properties |
否 |
Map<String,Object> |
参数解释: 构建步骤配置参数。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
module_id |
是 |
String |
参数解释: 构建步骤ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
name |
是 |
String |
参数解释: 构建步骤名称。 约束限制: 支持中文、英文、数字、“-”、“_”、英文逗号、英文分号、英文冒号、“.”、“/”、圆括号(中英文)。 字符长度范围为1~128。 取值范围: 不涉及。 默认取值: 不涉及。 |
version |
否 |
String |
参数解释: 构建步骤版本。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
enable |
否 |
Boolean |
参数解释: 是否开启自动构建任务。 约束限制: 不涉及。 取值范围: ● true:开启。 ● false:不开启。 默认取值: true |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
parameters |
是 |
Array of ParameterItem objects |
参数解释: 自定义参数。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
name |
是 |
String |
参数解释: 触发器类型。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
响应参数
状态码:200
参数 |
参数类型 |
描述 |
---|---|---|
result |
result object |
参数解释: 调用接口成功后返回的数据。 取值范围: 不涉及。 |
status |
String |
参数解释: 状态信息。 取值范围: ● success:表示接口调用成功。 ● fail:表示接口调用失败。 |
error |
String |
参数解释: 错误信息。 取值范围: 不涉及。 |
状态码:400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述 |
状态码:401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述 |
状态码:403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述 |
状态码:404
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述 |
状态码:500
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_msg |
String |
错误描述 |
请求示例
POST https://{endpoint}/v3/jobs/create
{
"arch" : "x86-64",
"project_id" : "a287e712be6c404ca26e5f69040fa12b",
"job_name" : "examplejob",
"auto_update_sub_module" : "false",
"flavor" : "2u8g",
"parameters" : [ {
"name" : "hudson.model.StringParameterDefinition",
"params" : [ {
"name" : "name",
"value" : "codeBranch"
}, {
"name" : "type",
"value" : "normalparam"
}, {
"name" : "defaultValue",
"value" : "master"
}, {
"name" : "description",
"value" : "description"
}, {
"name" : "deletion",
"value" : "false"
}, {
"name" : "defaults",
"value" : "true"
}, {
"name" : "staticVar",
"value" : "false"
}, {
"name" : "sensitiveVar",
"value" : "false"
} ]
} ],
"scms" : [ {
"branch" : "master",
"url" : "git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git",
"repo_id" : "2111746211",
"web_url" : "https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home",
"scm_type" : "codehub",
"is_auto_build" : false,
"build_type" : "branch",
"depth" : "1"
} ],
"steps" : [ {
"properties" : null,
"module_id" : "devcloud2018.codeci_action_20043.action",
"name" : "Maven构建",
"version" : "20231001.6",
"enable" : true
} ],
"host_type" : "devcloud"
}
响应示例
状态码:200
OK
{
"result" : {
"job_id" : "db8467d972cc47f7a1bd2a3a3e77596a"
},
"error" : null,
"status" : "success"
}
SDK代码示例
SDK代码示例如下。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
package com.huaweicloud.sdk.test;
import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.codeartsbuild.v3.region.CodeArtsBuildRegion;
import com.huaweicloud.sdk.codeartsbuild.v3.*;
import com.huaweicloud.sdk.codeartsbuild.v3.model.*;
import java.util.List;
import java.util.ArrayList;
public class CreateBuildJobSolution {
public static void main(String[] args) {
// The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
// In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
String ak = System.getenv("CLOUD_SDK_AK");
String sk = System.getenv("CLOUD_SDK_SK");
ICredential auth = new BasicCredentials()
.withAk(ak)
.withSk(sk);
CodeArtsBuildClient client = CodeArtsBuildClient.newBuilder()
.withCredential(auth)
.withRegion(CodeArtsBuildRegion.valueOf("<YOUR REGION>"))
.build();
CreateBuildJobRequest request = new CreateBuildJobRequest();
CreateBuildJobRequestBody body = new CreateBuildJobRequestBody();
List<CreateBuildJobSteps> listbodySteps = new ArrayList<>();
listbodySteps.add(
new CreateBuildJobSteps()
.withModuleId("devcloud2018.codeci_action_20043.action")
.withName("Maven构建")
.withVersion("20231001.6")
.withEnable(true)
);
List<CreateBuildJobScm> listbodyScms = new ArrayList<>();
listbodyScms.add(
new CreateBuildJobScm()
.withBranch("master")
.withUrl("git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git")
.withRepoId("2111746211")
.withWebUrl("https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home")
.withScmType("codehub")
.withIsAutoBuild(false)
.withBuildType("branch")
.withDepth("1")
);
List<CreateBuildJobParameterParam> listParametersParams = new ArrayList<>();
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("name")
.withValue("codeBranch")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("type")
.withValue("normalparam")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("defaultValue")
.withValue("master")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("description")
.withValue("description")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("deletion")
.withValue("false")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("defaults")
.withValue("true")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("staticVar")
.withValue("false")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("sensitiveVar")
.withValue("false")
);
List<CreateBuildJobParameter> listbodyParameters = new ArrayList<>();
listbodyParameters.add(
new CreateBuildJobParameter()
.withName("hudson.model.StringParameterDefinition")
.withParams(listParametersParams)
);
body.withHostType("devcloud");
body.withSteps(listbodySteps);
body.withScms(listbodyScms);
body.withParameters(listbodyParameters);
body.withFlavor("2u8g");
body.withAutoUpdateSubModule("false");
body.withJobName("examplejob");
body.withProjectId("a287e712be6c404ca26e5f69040fa12b");
body.withArch("x86-64");
request.withBody(body);
try {
CreateBuildJobResponse response = client.createBuildJob(request);
System.out.println(response.toString());
} catch (ConnectionException e) {
e.printStackTrace();
} catch (RequestTimeoutException e) {
e.printStackTrace();
} catch (ServiceResponseException e) {
e.printStackTrace();
System.out.println(e.getHttpStatusCode());
System.out.println(e.getRequestId());
System.out.println(e.getErrorCode());
System.out.println(e.getErrorMsg());
}
}
}
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
# coding: utf-8
import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcodeartsbuild.v3.region.codeartsbuild_region import CodeArtsBuildRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcodeartsbuild.v3 import *
if __name__ == "__main__":
# The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
# In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
ak = os.environ["CLOUD_SDK_AK"]
sk = os.environ["CLOUD_SDK_SK"]
credentials = BasicCredentials(ak, sk)
client = CodeArtsBuildClient.new_builder() \
.with_credentials(credentials) \
.with_region(CodeArtsBuildRegion.value_of("<YOUR REGION>")) \
.build()
try:
request = CreateBuildJobRequest()
listStepsbody = [
CreateBuildJobSteps(
module_id="devcloud2018.codeci_action_20043.action",
name="Maven构建",
version="20231001.6",
enable=True
)
]
listScmsbody = [
CreateBuildJobScm(
branch="master",
url="git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git",
repo_id="2111746211",
web_url="https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home",
scm_type="codehub",
is_auto_build=False,
build_type="branch",
depth="1"
)
]
listParamsParameters = [
CreateBuildJobParameterParam(
name="name",
value="codeBranch"
),
CreateBuildJobParameterParam(
name="type",
value="normalparam"
),
CreateBuildJobParameterParam(
name="defaultValue",
value="master"
),
CreateBuildJobParameterParam(
name="description",
value="description"
),
CreateBuildJobParameterParam(
name="deletion",
value="false"
),
CreateBuildJobParameterParam(
name="defaults",
value="true"
),
CreateBuildJobParameterParam(
name="staticVar",
value="false"
),
CreateBuildJobParameterParam(
name="sensitiveVar",
value="false"
)
]
listParametersbody = [
CreateBuildJobParameter(
name="hudson.model.StringParameterDefinition",
params=listParamsParameters
)
]
request.body = CreateBuildJobRequestBody(
host_type="devcloud",
steps=listStepsbody,
scms=listScmsbody,
parameters=listParametersbody,
flavor="2u8g",
auto_update_sub_module="false",
job_name="examplejob",
project_id="a287e712be6c404ca26e5f69040fa12b",
arch="x86-64"
)
response = client.create_build_job(request)
print(response)
except exceptions.ClientRequestException as e:
print(e.status_code)
print(e.request_id)
print(e.error_code)
print(e.error_msg)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
package main
import (
"fmt"
"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
codeartsbuild "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3"
"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3/model"
region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3/region"
)
func main() {
// The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
// In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
ak := os.Getenv("CLOUD_SDK_AK")
sk := os.Getenv("CLOUD_SDK_SK")
auth := basic.NewCredentialsBuilder().
WithAk(ak).
WithSk(sk).
Build()
client := codeartsbuild.NewCodeArtsBuildClient(
codeartsbuild.CodeArtsBuildClientBuilder().
WithRegion(region.ValueOf("<YOUR REGION>")).
WithCredential(auth).
Build())
request := &model.CreateBuildJobRequest{}
versionSteps:= "20231001.6"
enableSteps:= true
var listStepsbody = []model.CreateBuildJobSteps{
{
ModuleId: "devcloud2018.codeci_action_20043.action",
Name: "Maven构建",
Version: &versionSteps,
Enable: &enableSteps,
},
}
branchScms:= "master"
repoIdScms:= "2111746211"
webUrlScms:= "https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home"
isAutoBuildScms:= false
buildTypeScms:= "branch"
depthScms:= "1"
var listScmsbody = []model.CreateBuildJobScm{
{
Branch: &branchScms,
Url: "git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git",
RepoId: &repoIdScms,
WebUrl: &webUrlScms,
ScmType: "codehub",
IsAutoBuild: &isAutoBuildScms,
BuildType: &buildTypeScms,
Depth: &depthScms,
},
}
nameParams:= "name"
valueParams:= "codeBranch"
nameParams1:= "type"
valueParams1:= "normalparam"
nameParams2:= "defaultValue"
valueParams2:= "master"
nameParams3:= "description"
valueParams3:= "description"
nameParams4:= "deletion"
valueParams4:= "false"
nameParams5:= "defaults"
valueParams5:= "true"
nameParams6:= "staticVar"
valueParams6:= "false"
nameParams7:= "sensitiveVar"
valueParams7:= "false"
var listParamsParameters = []model.CreateBuildJobParameterParam{
{
Name: &nameParams,
Value: &valueParams,
},
{
Name: &nameParams1,
Value: &valueParams1,
},
{
Name: &nameParams2,
Value: &valueParams2,
},
{
Name: &nameParams3,
Value: &valueParams3,
},
{
Name: &nameParams4,
Value: &valueParams4,
},
{
Name: &nameParams5,
Value: &valueParams5,
},
{
Name: &nameParams6,
Value: &valueParams6,
},
{
Name: &nameParams7,
Value: &valueParams7,
},
}
nameParameters:= "hudson.model.StringParameterDefinition"
var listParametersbody = []model.CreateBuildJobParameter{
{
Name: &nameParameters,
Params: &listParamsParameters,
},
}
hostTypeCreateBuildJobRequestBody:= "devcloud"
flavorCreateBuildJobRequestBody:= "2u8g"
autoUpdateSubModuleCreateBuildJobRequestBody:= "false"
request.Body = &model.CreateBuildJobRequestBody{
HostType: &hostTypeCreateBuildJobRequestBody,
Steps: listStepsbody,
Scms: &listScmsbody,
Parameters: &listParametersbody,
Flavor: &flavorCreateBuildJobRequestBody,
AutoUpdateSubModule: &autoUpdateSubModuleCreateBuildJobRequestBody,
JobName: "examplejob",
ProjectId: "a287e712be6c404ca26e5f69040fa12b",
Arch: "x86-64",
}
response, err := client.CreateBuildJob(request)
if err == nil {
fmt.Printf("%+v\n", response)
} else {
fmt.Println(err)
}
}
|
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
package com.huaweicloud.sdk.test;
import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.codeartsbuild.v3.region.CodeArtsBuildRegion;
import com.huaweicloud.sdk.codeartsbuild.v3.*;
import com.huaweicloud.sdk.codeartsbuild.v3.model.*;
import java.util.List;
import java.util.ArrayList;
public class CreateBuildJobSolution {
public static void main(String[] args) {
// The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
// In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
String ak = System.getenv("CLOUD_SDK_AK");
String sk = System.getenv("CLOUD_SDK_SK");
ICredential auth = new BasicCredentials()
.withAk(ak)
.withSk(sk);
CodeArtsBuildClient client = CodeArtsBuildClient.newBuilder()
.withCredential(auth)
.withRegion(CodeArtsBuildRegion.valueOf("<YOUR REGION>"))
.build();
CreateBuildJobRequest request = new CreateBuildJobRequest();
CreateBuildJobRequestBody body = new CreateBuildJobRequestBody();
List<CreateBuildJobSteps> listbodySteps = new ArrayList<>();
listbodySteps.add(
new CreateBuildJobSteps()
.withModuleId("devcloud2018.codeci_action_20043.action")
.withName("Maven构建")
.withVersion("20231001.6")
.withEnable(true)
);
List<CreateBuildJobScm> listbodyScms = new ArrayList<>();
listbodyScms.add(
new CreateBuildJobScm()
.withBranch("master")
.withUrl("git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git")
.withRepoId("2111746211")
.withWebUrl("https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home")
.withScmType("codehub")
.withIsAutoBuild(false)
.withBuildType("branch")
.withDepth("1")
);
List<CreateBuildJobParameterParam> listParametersParams = new ArrayList<>();
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("name")
.withValue("codeBranch")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("type")
.withValue("normalparam")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("defaultValue")
.withValue("master")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("description")
.withValue("description")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("deletion")
.withValue("false")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("defaults")
.withValue("true")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("staticVar")
.withValue("false")
);
listParametersParams.add(
new CreateBuildJobParameterParam()
.withName("sensitiveVar")
.withValue("false")
);
List<CreateBuildJobParameter> listbodyParameters = new ArrayList<>();
listbodyParameters.add(
new CreateBuildJobParameter()
.withName("hudson.model.StringParameterDefinition")
.withParams(listParametersParams)
);
body.withHostType("devcloud");
body.withSteps(listbodySteps);
body.withScms(listbodyScms);
body.withParameters(listbodyParameters);
body.withFlavor("2u8g");
body.withAutoUpdateSubModule("false");
body.withJobName("examplejob");
body.withProjectId("a287e712be6c404ca26e5f69040fa12b");
body.withArch("x86-64");
request.withBody(body);
try {
CreateBuildJobResponse response = client.createBuildJob(request);
System.out.println(response.toString());
} catch (ConnectionException e) {
e.printStackTrace();
} catch (RequestTimeoutException e) {
e.printStackTrace();
} catch (ServiceResponseException e) {
e.printStackTrace();
System.out.println(e.getHttpStatusCode());
System.out.println(e.getRequestId());
System.out.println(e.getErrorCode());
System.out.println(e.getErrorMsg());
}
}
}
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 |
# coding: utf-8
import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkcodeartsbuild.v3.region.codeartsbuild_region import CodeArtsBuildRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkcodeartsbuild.v3 import *
if __name__ == "__main__":
# The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
# In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
ak = os.environ["CLOUD_SDK_AK"]
sk = os.environ["CLOUD_SDK_SK"]
credentials = BasicCredentials(ak, sk)
client = CodeArtsBuildClient.new_builder() \
.with_credentials(credentials) \
.with_region(CodeArtsBuildRegion.value_of("<YOUR REGION>")) \
.build()
try:
request = CreateBuildJobRequest()
listStepsbody = [
CreateBuildJobSteps(
module_id="devcloud2018.codeci_action_20043.action",
name="Maven构建",
version="20231001.6",
enable=True
)
]
listScmsbody = [
CreateBuildJobScm(
branch="master",
url="git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git",
repo_id="2111746211",
web_url="https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home",
scm_type="codehub",
is_auto_build=False,
build_type="branch",
depth="1"
)
]
listParamsParameters = [
CreateBuildJobParameterParam(
name="name",
value="codeBranch"
),
CreateBuildJobParameterParam(
name="type",
value="normalparam"
),
CreateBuildJobParameterParam(
name="defaultValue",
value="master"
),
CreateBuildJobParameterParam(
name="description",
value="description"
),
CreateBuildJobParameterParam(
name="deletion",
value="false"
),
CreateBuildJobParameterParam(
name="defaults",
value="true"
),
CreateBuildJobParameterParam(
name="staticVar",
value="false"
),
CreateBuildJobParameterParam(
name="sensitiveVar",
value="false"
)
]
listParametersbody = [
CreateBuildJobParameter(
name="hudson.model.StringParameterDefinition",
params=listParamsParameters
)
]
request.body = CreateBuildJobRequestBody(
host_type="devcloud",
steps=listStepsbody,
scms=listScmsbody,
parameters=listParametersbody,
flavor="2u8g",
auto_update_sub_module="false",
job_name="examplejob",
project_id="a287e712be6c404ca26e5f69040fa12b",
arch="x86-64"
)
response = client.create_build_job(request)
print(response)
except exceptions.ClientRequestException as e:
print(e.status_code)
print(e.request_id)
print(e.error_code)
print(e.error_msg)
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
package main
import (
"fmt"
"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
codeartsbuild "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3"
"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3/model"
region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsbuild/v3/region"
)
func main() {
// The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
// In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
ak := os.Getenv("CLOUD_SDK_AK")
sk := os.Getenv("CLOUD_SDK_SK")
auth := basic.NewCredentialsBuilder().
WithAk(ak).
WithSk(sk).
Build()
client := codeartsbuild.NewCodeArtsBuildClient(
codeartsbuild.CodeArtsBuildClientBuilder().
WithRegion(region.ValueOf("<YOUR REGION>")).
WithCredential(auth).
Build())
request := &model.CreateBuildJobRequest{}
versionSteps:= "20231001.6"
enableSteps:= true
var listStepsbody = []model.CreateBuildJobSteps{
{
ModuleId: "devcloud2018.codeci_action_20043.action",
Name: "Maven构建",
Version: &versionSteps,
Enable: &enableSteps,
},
}
branchScms:= "master"
repoIdScms:= "2111746211"
webUrlScms:= "https://codehub.devcloud.{region}.huawei.com/codehub/2111746211/home"
isAutoBuildScms:= false
buildTypeScms:= "branch"
depthScms:= "1"
var listScmsbody = []model.CreateBuildJobScm{
{
Branch: &branchScms,
Url: "git@codehub.devcloud.{region}.huawei.com:soso-test00001/an.git",
RepoId: &repoIdScms,
WebUrl: &webUrlScms,
ScmType: "codehub",
IsAutoBuild: &isAutoBuildScms,
BuildType: &buildTypeScms,
Depth: &depthScms,
},
}
nameParams:= "name"
valueParams:= "codeBranch"
nameParams1:= "type"
valueParams1:= "normalparam"
nameParams2:= "defaultValue"
valueParams2:= "master"
nameParams3:= "description"
valueParams3:= "description"
nameParams4:= "deletion"
valueParams4:= "false"
nameParams5:= "defaults"
valueParams5:= "true"
nameParams6:= "staticVar"
valueParams6:= "false"
nameParams7:= "sensitiveVar"
valueParams7:= "false"
var listParamsParameters = []model.CreateBuildJobParameterParam{
{
Name: &nameParams,
Value: &valueParams,
},
{
Name: &nameParams1,
Value: &valueParams1,
},
{
Name: &nameParams2,
Value: &valueParams2,
},
{
Name: &nameParams3,
Value: &valueParams3,
},
{
Name: &nameParams4,
Value: &valueParams4,
},
{
Name: &nameParams5,
Value: &valueParams5,
},
{
Name: &nameParams6,
Value: &valueParams6,
},
{
Name: &nameParams7,
Value: &valueParams7,
},
}
nameParameters:= "hudson.model.StringParameterDefinition"
var listParametersbody = []model.CreateBuildJobParameter{
{
Name: &nameParameters,
Params: &listParamsParameters,
},
}
hostTypeCreateBuildJobRequestBody:= "devcloud"
flavorCreateBuildJobRequestBody:= "2u8g"
autoUpdateSubModuleCreateBuildJobRequestBody:= "false"
request.Body = &model.CreateBuildJobRequestBody{
HostType: &hostTypeCreateBuildJobRequestBody,
Steps: listStepsbody,
Scms: &listScmsbody,
Parameters: &listParametersbody,
Flavor: &flavorCreateBuildJobRequestBody,
AutoUpdateSubModule: &autoUpdateSubModuleCreateBuildJobRequestBody,
JobName: "examplejob",
ProjectId: "a287e712be6c404ca26e5f69040fa12b",
Arch: "x86-64",
}
response, err := client.CreateBuildJob(request)
if err == nil {
fmt.Printf("%+v\n", response)
} else {
fmt.Println(err)
}
}
|
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
OK |
400 |
Bad Request |
401 |
Unauthorized |
403 |
Forbidden |
404 |
Not Found |
500 |
Internal Server Error |
错误码
请参见错误码。