Updating an Application
Function
This API is used to update an application.
Calling Method
For details, see Calling APIs.
URI
PUT /v1/applications
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
Content-Type |
Yes |
String |
Message body type (format). |
X-Auth-Token |
Yes |
String |
User token. It can be obtained by calling an IAM API. The value of X-Subject-Token in the response header is the user token. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
id |
Yes |
String |
Application ID |
project_id |
Yes |
String |
Project ID |
name |
Yes |
String |
Application name |
description |
No |
String |
Description |
is_draft |
Yes |
Boolean |
Whether the application is in draft status |
create_type |
Yes |
String |
Creation type. template: Create an application using a template. |
slave_cluster_id |
No |
String |
Custom slave resource pool ID |
trigger |
No |
TaskTriggerVO object |
Triggering settings for application deployment |
arrange_infos |
No |
Array of UpdateTaskV2RequestBody objects |
Deployment task list |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
trigger_source |
No |
String |
Scenario where a deployment task can be executed. 0: All execution requests can be triggered. 1: Only pipeline can be triggered. |
artifact_source_system |
No |
String |
When a task can be triggered only by the pipeline, source information transferred by the pipeline only supports CodeArts Artifact. |
artifact_type |
No |
String |
When a task can be triggered only by the pipeline, the artifact type is generic and docker for the pipeline source. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
id |
No |
String |
Deployment task ID |
deploy_system |
No |
String |
Deployment system. deployTemplate: Deployment template. |
template_id |
No |
String |
Template ID |
operation_list |
No |
Array of DeployV2OperationsDO objects |
Deployment orchestration list information |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
id |
No |
String |
Step ID |
name |
No |
String |
Step name |
description |
No |
String |
Description |
code |
No |
String |
Download URL |
params |
No |
String |
Detailed definition of step |
entrance |
No |
String |
Entry function |
version |
No |
String |
Version |
module_id |
No |
String |
Module ID |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
status |
String |
Request success or failure status |
result |
AppBaseResponse object |
Parameter description: Response body for creating or deleting an application. |
Parameter |
Type |
Description |
---|---|---|
id |
String |
Parameter description: Application ID. Value range: The value consists of 32 characters. Letters and digits are allowed. |
name |
String |
Parameter description: Application name. Value range: The value consists of 3-128 characters. Only letters, digits,hyphens (-) and underscores (_) are allowed. |
region |
String |
Parameter description: Region to which the application belongs. Value range: N/A |
arrange_infos |
Array of TaskBaseBody objects |
Parameter description: Deployment task list. |
Example Requests
Update an application.
https://{endpoint}/v1/applications { "id" : "e700f15965694253940502911220d76b", "name" : "deployenv20230822192953", "project_id" : "55837d272adf4eee90319800e2da6961", "description" : "Update an application.", "trigger" : { "trigger_source" : 0, "artifact_source_system" : "", "artifact_type" : "" }, "slave_cluster_id" : "", "create_type" : "template", "is_draft" : true, "arrange_infos" : [ { "id" : "e700f15965694253940502911220d76b", "deploy_system" : "deployTemplate", "template_id" : "ec939bdf63194aca9fad45b3ba05643e", "operation_list" : [ ] } ] }
Example Responses
Status code: 200
OK: The request is successful.
{ "result" : { "id" : "e700f15965694253940502911220d76b", "name" : "testApp", "region" : "cn-north-7", "arrange_infos" : [ { "id" : "e700f15965694253940502911220d76b" } ] }, "status" : "success" }
SDK Sample Code
The SDK sample code is as follows.
Java
Update an application.
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 |
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.codeartsdeploy.v2.region.CodeArtsDeployRegion; import com.huaweicloud.sdk.codeartsdeploy.v2.*; import com.huaweicloud.sdk.codeartsdeploy.v2.model.*; import java.util.List; import java.util.ArrayList; public class UpdateAppInfoSolution { 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); CodeArtsDeployClient client = CodeArtsDeployClient.newBuilder() .withCredential(auth) .withRegion(CodeArtsDeployRegion.valueOf("<YOUR REGION>")) .build(); UpdateAppInfoRequest request = new UpdateAppInfoRequest(); UpdateAppInfoRequestBody body = new UpdateAppInfoRequestBody(); List<UpdateTaskV2RequestBody> listbodyArrangeInfos = new ArrayList<>(); listbodyArrangeInfos.add( new UpdateTaskV2RequestBody() .withId("e700f15965694253940502911220d76b") .withDeploySystem(UpdateTaskV2RequestBody.DeploySystemEnum.fromValue("deployTemplate")) .withTemplateId("ec939bdf63194aca9fad45b3ba05643e") .withOperationList() ); TaskTriggerVO triggerbody = new TaskTriggerVO(); triggerbody.withTriggerSource("0") .withArtifactSourceSystem("") .withArtifactType(""); body.withArrangeInfos(listbodyArrangeInfos); body.withTrigger(triggerbody); body.withSlaveClusterId(""); body.withCreateType(UpdateAppInfoRequestBody.CreateTypeEnum.fromValue("template")); body.withIsDraft(true); body.withDescription("Update an application."); body.withName("deployenv20230822192953"); body.withProjectId("55837d272adf4eee90319800e2da6961"); body.withId("e700f15965694253940502911220d76b"); request.withBody(body); try { UpdateAppInfoResponse response = client.updateAppInfo(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()); } } } |
Python
Update an application.
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 |
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkcodeartsdeploy.v2.region.codeartsdeploy_region import CodeArtsDeployRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcodeartsdeploy.v2 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 = CodeArtsDeployClient.new_builder() \ .with_credentials(credentials) \ .with_region(CodeArtsDeployRegion.value_of("<YOUR REGION>")) \ .build() try: request = UpdateAppInfoRequest() listArrangeInfosbody = [ UpdateTaskV2RequestBody( id="e700f15965694253940502911220d76b", deploy_system="deployTemplate", template_id="ec939bdf63194aca9fad45b3ba05643e", ) ] triggerbody = TaskTriggerVO( trigger_source="0", artifact_source_system="", artifact_type="" ) request.body = UpdateAppInfoRequestBody( arrange_infos=listArrangeInfosbody, trigger=triggerbody, slave_cluster_id="", create_type="template", is_draft=True, description="Update an application.", name="deployenv20230822192953", project_id="55837d272adf4eee90319800e2da6961", id="e700f15965694253940502911220d76b" ) response = client.update_app_info(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Go
Update an application.
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 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" codeartsdeploy "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsdeploy/v2" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsdeploy/v2/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/codeartsdeploy/v2/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 := codeartsdeploy.NewCodeArtsDeployClient( codeartsdeploy.CodeArtsDeployClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.UpdateAppInfoRequest{} idArrangeInfos:= "e700f15965694253940502911220d76b" deploySystemArrangeInfos:= model.GetUpdateTaskV2RequestBodyDeploySystemEnum().DEPLOY_TEMPLATE templateIdArrangeInfos:= "ec939bdf63194aca9fad45b3ba05643e" var listArrangeInfosbody = []model.UpdateTaskV2RequestBody{ { Id: &idArrangeInfos, DeploySystem: &deploySystemArrangeInfos, TemplateId: &templateIdArrangeInfos, }, } triggerSourceTrigger:= "0" artifactSourceSystemTrigger:= "" artifactTypeTrigger:= "" triggerbody := &model.TaskTriggerVo{ TriggerSource: &triggerSourceTrigger, ArtifactSourceSystem: &artifactSourceSystemTrigger, ArtifactType: &artifactTypeTrigger, } slaveClusterIdUpdateAppInfoRequestBody:= "" descriptionUpdateAppInfoRequestBody:= "Update an application." request.Body = &model.UpdateAppInfoRequestBody{ ArrangeInfos: &listArrangeInfosbody, Trigger: triggerbody, SlaveClusterId: &slaveClusterIdUpdateAppInfoRequestBody, CreateType: model.GetUpdateAppInfoRequestBodyCreateTypeEnum().TEMPLATE, IsDraft: true, Description: &descriptionUpdateAppInfoRequestBody, Name: "deployenv20230822192953", ProjectId: "55837d272adf4eee90319800e2da6961", Id: "e700f15965694253940502911220d76b", } response, err := client.UpdateAppInfo(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
More
For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.
Status Codes
Status Code |
Description |
---|---|
200 |
OK: The request is successful. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot