Browse Source

Modify CreateK8sSecret.

sdk-team 5 years ago
parent
commit
ac628879ee

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2021-09-22 Version: 1.36.880
+- Modify CreateK8sSecret.
+
 2021-09-18 Version: 1.36.879
 - Add copyright invasion detection APIs.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.879
+1.36.880

+ 4 - 0
edas/CMakeLists.txt

@@ -51,6 +51,8 @@ set(edas_public_header_model
 	include/alibabacloud/edas/model/ConvertK8sResourceResult.h
 	include/alibabacloud/edas/model/CreateApplicationScalingRuleRequest.h
 	include/alibabacloud/edas/model/CreateApplicationScalingRuleResult.h
+	include/alibabacloud/edas/model/CreateApplicationTemplateRequest.h
+	include/alibabacloud/edas/model/CreateApplicationTemplateResult.h
 	include/alibabacloud/edas/model/CreateEnvAppGroupRequest.h
 	include/alibabacloud/edas/model/CreateEnvAppGroupResult.h
 	include/alibabacloud/edas/model/CreateEnvHsfTrafficControlRequest.h
@@ -486,6 +488,8 @@ set(edas_src
 	src/model/ConvertK8sResourceResult.cc
 	src/model/CreateApplicationScalingRuleRequest.cc
 	src/model/CreateApplicationScalingRuleResult.cc
+	src/model/CreateApplicationTemplateRequest.cc
+	src/model/CreateApplicationTemplateResult.cc
 	src/model/CreateEnvAppGroupRequest.cc
 	src/model/CreateEnvAppGroupResult.cc
 	src/model/CreateEnvHsfTrafficControlRequest.cc

+ 8 - 0
edas/include/alibabacloud/edas/EdasClient.h

@@ -52,6 +52,8 @@
 #include "model/ConvertK8sResourceResult.h"
 #include "model/CreateApplicationScalingRuleRequest.h"
 #include "model/CreateApplicationScalingRuleResult.h"
+#include "model/CreateApplicationTemplateRequest.h"
+#include "model/CreateApplicationTemplateResult.h"
 #include "model/CreateEnvAppGroupRequest.h"
 #include "model/CreateEnvAppGroupResult.h"
 #include "model/CreateEnvHsfTrafficControlRequest.h"
@@ -508,6 +510,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateApplicationScalingRuleResult> CreateApplicationScalingRuleOutcome;
 			typedef std::future<CreateApplicationScalingRuleOutcome> CreateApplicationScalingRuleOutcomeCallable;
 			typedef std::function<void(const EdasClient*, const Model::CreateApplicationScalingRuleRequest&, const CreateApplicationScalingRuleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateApplicationScalingRuleAsyncHandler;
+			typedef Outcome<Error, Model::CreateApplicationTemplateResult> CreateApplicationTemplateOutcome;
+			typedef std::future<CreateApplicationTemplateOutcome> CreateApplicationTemplateOutcomeCallable;
+			typedef std::function<void(const EdasClient*, const Model::CreateApplicationTemplateRequest&, const CreateApplicationTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateApplicationTemplateAsyncHandler;
 			typedef Outcome<Error, Model::CreateEnvAppGroupResult> CreateEnvAppGroupOutcome;
 			typedef std::future<CreateEnvAppGroupOutcome> CreateEnvAppGroupOutcomeCallable;
 			typedef std::function<void(const EdasClient*, const Model::CreateEnvAppGroupRequest&, const CreateEnvAppGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateEnvAppGroupAsyncHandler;
@@ -1161,6 +1166,9 @@ namespace AlibabaCloud
 			CreateApplicationScalingRuleOutcome createApplicationScalingRule(const Model::CreateApplicationScalingRuleRequest &request)const;
 			void createApplicationScalingRuleAsync(const Model::CreateApplicationScalingRuleRequest& request, const CreateApplicationScalingRuleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateApplicationScalingRuleOutcomeCallable createApplicationScalingRuleCallable(const Model::CreateApplicationScalingRuleRequest& request) const;
+			CreateApplicationTemplateOutcome createApplicationTemplate(const Model::CreateApplicationTemplateRequest &request)const;
+			void createApplicationTemplateAsync(const Model::CreateApplicationTemplateRequest& request, const CreateApplicationTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateApplicationTemplateOutcomeCallable createApplicationTemplateCallable(const Model::CreateApplicationTemplateRequest& request) const;
 			CreateEnvAppGroupOutcome createEnvAppGroup(const Model::CreateEnvAppGroupRequest &request)const;
 			void createEnvAppGroupAsync(const Model::CreateEnvAppGroupRequest& request, const CreateEnvAppGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateEnvAppGroupOutcomeCallable createEnvAppGroupCallable(const Model::CreateEnvAppGroupRequest& request) const;

+ 150 - 0
edas/include/alibabacloud/edas/model/CreateApplicationTemplateRequest.h

@@ -0,0 +1,150 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EDAS_MODEL_CREATEAPPLICATIONTEMPLATEREQUEST_H_
+#define ALIBABACLOUD_EDAS_MODEL_CREATEAPPLICATIONTEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/edas/EdasExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Edas
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EDAS_EXPORT CreateApplicationTemplateRequest : public RoaServiceRequest
+			{
+
+			public:
+				CreateApplicationTemplateRequest();
+				~CreateApplicationTemplateRequest();
+
+				std::string getNasId()const;
+				void setNasId(const std::string& nasId);
+				bool getEnableAhas()const;
+				void setEnableAhas(bool enableAhas);
+				std::string getSlsConfigs()const;
+				void setSlsConfigs(const std::string& slsConfigs);
+				std::string getCommandArgs()const;
+				void setCommandArgs(const std::string& commandArgs);
+				std::string getReadiness()const;
+				void setReadiness(const std::string& readiness);
+				std::string getLiveness()const;
+				void setLiveness(const std::string& liveness);
+				std::string getDescription()const;
+				void setDescription(const std::string& description);
+				std::string getEnvs()const;
+				void setEnvs(const std::string& envs);
+				std::string getEnvFroms()const;
+				void setEnvFroms(const std::string& envFroms);
+				std::string getRequestCpu()const;
+				void setRequestCpu(const std::string& requestCpu);
+				std::string getRequestMem()const;
+				void setRequestMem(const std::string& requestMem);
+				std::string getShowName()const;
+				void setShowName(const std::string& showName);
+				std::string getLimitMem()const;
+				void setLimitMem(const std::string& limitMem);
+				std::string getConfigMountDescs()const;
+				void setConfigMountDescs(const std::string& configMountDescs);
+				bool getDeployAcrossZones()const;
+				void setDeployAcrossZones(bool deployAcrossZones);
+				bool getDeployAcrossNodes()const;
+				void setDeployAcrossNodes(bool deployAcrossNodes);
+				std::string getPreStop()const;
+				void setPreStop(const std::string& preStop);
+				long getReplicas()const;
+				void setReplicas(long replicas);
+				std::string getLimitCpu()const;
+				void setLimitCpu(const std::string& limitCpu);
+				std::string getWebContainerConfig()const;
+				void setWebContainerConfig(const std::string& webContainerConfig);
+				std::string getPackageConfig()const;
+				void setPackageConfig(const std::string& packageConfig);
+				bool getIsMultilingualApp()const;
+				void setIsMultilingualApp(bool isMultilingualApp);
+				std::string getNasMountDescs()const;
+				void setNasMountDescs(const std::string& nasMountDescs);
+				std::string getLocalVolumes()const;
+				void setLocalVolumes(const std::string& localVolumes);
+				std::string getCommand()const;
+				void setCommand(const std::string& command);
+				std::string getNasStorageType()const;
+				void setNasStorageType(const std::string& nasStorageType);
+				std::string getImageConfig()const;
+				void setImageConfig(const std::string& imageConfig);
+				std::string getSourceConfig()const;
+				void setSourceConfig(const std::string& sourceConfig);
+				std::string getEmptyDirs()const;
+				void setEmptyDirs(const std::string& emptyDirs);
+				std::string getPvcMountDescs()const;
+				void setPvcMountDescs(const std::string& pvcMountDescs);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::string getAttributes()const;
+				void setAttributes(const std::string& attributes);
+				std::string getRuntimeClassName()const;
+				void setRuntimeClassName(const std::string& runtimeClassName);
+				std::string getJavaStartUpConfig()const;
+				void setJavaStartUpConfig(const std::string& javaStartUpConfig);
+				std::string getPostStart()const;
+				void setPostStart(const std::string& postStart);
+
+            private:
+				std::string nasId_;
+				bool enableAhas_;
+				std::string slsConfigs_;
+				std::string commandArgs_;
+				std::string readiness_;
+				std::string liveness_;
+				std::string description_;
+				std::string envs_;
+				std::string envFroms_;
+				std::string requestCpu_;
+				std::string requestMem_;
+				std::string showName_;
+				std::string limitMem_;
+				std::string configMountDescs_;
+				bool deployAcrossZones_;
+				bool deployAcrossNodes_;
+				std::string preStop_;
+				long replicas_;
+				std::string limitCpu_;
+				std::string webContainerConfig_;
+				std::string packageConfig_;
+				bool isMultilingualApp_;
+				std::string nasMountDescs_;
+				std::string localVolumes_;
+				std::string command_;
+				std::string nasStorageType_;
+				std::string imageConfig_;
+				std::string sourceConfig_;
+				std::string emptyDirs_;
+				std::string pvcMountDescs_;
+				std::string name_;
+				std::string attributes_;
+				std::string runtimeClassName_;
+				std::string javaStartUpConfig_;
+				std::string postStart_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EDAS_MODEL_CREATEAPPLICATIONTEMPLATEREQUEST_H_

+ 68 - 0
edas/include/alibabacloud/edas/model/CreateApplicationTemplateResult.h

@@ -0,0 +1,68 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EDAS_MODEL_CREATEAPPLICATIONTEMPLATERESULT_H_
+#define ALIBABACLOUD_EDAS_MODEL_CREATEAPPLICATIONTEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/edas/EdasExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Edas
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EDAS_EXPORT CreateApplicationTemplateResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct SourceConfig
+					{
+						std::string sourceUrl;
+					};
+					std::string description;
+					SourceConfig sourceConfig;
+					std::string attributes;
+					long id;
+					std::string showName;
+					std::string name;
+				};
+
+
+				CreateApplicationTemplateResult();
+				explicit CreateApplicationTemplateResult(const std::string &payload);
+				~CreateApplicationTemplateResult();
+				std::string getMessage()const;
+				Data getData()const;
+				int getCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				Data data_;
+				int code_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EDAS_MODEL_CREATEAPPLICATIONTEMPLATERESULT_H_

+ 3 - 0
edas/include/alibabacloud/edas/model/CreateK8sSecretRequest.h

@@ -35,6 +35,8 @@ namespace AlibabaCloud
 				CreateK8sSecretRequest();
 				~CreateK8sSecretRequest();
 
+				bool getBase64Encoded()const;
+				void setBase64Encoded(bool base64Encoded);
 				std::string getData()const;
 				void setData(const std::string& data);
 				std::string getName()const;
@@ -51,6 +53,7 @@ namespace AlibabaCloud
 				void setCertRegionId(const std::string& certRegionId);
 
             private:
+				bool base64Encoded_;
 				std::string data_;
 				std::string name_;
 				std::string _namespace_;

+ 6 - 5
edas/include/alibabacloud/edas/model/GetChangeOrderInfoResult.h

@@ -64,8 +64,8 @@ namespace AlibabaCloud
 										std::string startTime;
 										std::string stageMessage;
 									};
-									std::string instanceName;
 									int status;
+									std::string instanceName;
 									std::string podStatus;
 									std::string podName;
 									std::string instanceIp;
@@ -89,8 +89,8 @@ namespace AlibabaCloud
 								bool showManualIgnorance;
 								std::string taskErrorCode;
 								std::string taskStatus;
-								std::string taskErrorMessage;
 								int retryType;
+								std::string taskErrorMessage;
 								std::string taskMessage;
 							};
 							std::string stageName;
@@ -107,15 +107,16 @@ namespace AlibabaCloud
 						std::string pipelineId;
 					};
 					int status;
-					std::string desc;
 					std::vector<PipelineInfo> pipelineInfoList;
-					std::string changeOrderDescription;
 					TrafficControl trafficControl;
 					std::string createTime;
 					std::string changeOrderId;
-					bool supportRollback;
 					std::string createUserId;
+					std::vector<std::string> targets;
 					std::string batchType;
+					std::string desc;
+					std::string changeOrderDescription;
+					bool supportRollback;
 					std::string coType;
 					int batchCount;
 				};

+ 2 - 1
edas/include/alibabacloud/edas/model/ListK8sIngressRulesResult.h

@@ -45,8 +45,8 @@ namespace AlibabaCloud
 									std::string servicePort;
 									std::string serviceName;
 								};
-								std::string path;
 								std::string status;
+								std::string path;
 								Backend backend;
 								std::string appId;
 								std::string appName;
@@ -55,6 +55,7 @@ namespace AlibabaCloud
 							std::string host;
 							std::vector<RulesItem::PathsItem> paths;
 						};
+						bool sslRedirect;
 						std::string endpoint;
 						std::string creationTime;
 						std::string _namespace;

+ 28 - 6
edas/include/alibabacloud/edas/model/ListK8sSecretsResult.h

@@ -36,26 +36,48 @@ namespace AlibabaCloud
 				{
 					struct SecretsItem
 					{
+						struct CertDetail
+						{
+							std::string status;
+							std::string endTime;
+							std::string issuer;
+							std::string startTime;
+							std::vector<std::string> domainNames;
+						};
+						struct RelatedIngressRulesItem
+						{
+							struct RelatedAppsItem
+							{
+								std::string appId;
+								std::string appName;
+							};
+							std::vector<RelatedIngressRulesItem::RelatedAppsItem> relatedApps1;
+							std::string _namespace;
+							std::string name;
+						};
 						struct DataItem
 						{
 							std::string value;
 							std::string key;
 						};
-						struct RelatedAppsItem
+						struct RelatedAppsItem2
 						{
 							std::string appId;
 							std::string appName;
 						};
-						std::string type;
-						std::vector<SecretsItem::RelatedAppsItem> relatedApps;
+						std::vector<SecretsItem::RelatedAppsItem2> relatedApps;
 						std::string clusterId;
 						std::string certId;
-						std::string certRegionId;
-						std::string creationTime;
-						std::string clusterName;
 						std::vector<SecretsItem::DataItem> data;
 						std::string _namespace;
 						std::string name;
+						std::string type;
+						std::vector<SecretsItem::RelatedIngressRulesItem> relatedIngressRules;
+						CertDetail certDetail;
+						std::string certRegionId;
+						std::string creationTime;
+						std::string clusterName;
+						bool base64Encoded;
 					};
 					std::vector<ResultItem::SecretsItem> secrets;
 					int total;

+ 3 - 0
edas/include/alibabacloud/edas/model/UpdateK8sSecretRequest.h

@@ -35,6 +35,8 @@ namespace AlibabaCloud
 				UpdateK8sSecretRequest();
 				~UpdateK8sSecretRequest();
 
+				bool getBase64Encoded()const;
+				void setBase64Encoded(bool base64Encoded);
 				std::string getData()const;
 				void setData(const std::string& data);
 				std::string getName()const;
@@ -51,6 +53,7 @@ namespace AlibabaCloud
 				void setCertRegionId(const std::string& certRegionId);
 
             private:
+				bool base64Encoded_;
 				std::string data_;
 				std::string name_;
 				std::string _namespace_;

+ 36 - 0
edas/src/EdasClient.cc

@@ -591,6 +591,42 @@ EdasClient::CreateApplicationScalingRuleOutcomeCallable EdasClient::createApplic
 	return task->get_future();
 }
 
+EdasClient::CreateApplicationTemplateOutcome EdasClient::createApplicationTemplate(const CreateApplicationTemplateRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateApplicationTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateApplicationTemplateOutcome(CreateApplicationTemplateResult(outcome.result()));
+	else
+		return CreateApplicationTemplateOutcome(outcome.error());
+}
+
+void EdasClient::createApplicationTemplateAsync(const CreateApplicationTemplateRequest& request, const CreateApplicationTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createApplicationTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EdasClient::CreateApplicationTemplateOutcomeCallable EdasClient::createApplicationTemplateCallable(const CreateApplicationTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateApplicationTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->createApplicationTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EdasClient::CreateEnvAppGroupOutcome EdasClient::createEnvAppGroup(const CreateEnvAppGroupRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 415 - 0
edas/src/model/CreateApplicationTemplateRequest.cc

@@ -0,0 +1,415 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/edas/model/CreateApplicationTemplateRequest.h>
+
+using AlibabaCloud::Edas::Model::CreateApplicationTemplateRequest;
+
+CreateApplicationTemplateRequest::CreateApplicationTemplateRequest() :
+	RoaServiceRequest("edas", "2017-08-01")
+{
+	setResourcePath("/pop/v5/cnedas/app_template");
+	setMethod(HttpRequest::Method::Post);
+}
+
+CreateApplicationTemplateRequest::~CreateApplicationTemplateRequest()
+{}
+
+std::string CreateApplicationTemplateRequest::getNasId()const
+{
+	return nasId_;
+}
+
+void CreateApplicationTemplateRequest::setNasId(const std::string& nasId)
+{
+	nasId_ = nasId;
+	setBodyParameter("NasId", nasId);
+}
+
+bool CreateApplicationTemplateRequest::getEnableAhas()const
+{
+	return enableAhas_;
+}
+
+void CreateApplicationTemplateRequest::setEnableAhas(bool enableAhas)
+{
+	enableAhas_ = enableAhas;
+	setBodyParameter("EnableAhas", enableAhas ? "true" : "false");
+}
+
+std::string CreateApplicationTemplateRequest::getSlsConfigs()const
+{
+	return slsConfigs_;
+}
+
+void CreateApplicationTemplateRequest::setSlsConfigs(const std::string& slsConfigs)
+{
+	slsConfigs_ = slsConfigs;
+	setBodyParameter("SlsConfigs", slsConfigs);
+}
+
+std::string CreateApplicationTemplateRequest::getCommandArgs()const
+{
+	return commandArgs_;
+}
+
+void CreateApplicationTemplateRequest::setCommandArgs(const std::string& commandArgs)
+{
+	commandArgs_ = commandArgs;
+	setBodyParameter("CommandArgs", commandArgs);
+}
+
+std::string CreateApplicationTemplateRequest::getReadiness()const
+{
+	return readiness_;
+}
+
+void CreateApplicationTemplateRequest::setReadiness(const std::string& readiness)
+{
+	readiness_ = readiness;
+	setBodyParameter("Readiness", readiness);
+}
+
+std::string CreateApplicationTemplateRequest::getLiveness()const
+{
+	return liveness_;
+}
+
+void CreateApplicationTemplateRequest::setLiveness(const std::string& liveness)
+{
+	liveness_ = liveness;
+	setBodyParameter("Liveness", liveness);
+}
+
+std::string CreateApplicationTemplateRequest::getDescription()const
+{
+	return description_;
+}
+
+void CreateApplicationTemplateRequest::setDescription(const std::string& description)
+{
+	description_ = description;
+	setBodyParameter("Description", description);
+}
+
+std::string CreateApplicationTemplateRequest::getEnvs()const
+{
+	return envs_;
+}
+
+void CreateApplicationTemplateRequest::setEnvs(const std::string& envs)
+{
+	envs_ = envs;
+	setBodyParameter("Envs", envs);
+}
+
+std::string CreateApplicationTemplateRequest::getEnvFroms()const
+{
+	return envFroms_;
+}
+
+void CreateApplicationTemplateRequest::setEnvFroms(const std::string& envFroms)
+{
+	envFroms_ = envFroms;
+	setBodyParameter("EnvFroms", envFroms);
+}
+
+std::string CreateApplicationTemplateRequest::getRequestCpu()const
+{
+	return requestCpu_;
+}
+
+void CreateApplicationTemplateRequest::setRequestCpu(const std::string& requestCpu)
+{
+	requestCpu_ = requestCpu;
+	setBodyParameter("RequestCpu", requestCpu);
+}
+
+std::string CreateApplicationTemplateRequest::getRequestMem()const
+{
+	return requestMem_;
+}
+
+void CreateApplicationTemplateRequest::setRequestMem(const std::string& requestMem)
+{
+	requestMem_ = requestMem;
+	setBodyParameter("RequestMem", requestMem);
+}
+
+std::string CreateApplicationTemplateRequest::getShowName()const
+{
+	return showName_;
+}
+
+void CreateApplicationTemplateRequest::setShowName(const std::string& showName)
+{
+	showName_ = showName;
+	setBodyParameter("ShowName", showName);
+}
+
+std::string CreateApplicationTemplateRequest::getLimitMem()const
+{
+	return limitMem_;
+}
+
+void CreateApplicationTemplateRequest::setLimitMem(const std::string& limitMem)
+{
+	limitMem_ = limitMem;
+	setBodyParameter("LimitMem", limitMem);
+}
+
+std::string CreateApplicationTemplateRequest::getConfigMountDescs()const
+{
+	return configMountDescs_;
+}
+
+void CreateApplicationTemplateRequest::setConfigMountDescs(const std::string& configMountDescs)
+{
+	configMountDescs_ = configMountDescs;
+	setBodyParameter("ConfigMountDescs", configMountDescs);
+}
+
+bool CreateApplicationTemplateRequest::getDeployAcrossZones()const
+{
+	return deployAcrossZones_;
+}
+
+void CreateApplicationTemplateRequest::setDeployAcrossZones(bool deployAcrossZones)
+{
+	deployAcrossZones_ = deployAcrossZones;
+	setBodyParameter("DeployAcrossZones", deployAcrossZones ? "true" : "false");
+}
+
+bool CreateApplicationTemplateRequest::getDeployAcrossNodes()const
+{
+	return deployAcrossNodes_;
+}
+
+void CreateApplicationTemplateRequest::setDeployAcrossNodes(bool deployAcrossNodes)
+{
+	deployAcrossNodes_ = deployAcrossNodes;
+	setBodyParameter("DeployAcrossNodes", deployAcrossNodes ? "true" : "false");
+}
+
+std::string CreateApplicationTemplateRequest::getPreStop()const
+{
+	return preStop_;
+}
+
+void CreateApplicationTemplateRequest::setPreStop(const std::string& preStop)
+{
+	preStop_ = preStop;
+	setBodyParameter("PreStop", preStop);
+}
+
+long CreateApplicationTemplateRequest::getReplicas()const
+{
+	return replicas_;
+}
+
+void CreateApplicationTemplateRequest::setReplicas(long replicas)
+{
+	replicas_ = replicas;
+	setBodyParameter("Replicas", std::to_string(replicas));
+}
+
+std::string CreateApplicationTemplateRequest::getLimitCpu()const
+{
+	return limitCpu_;
+}
+
+void CreateApplicationTemplateRequest::setLimitCpu(const std::string& limitCpu)
+{
+	limitCpu_ = limitCpu;
+	setBodyParameter("LimitCpu", limitCpu);
+}
+
+std::string CreateApplicationTemplateRequest::getWebContainerConfig()const
+{
+	return webContainerConfig_;
+}
+
+void CreateApplicationTemplateRequest::setWebContainerConfig(const std::string& webContainerConfig)
+{
+	webContainerConfig_ = webContainerConfig;
+	setBodyParameter("WebContainerConfig", webContainerConfig);
+}
+
+std::string CreateApplicationTemplateRequest::getPackageConfig()const
+{
+	return packageConfig_;
+}
+
+void CreateApplicationTemplateRequest::setPackageConfig(const std::string& packageConfig)
+{
+	packageConfig_ = packageConfig;
+	setBodyParameter("PackageConfig", packageConfig);
+}
+
+bool CreateApplicationTemplateRequest::getIsMultilingualApp()const
+{
+	return isMultilingualApp_;
+}
+
+void CreateApplicationTemplateRequest::setIsMultilingualApp(bool isMultilingualApp)
+{
+	isMultilingualApp_ = isMultilingualApp;
+	setBodyParameter("IsMultilingualApp", isMultilingualApp ? "true" : "false");
+}
+
+std::string CreateApplicationTemplateRequest::getNasMountDescs()const
+{
+	return nasMountDescs_;
+}
+
+void CreateApplicationTemplateRequest::setNasMountDescs(const std::string& nasMountDescs)
+{
+	nasMountDescs_ = nasMountDescs;
+	setBodyParameter("NasMountDescs", nasMountDescs);
+}
+
+std::string CreateApplicationTemplateRequest::getLocalVolumes()const
+{
+	return localVolumes_;
+}
+
+void CreateApplicationTemplateRequest::setLocalVolumes(const std::string& localVolumes)
+{
+	localVolumes_ = localVolumes;
+	setBodyParameter("LocalVolumes", localVolumes);
+}
+
+std::string CreateApplicationTemplateRequest::getCommand()const
+{
+	return command_;
+}
+
+void CreateApplicationTemplateRequest::setCommand(const std::string& command)
+{
+	command_ = command;
+	setBodyParameter("Command", command);
+}
+
+std::string CreateApplicationTemplateRequest::getNasStorageType()const
+{
+	return nasStorageType_;
+}
+
+void CreateApplicationTemplateRequest::setNasStorageType(const std::string& nasStorageType)
+{
+	nasStorageType_ = nasStorageType;
+	setBodyParameter("NasStorageType", nasStorageType);
+}
+
+std::string CreateApplicationTemplateRequest::getImageConfig()const
+{
+	return imageConfig_;
+}
+
+void CreateApplicationTemplateRequest::setImageConfig(const std::string& imageConfig)
+{
+	imageConfig_ = imageConfig;
+	setBodyParameter("ImageConfig", imageConfig);
+}
+
+std::string CreateApplicationTemplateRequest::getSourceConfig()const
+{
+	return sourceConfig_;
+}
+
+void CreateApplicationTemplateRequest::setSourceConfig(const std::string& sourceConfig)
+{
+	sourceConfig_ = sourceConfig;
+	setBodyParameter("SourceConfig", sourceConfig);
+}
+
+std::string CreateApplicationTemplateRequest::getEmptyDirs()const
+{
+	return emptyDirs_;
+}
+
+void CreateApplicationTemplateRequest::setEmptyDirs(const std::string& emptyDirs)
+{
+	emptyDirs_ = emptyDirs;
+	setBodyParameter("EmptyDirs", emptyDirs);
+}
+
+std::string CreateApplicationTemplateRequest::getPvcMountDescs()const
+{
+	return pvcMountDescs_;
+}
+
+void CreateApplicationTemplateRequest::setPvcMountDescs(const std::string& pvcMountDescs)
+{
+	pvcMountDescs_ = pvcMountDescs;
+	setBodyParameter("PvcMountDescs", pvcMountDescs);
+}
+
+std::string CreateApplicationTemplateRequest::getName()const
+{
+	return name_;
+}
+
+void CreateApplicationTemplateRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setBodyParameter("Name", name);
+}
+
+std::string CreateApplicationTemplateRequest::getAttributes()const
+{
+	return attributes_;
+}
+
+void CreateApplicationTemplateRequest::setAttributes(const std::string& attributes)
+{
+	attributes_ = attributes;
+	setBodyParameter("Attributes", attributes);
+}
+
+std::string CreateApplicationTemplateRequest::getRuntimeClassName()const
+{
+	return runtimeClassName_;
+}
+
+void CreateApplicationTemplateRequest::setRuntimeClassName(const std::string& runtimeClassName)
+{
+	runtimeClassName_ = runtimeClassName;
+	setBodyParameter("RuntimeClassName", runtimeClassName);
+}
+
+std::string CreateApplicationTemplateRequest::getJavaStartUpConfig()const
+{
+	return javaStartUpConfig_;
+}
+
+void CreateApplicationTemplateRequest::setJavaStartUpConfig(const std::string& javaStartUpConfig)
+{
+	javaStartUpConfig_ = javaStartUpConfig;
+	setBodyParameter("JavaStartUpConfig", javaStartUpConfig);
+}
+
+std::string CreateApplicationTemplateRequest::getPostStart()const
+{
+	return postStart_;
+}
+
+void CreateApplicationTemplateRequest::setPostStart(const std::string& postStart)
+{
+	postStart_ = postStart;
+	setBodyParameter("PostStart", postStart);
+}
+

+ 77 - 0
edas/src/model/CreateApplicationTemplateResult.cc

@@ -0,0 +1,77 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/edas/model/CreateApplicationTemplateResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Edas;
+using namespace AlibabaCloud::Edas::Model;
+
+CreateApplicationTemplateResult::CreateApplicationTemplateResult() :
+	ServiceResult()
+{}
+
+CreateApplicationTemplateResult::CreateApplicationTemplateResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateApplicationTemplateResult::~CreateApplicationTemplateResult()
+{}
+
+void CreateApplicationTemplateResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	if(!dataNode["ShowName"].isNull())
+		data_.showName = dataNode["ShowName"].asString();
+	if(!dataNode["Description"].isNull())
+		data_.description = dataNode["Description"].asString();
+	if(!dataNode["Name"].isNull())
+		data_.name = dataNode["Name"].asString();
+	if(!dataNode["Id"].isNull())
+		data_.id = std::stol(dataNode["Id"].asString());
+	if(!dataNode["Attributes"].isNull())
+		data_.attributes = dataNode["Attributes"].asString();
+	auto sourceConfigNode = dataNode["SourceConfig"];
+	if(!sourceConfigNode["SourceUrl"].isNull())
+		data_.sourceConfig.sourceUrl = sourceConfigNode["SourceUrl"].asString();
+	if(!value["Code"].isNull())
+		code_ = std::stoi(value["Code"].asString());
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+
+}
+
+std::string CreateApplicationTemplateResult::getMessage()const
+{
+	return message_;
+}
+
+CreateApplicationTemplateResult::Data CreateApplicationTemplateResult::getData()const
+{
+	return data_;
+}
+
+int CreateApplicationTemplateResult::getCode()const
+{
+	return code_;
+}
+

+ 11 - 0
edas/src/model/CreateK8sSecretRequest.cc

@@ -28,6 +28,17 @@ CreateK8sSecretRequest::CreateK8sSecretRequest() :
 CreateK8sSecretRequest::~CreateK8sSecretRequest()
 {}
 
+bool CreateK8sSecretRequest::getBase64Encoded()const
+{
+	return base64Encoded_;
+}
+
+void CreateK8sSecretRequest::setBase64Encoded(bool base64Encoded)
+{
+	base64Encoded_ = base64Encoded;
+	setBodyParameter("Base64Encoded", base64Encoded ? "true" : "false");
+}
+
 std::string CreateK8sSecretRequest::getData()const
 {
 	return data_;

+ 43 - 40
edas/src/model/GetChangeOrderInfoResult.cc

@@ -40,63 +40,63 @@ void GetChangeOrderInfoResult::parse(const std::string &payload)
 	reader.parse(payload, value);
 	setRequestId(value["RequestId"].asString());
 	auto changeOrderInfoNode = value["changeOrderInfo"];
+	if(!changeOrderInfoNode["Status"].isNull())
+		changeOrderInfo_.status = std::stoi(changeOrderInfoNode["Status"].asString());
 	if(!changeOrderInfoNode["ChangeOrderId"].isNull())
 		changeOrderInfo_.changeOrderId = changeOrderInfoNode["ChangeOrderId"].asString();
-	if(!changeOrderInfoNode["CreateUserId"].isNull())
-		changeOrderInfo_.createUserId = changeOrderInfoNode["CreateUserId"].asString();
-	if(!changeOrderInfoNode["Desc"].isNull())
-		changeOrderInfo_.desc = changeOrderInfoNode["Desc"].asString();
-	if(!changeOrderInfoNode["BatchCount"].isNull())
-		changeOrderInfo_.batchCount = std::stoi(changeOrderInfoNode["BatchCount"].asString());
 	if(!changeOrderInfoNode["BatchType"].isNull())
 		changeOrderInfo_.batchType = changeOrderInfoNode["BatchType"].asString();
-	if(!changeOrderInfoNode["Status"].isNull())
-		changeOrderInfo_.status = std::stoi(changeOrderInfoNode["Status"].asString());
 	if(!changeOrderInfoNode["CoType"].isNull())
 		changeOrderInfo_.coType = changeOrderInfoNode["CoType"].asString();
 	if(!changeOrderInfoNode["CreateTime"].isNull())
 		changeOrderInfo_.createTime = changeOrderInfoNode["CreateTime"].asString();
-	if(!changeOrderInfoNode["SupportRollback"].isNull())
-		changeOrderInfo_.supportRollback = changeOrderInfoNode["SupportRollback"].asString() == "true";
 	if(!changeOrderInfoNode["ChangeOrderDescription"].isNull())
 		changeOrderInfo_.changeOrderDescription = changeOrderInfoNode["ChangeOrderDescription"].asString();
+	if(!changeOrderInfoNode["BatchCount"].isNull())
+		changeOrderInfo_.batchCount = std::stoi(changeOrderInfoNode["BatchCount"].asString());
+	if(!changeOrderInfoNode["CreateUserId"].isNull())
+		changeOrderInfo_.createUserId = changeOrderInfoNode["CreateUserId"].asString();
+	if(!changeOrderInfoNode["SupportRollback"].isNull())
+		changeOrderInfo_.supportRollback = changeOrderInfoNode["SupportRollback"].asString() == "true";
+	if(!changeOrderInfoNode["Desc"].isNull())
+		changeOrderInfo_.desc = changeOrderInfoNode["Desc"].asString();
 	auto allPipelineInfoListNode = changeOrderInfoNode["PipelineInfoList"]["PipelineInfo"];
 	for (auto changeOrderInfoNodePipelineInfoListPipelineInfo : allPipelineInfoListNode)
 	{
 		ChangeOrderInfo::PipelineInfo pipelineInfoObject;
-		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineId"].isNull())
-			pipelineInfoObject.pipelineId = changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineId"].asString();
 		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineName"].isNull())
 			pipelineInfoObject.pipelineName = changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineName"].asString();
-		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineStatus"].isNull())
-			pipelineInfoObject.pipelineStatus = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineStatus"].asString());
 		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["StartTime"].isNull())
 			pipelineInfoObject.startTime = changeOrderInfoNodePipelineInfoListPipelineInfo["StartTime"].asString();
 		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["UpdateTime"].isNull())
 			pipelineInfoObject.updateTime = changeOrderInfoNodePipelineInfoListPipelineInfo["UpdateTime"].asString();
+		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineStatus"].isNull())
+			pipelineInfoObject.pipelineStatus = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineStatus"].asString());
+		if(!changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineId"].isNull())
+			pipelineInfoObject.pipelineId = changeOrderInfoNodePipelineInfoListPipelineInfo["PipelineId"].asString();
 		auto allStageListNode = changeOrderInfoNodePipelineInfoListPipelineInfo["StageList"]["StageInfoDTO"];
 		for (auto changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO : allStageListNode)
 		{
 			ChangeOrderInfo::PipelineInfo::StageInfoDTO stageListObject;
 			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["StageId"].isNull())
 				stageListObject.stageId = changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["StageId"].asString();
-			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["StageName"].isNull())
-				stageListObject.stageName = changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["StageName"].asString();
 			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["Status"].isNull())
 				stageListObject.status = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["Status"].asString());
+			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["StageName"].isNull())
+				stageListObject.stageName = changeOrderInfoNodePipelineInfoListPipelineInfoStageListStageInfoDTO["StageName"].asString();
 			auto stageResultDTONode = value["StageResultDTO"];
 			auto allInstanceDTOListNode = stageResultDTONode["InstanceDTOList"]["InstanceDTO"];
 			for (auto stageResultDTONodeInstanceDTOListInstanceDTO : allInstanceDTOListNode)
 			{
 				ChangeOrderInfo::PipelineInfo::StageInfoDTO::StageResultDTO::InstanceDTO instanceDTOObject;
-				if(!stageResultDTONodeInstanceDTOListInstanceDTO["InstanceName"].isNull())
-					instanceDTOObject.instanceName = stageResultDTONodeInstanceDTOListInstanceDTO["InstanceName"].asString();
-				if(!stageResultDTONodeInstanceDTOListInstanceDTO["InstanceIp"].isNull())
-					instanceDTOObject.instanceIp = stageResultDTONodeInstanceDTOListInstanceDTO["InstanceIp"].asString();
 				if(!stageResultDTONodeInstanceDTOListInstanceDTO["Status"].isNull())
 					instanceDTOObject.status = std::stoi(stageResultDTONodeInstanceDTOListInstanceDTO["Status"].asString());
+				if(!stageResultDTONodeInstanceDTOListInstanceDTO["InstanceIp"].isNull())
+					instanceDTOObject.instanceIp = stageResultDTONodeInstanceDTOListInstanceDTO["InstanceIp"].asString();
 				if(!stageResultDTONodeInstanceDTOListInstanceDTO["PodName"].isNull())
 					instanceDTOObject.podName = stageResultDTONodeInstanceDTOListInstanceDTO["PodName"].asString();
+				if(!stageResultDTONodeInstanceDTOListInstanceDTO["InstanceName"].isNull())
+					instanceDTOObject.instanceName = stageResultDTONodeInstanceDTOListInstanceDTO["InstanceName"].asString();
 				if(!stageResultDTONodeInstanceDTOListInstanceDTO["PodStatus"].isNull())
 					instanceDTOObject.podStatus = stageResultDTONodeInstanceDTOListInstanceDTO["PodStatus"].asString();
 				auto allInstanceStageDTOListNode = stageResultDTONodeInstanceDTOListInstanceDTO["InstanceStageDTOList"]["InstanceStageDTO"];
@@ -105,16 +105,16 @@ void GetChangeOrderInfoResult::parse(const std::string &payload)
 					ChangeOrderInfo::PipelineInfo::StageInfoDTO::StageResultDTO::InstanceDTO::InstanceStageDTO instanceStageDTOListObject;
 					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageId"].isNull())
 						instanceStageDTOListObject.stageId = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageId"].asString();
-					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageName"].isNull())
-						instanceStageDTOListObject.stageName = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageName"].asString();
 					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["Status"].isNull())
 						instanceStageDTOListObject.status = std::stoi(stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["Status"].asString());
-					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageMessage"].isNull())
-						instanceStageDTOListObject.stageMessage = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageMessage"].asString();
 					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StartTime"].isNull())
 						instanceStageDTOListObject.startTime = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StartTime"].asString();
+					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageMessage"].isNull())
+						instanceStageDTOListObject.stageMessage = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageMessage"].asString();
 					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["FinishTime"].isNull())
 						instanceStageDTOListObject.finishTime = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["FinishTime"].asString();
+					if(!stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageName"].isNull())
+						instanceStageDTOListObject.stageName = stageResultDTONodeInstanceDTOListInstanceDTOInstanceStageDTOListInstanceStageDTO["StageName"].asString();
 					instanceDTOObject.instanceStageDTOList.push_back(instanceStageDTOListObject);
 				}
 				stageListObject.stageResultDTO.instanceDTOList.push_back(instanceDTOObject);
@@ -122,12 +122,12 @@ void GetChangeOrderInfoResult::parse(const std::string &payload)
 			auto serviceStageNode = stageResultDTONode["ServiceStage"];
 			if(!serviceStageNode["StageId"].isNull())
 				stageListObject.stageResultDTO.serviceStage.stageId = serviceStageNode["StageId"].asString();
-			if(!serviceStageNode["StageName"].isNull())
-				stageListObject.stageResultDTO.serviceStage.stageName = serviceStageNode["StageName"].asString();
 			if(!serviceStageNode["Status"].isNull())
 				stageListObject.stageResultDTO.serviceStage.status = std::stoi(serviceStageNode["Status"].asString());
 			if(!serviceStageNode["Message"].isNull())
 				stageListObject.stageResultDTO.serviceStage.message = serviceStageNode["Message"].asString();
+			if(!serviceStageNode["StageName"].isNull())
+				stageListObject.stageResultDTO.serviceStage.stageName = serviceStageNode["StageName"].asString();
 			pipelineInfoObject.stageList.push_back(stageListObject);
 		}
 		auto allStageDetailListNode = changeOrderInfoNodePipelineInfoListPipelineInfo["StageDetailList"]["StageDetailDTO"];
@@ -136,32 +136,32 @@ void GetChangeOrderInfoResult::parse(const std::string &payload)
 			ChangeOrderInfo::PipelineInfo::StageDetailDTO stageDetailListObject;
 			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageId"].isNull())
 				stageDetailListObject.stageId = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageId"].asString();
-			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageName"].isNull())
-				stageDetailListObject.stageName = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageName"].asString();
 			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageStatus"].isNull())
 				stageDetailListObject.stageStatus = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageStatus"].asString());
+			if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageName"].isNull())
+				stageDetailListObject.stageName = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["StageName"].asString();
 			auto allTaskListNode = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTO["TaskList"]["TaskInfoDTO"];
 			for (auto changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO : allTaskListNode)
 			{
 				ChangeOrderInfo::PipelineInfo::StageDetailDTO::TaskInfoDTO taskListObject;
-				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskName"].isNull())
-					taskListObject.taskName = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskName"].asString();
+				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorIgnorance"].isNull())
+					taskListObject.taskErrorIgnorance = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorIgnorance"].asString());
+				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["ShowManualIgnorance"].isNull())
+					taskListObject.showManualIgnorance = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["ShowManualIgnorance"].asString() == "true";
 				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskStatus"].isNull())
 					taskListObject.taskStatus = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskStatus"].asString();
 				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskMessage"].isNull())
 					taskListObject.taskMessage = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskMessage"].asString();
-				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskId"].isNull())
-					taskListObject.taskId = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskId"].asString();
+				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskName"].isNull())
+					taskListObject.taskName = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskName"].asString();
 				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorCode"].isNull())
 					taskListObject.taskErrorCode = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorCode"].asString();
-				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorMessage"].isNull())
-					taskListObject.taskErrorMessage = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorMessage"].asString();
-				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["ShowManualIgnorance"].isNull())
-					taskListObject.showManualIgnorance = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["ShowManualIgnorance"].asString() == "true";
-				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorIgnorance"].isNull())
-					taskListObject.taskErrorIgnorance = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorIgnorance"].asString());
 				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["RetryType"].isNull())
 					taskListObject.retryType = std::stoi(changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["RetryType"].asString());
+				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskId"].isNull())
+					taskListObject.taskId = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskId"].asString();
+				if(!changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorMessage"].isNull())
+					taskListObject.taskErrorMessage = changeOrderInfoNodePipelineInfoListPipelineInfoStageDetailListStageDetailDTOTaskListTaskInfoDTO["TaskErrorMessage"].asString();
 				stageDetailListObject.taskList.push_back(taskListObject);
 			}
 			pipelineInfoObject.stageDetailList.push_back(stageDetailListObject);
@@ -169,12 +169,15 @@ void GetChangeOrderInfoResult::parse(const std::string &payload)
 		changeOrderInfo_.pipelineInfoList.push_back(pipelineInfoObject);
 	}
 	auto trafficControlNode = changeOrderInfoNode["TrafficControl"];
-	if(!trafficControlNode["Rules"].isNull())
-		changeOrderInfo_.trafficControl.rules = trafficControlNode["Rules"].asString();
 	if(!trafficControlNode["Routes"].isNull())
 		changeOrderInfo_.trafficControl.routes = trafficControlNode["Routes"].asString();
+	if(!trafficControlNode["Rules"].isNull())
+		changeOrderInfo_.trafficControl.rules = trafficControlNode["Rules"].asString();
 	if(!trafficControlNode["Tips"].isNull())
 		changeOrderInfo_.trafficControl.tips = trafficControlNode["Tips"].asString();
+		auto allTargets = changeOrderInfoNode["Targets"]["Items"];
+		for (auto value : allTargets)
+			changeOrderInfo_.targets.push_back(value.asString());
 	if(!value["Code"].isNull())
 		code_ = std::stoi(value["Code"].asString());
 	if(!value["Message"].isNull())

+ 16 - 14
edas/src/model/ListK8sIngressRulesResult.cc

@@ -43,46 +43,48 @@ void ListK8sIngressRulesResult::parse(const std::string &payload)
 	for (auto valueDataDataItem : allDataNode)
 	{
 		DataItem dataObject;
-		if(!valueDataDataItem["ClusterId"].isNull())
-			dataObject.clusterId = valueDataDataItem["ClusterId"].asString();
 		if(!valueDataDataItem["ClusterName"].isNull())
 			dataObject.clusterName = valueDataDataItem["ClusterName"].asString();
+		if(!valueDataDataItem["ClusterId"].isNull())
+			dataObject.clusterId = valueDataDataItem["ClusterId"].asString();
 		if(!valueDataDataItem["RegionId"].isNull())
 			dataObject.regionId = valueDataDataItem["RegionId"].asString();
 		auto allIngressConfsNode = valueDataDataItem["IngressConfs"]["IngressConfsItem"];
 		for (auto valueDataDataItemIngressConfsIngressConfsItem : allIngressConfsNode)
 		{
 			DataItem::IngressConfsItem ingressConfsObject;
-			if(!valueDataDataItemIngressConfsIngressConfsItem["Name"].isNull())
-				ingressConfsObject.name = valueDataDataItemIngressConfsIngressConfsItem["Name"].asString();
-			if(!valueDataDataItemIngressConfsIngressConfsItem["Namespace"].isNull())
-				ingressConfsObject._namespace = valueDataDataItemIngressConfsIngressConfsItem["Namespace"].asString();
-			if(!valueDataDataItemIngressConfsIngressConfsItem["Endpoint"].isNull())
-				ingressConfsObject.endpoint = valueDataDataItemIngressConfsIngressConfsItem["Endpoint"].asString();
 			if(!valueDataDataItemIngressConfsIngressConfsItem["CreationTime"].isNull())
 				ingressConfsObject.creationTime = valueDataDataItemIngressConfsIngressConfsItem["CreationTime"].asString();
+			if(!valueDataDataItemIngressConfsIngressConfsItem["SslRedirect"].isNull())
+				ingressConfsObject.sslRedirect = valueDataDataItemIngressConfsIngressConfsItem["SslRedirect"].asString() == "true";
+			if(!valueDataDataItemIngressConfsIngressConfsItem["Endpoint"].isNull())
+				ingressConfsObject.endpoint = valueDataDataItemIngressConfsIngressConfsItem["Endpoint"].asString();
+			if(!valueDataDataItemIngressConfsIngressConfsItem["Namespace"].isNull())
+				ingressConfsObject._namespace = valueDataDataItemIngressConfsIngressConfsItem["Namespace"].asString();
+			if(!valueDataDataItemIngressConfsIngressConfsItem["Name"].isNull())
+				ingressConfsObject.name = valueDataDataItemIngressConfsIngressConfsItem["Name"].asString();
 			if(!valueDataDataItemIngressConfsIngressConfsItem["DashboardUrl"].isNull())
 				ingressConfsObject.dashboardUrl = valueDataDataItemIngressConfsIngressConfsItem["DashboardUrl"].asString();
 			auto allRulesNode = valueDataDataItemIngressConfsIngressConfsItem["Rules"]["RulesItem"];
 			for (auto valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem : allRulesNode)
 			{
 				DataItem::IngressConfsItem::RulesItem rulesObject;
-				if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["Host"].isNull())
-					rulesObject.host = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["Host"].asString();
 				if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["SecretName"].isNull())
 					rulesObject.secretName = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["SecretName"].asString();
+				if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["Host"].isNull())
+					rulesObject.host = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["Host"].asString();
 				auto allPathsNode = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItem["Paths"]["PathsItem"];
 				for (auto valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem : allPathsNode)
 				{
 					DataItem::IngressConfsItem::RulesItem::PathsItem pathsObject;
+					if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["Status"].isNull())
+						pathsObject.status = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["Status"].asString();
 					if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["Path"].isNull())
 						pathsObject.path = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["Path"].asString();
-					if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["AppId"].isNull())
-						pathsObject.appId = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["AppId"].asString();
 					if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["AppName"].isNull())
 						pathsObject.appName = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["AppName"].asString();
-					if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["Status"].isNull())
-						pathsObject.status = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["Status"].asString();
+					if(!valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["AppId"].isNull())
+						pathsObject.appId = valueDataDataItemIngressConfsIngressConfsItemRulesRulesItemPathsPathsItem["AppId"].asString();
 					auto backendNode = value["Backend"];
 					if(!backendNode["ServiceName"].isNull())
 						pathsObject.backend.serviceName = backendNode["ServiceName"].asString();

+ 45 - 11
edas/src/model/ListK8sSecretsResult.cc

@@ -49,22 +49,44 @@ void ListK8sSecretsResult::parse(const std::string &payload)
 		for (auto valueResultResultItemSecretsSecretsItem : allSecretsNode)
 		{
 			ResultItem::SecretsItem secretsObject;
-			if(!valueResultResultItemSecretsSecretsItem["Name"].isNull())
-				secretsObject.name = valueResultResultItemSecretsSecretsItem["Name"].asString();
-			if(!valueResultResultItemSecretsSecretsItem["Namespace"].isNull())
-				secretsObject._namespace = valueResultResultItemSecretsSecretsItem["Namespace"].asString();
-			if(!valueResultResultItemSecretsSecretsItem["CreationTime"].isNull())
-				secretsObject.creationTime = valueResultResultItemSecretsSecretsItem["CreationTime"].asString();
 			if(!valueResultResultItemSecretsSecretsItem["Type"].isNull())
 				secretsObject.type = valueResultResultItemSecretsSecretsItem["Type"].asString();
-			if(!valueResultResultItemSecretsSecretsItem["ClusterId"].isNull())
-				secretsObject.clusterId = valueResultResultItemSecretsSecretsItem["ClusterId"].asString();
+			if(!valueResultResultItemSecretsSecretsItem["CreationTime"].isNull())
+				secretsObject.creationTime = valueResultResultItemSecretsSecretsItem["CreationTime"].asString();
 			if(!valueResultResultItemSecretsSecretsItem["ClusterName"].isNull())
 				secretsObject.clusterName = valueResultResultItemSecretsSecretsItem["ClusterName"].asString();
-			if(!valueResultResultItemSecretsSecretsItem["CertId"].isNull())
-				secretsObject.certId = valueResultResultItemSecretsSecretsItem["CertId"].asString();
+			if(!valueResultResultItemSecretsSecretsItem["Namespace"].isNull())
+				secretsObject._namespace = valueResultResultItemSecretsSecretsItem["Namespace"].asString();
+			if(!valueResultResultItemSecretsSecretsItem["Base64Encoded"].isNull())
+				secretsObject.base64Encoded = valueResultResultItemSecretsSecretsItem["Base64Encoded"].asString() == "true";
 			if(!valueResultResultItemSecretsSecretsItem["CertRegionId"].isNull())
 				secretsObject.certRegionId = valueResultResultItemSecretsSecretsItem["CertRegionId"].asString();
+			if(!valueResultResultItemSecretsSecretsItem["CertId"].isNull())
+				secretsObject.certId = valueResultResultItemSecretsSecretsItem["CertId"].asString();
+			if(!valueResultResultItemSecretsSecretsItem["Name"].isNull())
+				secretsObject.name = valueResultResultItemSecretsSecretsItem["Name"].asString();
+			if(!valueResultResultItemSecretsSecretsItem["ClusterId"].isNull())
+				secretsObject.clusterId = valueResultResultItemSecretsSecretsItem["ClusterId"].asString();
+			auto allRelatedIngressRulesNode = valueResultResultItemSecretsSecretsItem["RelatedIngressRules"]["RelatedIngressRulesItem"];
+			for (auto valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItem : allRelatedIngressRulesNode)
+			{
+				ResultItem::SecretsItem::RelatedIngressRulesItem relatedIngressRulesObject;
+				if(!valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItem["Name"].isNull())
+					relatedIngressRulesObject.name = valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItem["Name"].asString();
+				if(!valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItem["Namespace"].isNull())
+					relatedIngressRulesObject._namespace = valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItem["Namespace"].asString();
+				auto allRelatedApps1Node = valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItem["RelatedApps"]["RelatedAppsItem"];
+				for (auto valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItemRelatedAppsRelatedAppsItem : allRelatedApps1Node)
+				{
+					ResultItem::SecretsItem::RelatedIngressRulesItem::RelatedAppsItem relatedApps1Object;
+					if(!valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItemRelatedAppsRelatedAppsItem["AppName"].isNull())
+						relatedApps1Object.appName = valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItemRelatedAppsRelatedAppsItem["AppName"].asString();
+					if(!valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItemRelatedAppsRelatedAppsItem["AppId"].isNull())
+						relatedApps1Object.appId = valueResultResultItemSecretsSecretsItemRelatedIngressRulesRelatedIngressRulesItemRelatedAppsRelatedAppsItem["AppId"].asString();
+					relatedIngressRulesObject.relatedApps1.push_back(relatedApps1Object);
+				}
+				secretsObject.relatedIngressRules.push_back(relatedIngressRulesObject);
+			}
 			auto allDataNode = valueResultResultItemSecretsSecretsItem["Data"]["DataItem"];
 			for (auto valueResultResultItemSecretsSecretsItemDataDataItem : allDataNode)
 			{
@@ -78,13 +100,25 @@ void ListK8sSecretsResult::parse(const std::string &payload)
 			auto allRelatedAppsNode = valueResultResultItemSecretsSecretsItem["RelatedApps"]["RelatedAppsItem"];
 			for (auto valueResultResultItemSecretsSecretsItemRelatedAppsRelatedAppsItem : allRelatedAppsNode)
 			{
-				ResultItem::SecretsItem::RelatedAppsItem relatedAppsObject;
+				ResultItem::SecretsItem::RelatedAppsItem2 relatedAppsObject;
 				if(!valueResultResultItemSecretsSecretsItemRelatedAppsRelatedAppsItem["AppName"].isNull())
 					relatedAppsObject.appName = valueResultResultItemSecretsSecretsItemRelatedAppsRelatedAppsItem["AppName"].asString();
 				if(!valueResultResultItemSecretsSecretsItemRelatedAppsRelatedAppsItem["AppId"].isNull())
 					relatedAppsObject.appId = valueResultResultItemSecretsSecretsItemRelatedAppsRelatedAppsItem["AppId"].asString();
 				secretsObject.relatedApps.push_back(relatedAppsObject);
 			}
+			auto certDetailNode = value["CertDetail"];
+			if(!certDetailNode["EndTime"].isNull())
+				secretsObject.certDetail.endTime = certDetailNode["EndTime"].asString();
+			if(!certDetailNode["Status"].isNull())
+				secretsObject.certDetail.status = certDetailNode["Status"].asString();
+			if(!certDetailNode["StartTime"].isNull())
+				secretsObject.certDetail.startTime = certDetailNode["StartTime"].asString();
+			if(!certDetailNode["Issuer"].isNull())
+				secretsObject.certDetail.issuer = certDetailNode["Issuer"].asString();
+				auto allDomainNames = certDetailNode["DomainNames"]["DomainNames"];
+				for (auto value : allDomainNames)
+					secretsObject.certDetail.domainNames.push_back(value.asString());
 			resultObject.secrets.push_back(secretsObject);
 		}
 		result_.push_back(resultObject);

+ 11 - 0
edas/src/model/UpdateK8sSecretRequest.cc

@@ -28,6 +28,17 @@ UpdateK8sSecretRequest::UpdateK8sSecretRequest() :
 UpdateK8sSecretRequest::~UpdateK8sSecretRequest()
 {}
 
+bool UpdateK8sSecretRequest::getBase64Encoded()const
+{
+	return base64Encoded_;
+}
+
+void UpdateK8sSecretRequest::setBase64Encoded(bool base64Encoded)
+{
+	base64Encoded_ = base64Encoded;
+	setBodyParameter("Base64Encoded", base64Encoded ? "true" : "false");
+}
+
 std::string UpdateK8sSecretRequest::getData()const
 {
 	return data_;