Kaynağa Gözat

Supported AAA for BBB.

sdk-team 6 yıl önce
ebeveyn
işleme
0e02d3bc63
23 değiştirilmiş dosya ile 1037 ekleme ve 1 silme
  1. 4 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 12 0
      retailcloud/CMakeLists.txt
  4. 24 0
      retailcloud/include/alibabacloud/retailcloud/RetailcloudClient.h
  5. 3 0
      retailcloud/include/alibabacloud/retailcloud/model/CreateDeployConfigRequest.h
  6. 54 0
      retailcloud/include/alibabacloud/retailcloud/model/DescribeJobLogRequest.h
  7. 74 0
      retailcloud/include/alibabacloud/retailcloud/model/DescribeJobLogResult.h
  8. 1 0
      retailcloud/include/alibabacloud/retailcloud/model/ListDeployConfigResult.h
  9. 60 0
      retailcloud/include/alibabacloud/retailcloud/model/ListJobHistoriesRequest.h
  10. 75 0
      retailcloud/include/alibabacloud/retailcloud/model/ListJobHistoriesResult.h
  11. 54 0
      retailcloud/include/alibabacloud/retailcloud/model/RebuildAppInstanceRequest.h
  12. 59 0
      retailcloud/include/alibabacloud/retailcloud/model/RebuildAppInstanceResult.h
  13. 3 0
      retailcloud/include/alibabacloud/retailcloud/model/UpdateDeployConfigRequest.h
  14. 108 0
      retailcloud/src/RetailcloudClient.cc
  15. 11 0
      retailcloud/src/model/CreateDeployConfigRequest.cc
  16. 62 0
      retailcloud/src/model/DescribeJobLogRequest.cc
  17. 94 0
      retailcloud/src/model/DescribeJobLogResult.cc
  18. 2 0
      retailcloud/src/model/ListDeployConfigResult.cc
  19. 84 0
      retailcloud/src/model/ListJobHistoriesRequest.cc
  20. 113 0
      retailcloud/src/model/ListJobHistoriesResult.cc
  21. 62 0
      retailcloud/src/model/RebuildAppInstanceRequest.cc
  22. 66 0
      retailcloud/src/model/RebuildAppInstanceResult.cc
  23. 11 0
      retailcloud/src/model/UpdateDeployConfigRequest.cc

+ 4 - 0
CHANGELOG

@@ -1,3 +1,7 @@
+2020-07-23 Version: 1.36.533
+- Supported AAA for BBB.
+- Fixed bugs for CCC.
+
 2020-07-23 Version: 1.36.532
 - Add AddSecretBlacklist and DeleteSecretBlacklist.
 - Suppoort ASR.

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.532
+1.36.533

+ 12 - 0
retailcloud/CMakeLists.txt

@@ -89,6 +89,8 @@ set(retailcloud_public_header_model
 	include/alibabacloud/retailcloud/model/DescribeDatabasesResult.h
 	include/alibabacloud/retailcloud/model/DescribeDeployOrderDetailRequest.h
 	include/alibabacloud/retailcloud/model/DescribeDeployOrderDetailResult.h
+	include/alibabacloud/retailcloud/model/DescribeJobLogRequest.h
+	include/alibabacloud/retailcloud/model/DescribeJobLogResult.h
 	include/alibabacloud/retailcloud/model/DescribePodEventsRequest.h
 	include/alibabacloud/retailcloud/model/DescribePodEventsResult.h
 	include/alibabacloud/retailcloud/model/DescribePodLogRequest.h
@@ -125,6 +127,8 @@ set(retailcloud_public_header_model
 	include/alibabacloud/retailcloud/model/ListDeployConfigResult.h
 	include/alibabacloud/retailcloud/model/ListDeployOrdersRequest.h
 	include/alibabacloud/retailcloud/model/ListDeployOrdersResult.h
+	include/alibabacloud/retailcloud/model/ListJobHistoriesRequest.h
+	include/alibabacloud/retailcloud/model/ListJobHistoriesResult.h
 	include/alibabacloud/retailcloud/model/ListNodeLabelBindingsRequest.h
 	include/alibabacloud/retailcloud/model/ListNodeLabelBindingsResult.h
 	include/alibabacloud/retailcloud/model/ListNodeLabelsRequest.h
@@ -147,6 +151,8 @@ set(retailcloud_public_header_model
 	include/alibabacloud/retailcloud/model/ModifySlbAPResult.h
 	include/alibabacloud/retailcloud/model/QueryClusterDetailRequest.h
 	include/alibabacloud/retailcloud/model/QueryClusterDetailResult.h
+	include/alibabacloud/retailcloud/model/RebuildAppInstanceRequest.h
+	include/alibabacloud/retailcloud/model/RebuildAppInstanceResult.h
 	include/alibabacloud/retailcloud/model/RemoveClusterNodeRequest.h
 	include/alibabacloud/retailcloud/model/RemoveClusterNodeResult.h
 	include/alibabacloud/retailcloud/model/ResetAccountPasswordRequest.h
@@ -238,6 +244,8 @@ set(retailcloud_src
 	src/model/DescribeDatabasesResult.cc
 	src/model/DescribeDeployOrderDetailRequest.cc
 	src/model/DescribeDeployOrderDetailResult.cc
+	src/model/DescribeJobLogRequest.cc
+	src/model/DescribeJobLogResult.cc
 	src/model/DescribePodEventsRequest.cc
 	src/model/DescribePodEventsResult.cc
 	src/model/DescribePodLogRequest.cc
@@ -274,6 +282,8 @@ set(retailcloud_src
 	src/model/ListDeployConfigResult.cc
 	src/model/ListDeployOrdersRequest.cc
 	src/model/ListDeployOrdersResult.cc
+	src/model/ListJobHistoriesRequest.cc
+	src/model/ListJobHistoriesResult.cc
 	src/model/ListNodeLabelBindingsRequest.cc
 	src/model/ListNodeLabelBindingsResult.cc
 	src/model/ListNodeLabelsRequest.cc
@@ -296,6 +306,8 @@ set(retailcloud_src
 	src/model/ModifySlbAPResult.cc
 	src/model/QueryClusterDetailRequest.cc
 	src/model/QueryClusterDetailResult.cc
+	src/model/RebuildAppInstanceRequest.cc
+	src/model/RebuildAppInstanceResult.cc
 	src/model/RemoveClusterNodeRequest.cc
 	src/model/RemoveClusterNodeResult.cc
 	src/model/ResetAccountPasswordRequest.cc

+ 24 - 0
retailcloud/include/alibabacloud/retailcloud/RetailcloudClient.h

@@ -90,6 +90,8 @@
 #include "model/DescribeDatabasesResult.h"
 #include "model/DescribeDeployOrderDetailRequest.h"
 #include "model/DescribeDeployOrderDetailResult.h"
+#include "model/DescribeJobLogRequest.h"
+#include "model/DescribeJobLogResult.h"
 #include "model/DescribePodEventsRequest.h"
 #include "model/DescribePodEventsResult.h"
 #include "model/DescribePodLogRequest.h"
@@ -126,6 +128,8 @@
 #include "model/ListDeployConfigResult.h"
 #include "model/ListDeployOrdersRequest.h"
 #include "model/ListDeployOrdersResult.h"
+#include "model/ListJobHistoriesRequest.h"
+#include "model/ListJobHistoriesResult.h"
 #include "model/ListNodeLabelBindingsRequest.h"
 #include "model/ListNodeLabelBindingsResult.h"
 #include "model/ListNodeLabelsRequest.h"
@@ -148,6 +152,8 @@
 #include "model/ModifySlbAPResult.h"
 #include "model/QueryClusterDetailRequest.h"
 #include "model/QueryClusterDetailResult.h"
+#include "model/RebuildAppInstanceRequest.h"
+#include "model/RebuildAppInstanceResult.h"
 #include "model/RemoveClusterNodeRequest.h"
 #include "model/RemoveClusterNodeResult.h"
 #include "model/ResetAccountPasswordRequest.h"
@@ -279,6 +285,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeDeployOrderDetailResult> DescribeDeployOrderDetailOutcome;
 			typedef std::future<DescribeDeployOrderDetailOutcome> DescribeDeployOrderDetailOutcomeCallable;
 			typedef std::function<void(const RetailcloudClient*, const Model::DescribeDeployOrderDetailRequest&, const DescribeDeployOrderDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDeployOrderDetailAsyncHandler;
+			typedef Outcome<Error, Model::DescribeJobLogResult> DescribeJobLogOutcome;
+			typedef std::future<DescribeJobLogOutcome> DescribeJobLogOutcomeCallable;
+			typedef std::function<void(const RetailcloudClient*, const Model::DescribeJobLogRequest&, const DescribeJobLogOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeJobLogAsyncHandler;
 			typedef Outcome<Error, Model::DescribePodEventsResult> DescribePodEventsOutcome;
 			typedef std::future<DescribePodEventsOutcome> DescribePodEventsOutcomeCallable;
 			typedef std::function<void(const RetailcloudClient*, const Model::DescribePodEventsRequest&, const DescribePodEventsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribePodEventsAsyncHandler;
@@ -333,6 +342,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListDeployOrdersResult> ListDeployOrdersOutcome;
 			typedef std::future<ListDeployOrdersOutcome> ListDeployOrdersOutcomeCallable;
 			typedef std::function<void(const RetailcloudClient*, const Model::ListDeployOrdersRequest&, const ListDeployOrdersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListDeployOrdersAsyncHandler;
+			typedef Outcome<Error, Model::ListJobHistoriesResult> ListJobHistoriesOutcome;
+			typedef std::future<ListJobHistoriesOutcome> ListJobHistoriesOutcomeCallable;
+			typedef std::function<void(const RetailcloudClient*, const Model::ListJobHistoriesRequest&, const ListJobHistoriesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListJobHistoriesAsyncHandler;
 			typedef Outcome<Error, Model::ListNodeLabelBindingsResult> ListNodeLabelBindingsOutcome;
 			typedef std::future<ListNodeLabelBindingsOutcome> ListNodeLabelBindingsOutcomeCallable;
 			typedef std::function<void(const RetailcloudClient*, const Model::ListNodeLabelBindingsRequest&, const ListNodeLabelBindingsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListNodeLabelBindingsAsyncHandler;
@@ -366,6 +378,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::QueryClusterDetailResult> QueryClusterDetailOutcome;
 			typedef std::future<QueryClusterDetailOutcome> QueryClusterDetailOutcomeCallable;
 			typedef std::function<void(const RetailcloudClient*, const Model::QueryClusterDetailRequest&, const QueryClusterDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryClusterDetailAsyncHandler;
+			typedef Outcome<Error, Model::RebuildAppInstanceResult> RebuildAppInstanceOutcome;
+			typedef std::future<RebuildAppInstanceOutcome> RebuildAppInstanceOutcomeCallable;
+			typedef std::function<void(const RetailcloudClient*, const Model::RebuildAppInstanceRequest&, const RebuildAppInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RebuildAppInstanceAsyncHandler;
 			typedef Outcome<Error, Model::RemoveClusterNodeResult> RemoveClusterNodeOutcome;
 			typedef std::future<RemoveClusterNodeOutcome> RemoveClusterNodeOutcomeCallable;
 			typedef std::function<void(const RetailcloudClient*, const Model::RemoveClusterNodeRequest&, const RemoveClusterNodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RemoveClusterNodeAsyncHandler;
@@ -503,6 +518,9 @@ namespace AlibabaCloud
 			DescribeDeployOrderDetailOutcome describeDeployOrderDetail(const Model::DescribeDeployOrderDetailRequest &request)const;
 			void describeDeployOrderDetailAsync(const Model::DescribeDeployOrderDetailRequest& request, const DescribeDeployOrderDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeDeployOrderDetailOutcomeCallable describeDeployOrderDetailCallable(const Model::DescribeDeployOrderDetailRequest& request) const;
+			DescribeJobLogOutcome describeJobLog(const Model::DescribeJobLogRequest &request)const;
+			void describeJobLogAsync(const Model::DescribeJobLogRequest& request, const DescribeJobLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeJobLogOutcomeCallable describeJobLogCallable(const Model::DescribeJobLogRequest& request) const;
 			DescribePodEventsOutcome describePodEvents(const Model::DescribePodEventsRequest &request)const;
 			void describePodEventsAsync(const Model::DescribePodEventsRequest& request, const DescribePodEventsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribePodEventsOutcomeCallable describePodEventsCallable(const Model::DescribePodEventsRequest& request) const;
@@ -557,6 +575,9 @@ namespace AlibabaCloud
 			ListDeployOrdersOutcome listDeployOrders(const Model::ListDeployOrdersRequest &request)const;
 			void listDeployOrdersAsync(const Model::ListDeployOrdersRequest& request, const ListDeployOrdersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListDeployOrdersOutcomeCallable listDeployOrdersCallable(const Model::ListDeployOrdersRequest& request) const;
+			ListJobHistoriesOutcome listJobHistories(const Model::ListJobHistoriesRequest &request)const;
+			void listJobHistoriesAsync(const Model::ListJobHistoriesRequest& request, const ListJobHistoriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListJobHistoriesOutcomeCallable listJobHistoriesCallable(const Model::ListJobHistoriesRequest& request) const;
 			ListNodeLabelBindingsOutcome listNodeLabelBindings(const Model::ListNodeLabelBindingsRequest &request)const;
 			void listNodeLabelBindingsAsync(const Model::ListNodeLabelBindingsRequest& request, const ListNodeLabelBindingsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListNodeLabelBindingsOutcomeCallable listNodeLabelBindingsCallable(const Model::ListNodeLabelBindingsRequest& request) const;
@@ -590,6 +611,9 @@ namespace AlibabaCloud
 			QueryClusterDetailOutcome queryClusterDetail(const Model::QueryClusterDetailRequest &request)const;
 			void queryClusterDetailAsync(const Model::QueryClusterDetailRequest& request, const QueryClusterDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			QueryClusterDetailOutcomeCallable queryClusterDetailCallable(const Model::QueryClusterDetailRequest& request) const;
+			RebuildAppInstanceOutcome rebuildAppInstance(const Model::RebuildAppInstanceRequest &request)const;
+			void rebuildAppInstanceAsync(const Model::RebuildAppInstanceRequest& request, const RebuildAppInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RebuildAppInstanceOutcomeCallable rebuildAppInstanceCallable(const Model::RebuildAppInstanceRequest& request) const;
 			RemoveClusterNodeOutcome removeClusterNode(const Model::RemoveClusterNodeRequest &request)const;
 			void removeClusterNodeAsync(const Model::RemoveClusterNodeRequest& request, const RemoveClusterNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RemoveClusterNodeOutcomeCallable removeClusterNodeCallable(const Model::RemoveClusterNodeRequest& request) const;

+ 3 - 0
retailcloud/include/alibabacloud/retailcloud/model/CreateDeployConfigRequest.h

@@ -51,6 +51,8 @@ namespace AlibabaCloud
 				void setName(const std::string& name);
 				std::vector<std::string> getSecretList()const;
 				void setSecretList(const std::vector<std::string>& secretList);
+				std::string getCronJob()const;
+				void setCronJob(const std::string& cronJob);
 				std::string getDeployment()const;
 				void setDeployment(const std::string& deployment);
 
@@ -63,6 +65,7 @@ namespace AlibabaCloud
 				std::string envType_;
 				std::string name_;
 				std::vector<std::string> secretList_;
+				std::string cronJob_;
 				std::string deployment_;
 
 			};

+ 54 - 0
retailcloud/include/alibabacloud/retailcloud/model/DescribeJobLogRequest.h

@@ -0,0 +1,54 @@
+/*
+ * 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_RETAILCLOUD_MODEL_DESCRIBEJOBLOGREQUEST_H_
+#define ALIBABACLOUD_RETAILCLOUD_MODEL_DESCRIBEJOBLOGREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/retailcloud/RetailcloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Retailcloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RETAILCLOUD_EXPORT DescribeJobLogRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeJobLogRequest();
+				~DescribeJobLogRequest();
+
+				long getAppId()const;
+				void setAppId(long appId);
+				std::string getPodName()const;
+				void setPodName(const std::string& podName);
+				long getEnvId()const;
+				void setEnvId(long envId);
+
+            private:
+				long appId_;
+				std::string podName_;
+				long envId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RETAILCLOUD_MODEL_DESCRIBEJOBLOGREQUEST_H_

+ 74 - 0
retailcloud/include/alibabacloud/retailcloud/model/DescribeJobLogResult.h

@@ -0,0 +1,74 @@
+/*
+ * 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_RETAILCLOUD_MODEL_DESCRIBEJOBLOGRESULT_H_
+#define ALIBABACLOUD_RETAILCLOUD_MODEL_DESCRIBEJOBLOGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/retailcloud/RetailcloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Retailcloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RETAILCLOUD_EXPORT DescribeJobLogResult : public ServiceResult
+			{
+			public:
+				struct Result
+				{
+					struct Event
+					{
+						std::string action;
+						std::string type;
+						std::string lastTimestamp;
+						std::string eventTime;
+						int count;
+						std::string firstTimestamp;
+						std::string mesage;
+						std::string reason;
+					};
+					std::string podName;
+					long appId;
+					std::vector<Event> events;
+					std::string jobLog;
+					long envId;
+				};
+
+
+				DescribeJobLogResult();
+				explicit DescribeJobLogResult(const std::string &payload);
+				~DescribeJobLogResult();
+				std::string getErrMsg()const;
+				int getCode()const;
+				Result getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string errMsg_;
+				int code_;
+				Result result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RETAILCLOUD_MODEL_DESCRIBEJOBLOGRESULT_H_

+ 1 - 0
retailcloud/include/alibabacloud/retailcloud/model/ListDeployConfigResult.h

@@ -43,6 +43,7 @@ namespace AlibabaCloud
 						std::vector<std::string> configMapList;
 						std::string configMap;
 						std::vector<std::string> secretList;
+						std::string cronJob;
 						std::string deployment;
 						std::string statefulSet;
 					};

+ 60 - 0
retailcloud/include/alibabacloud/retailcloud/model/ListJobHistoriesRequest.h

@@ -0,0 +1,60 @@
+/*
+ * 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_RETAILCLOUD_MODEL_LISTJOBHISTORIESREQUEST_H_
+#define ALIBABACLOUD_RETAILCLOUD_MODEL_LISTJOBHISTORIESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/retailcloud/RetailcloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Retailcloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RETAILCLOUD_EXPORT ListJobHistoriesRequest : public RpcServiceRequest
+			{
+
+			public:
+				ListJobHistoriesRequest();
+				~ListJobHistoriesRequest();
+
+				long getAppId()const;
+				void setAppId(long appId);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				long getEnvId()const;
+				void setEnvId(long envId);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
+				std::string getStatus()const;
+				void setStatus(const std::string& status);
+
+            private:
+				long appId_;
+				int pageSize_;
+				long envId_;
+				int pageNumber_;
+				std::string status_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RETAILCLOUD_MODEL_LISTJOBHISTORIESREQUEST_H_

+ 75 - 0
retailcloud/include/alibabacloud/retailcloud/model/ListJobHistoriesResult.h

@@ -0,0 +1,75 @@
+/*
+ * 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_RETAILCLOUD_MODEL_LISTJOBHISTORIESRESULT_H_
+#define ALIBABACLOUD_RETAILCLOUD_MODEL_LISTJOBHISTORIESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/retailcloud/RetailcloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Retailcloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RETAILCLOUD_EXPORT ListJobHistoriesResult : public ServiceResult
+			{
+			public:
+				struct JobDetail
+				{
+					int activeDeadlineSeconds;
+					int succeeded;
+					int backoffLimit;
+					std::vector<std::string> podList;
+					std::string message;
+					std::string completionTime;
+					int failed;
+					std::string startTime;
+					int parallelism;
+					std::string name;
+					int completions;
+				};
+
+
+				ListJobHistoriesResult();
+				explicit ListJobHistoriesResult(const std::string &payload);
+				~ListJobHistoriesResult();
+				long getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::string getErrorMsg()const;
+				std::vector<JobDetail> getData()const;
+				int getCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long totalCount_;
+				int pageSize_;
+				int pageNumber_;
+				std::string errorMsg_;
+				std::vector<JobDetail> data_;
+				int code_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RETAILCLOUD_MODEL_LISTJOBHISTORIESRESULT_H_

+ 54 - 0
retailcloud/include/alibabacloud/retailcloud/model/RebuildAppInstanceRequest.h

@@ -0,0 +1,54 @@
+/*
+ * 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_RETAILCLOUD_MODEL_REBUILDAPPINSTANCEREQUEST_H_
+#define ALIBABACLOUD_RETAILCLOUD_MODEL_REBUILDAPPINSTANCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/retailcloud/RetailcloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Retailcloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RETAILCLOUD_EXPORT RebuildAppInstanceRequest : public RpcServiceRequest
+			{
+
+			public:
+				RebuildAppInstanceRequest();
+				~RebuildAppInstanceRequest();
+
+				long getAppId()const;
+				void setAppId(long appId);
+				long getEnvId()const;
+				void setEnvId(long envId);
+				std::string getAppInstanceId()const;
+				void setAppInstanceId(const std::string& appInstanceId);
+
+            private:
+				long appId_;
+				long envId_;
+				std::string appInstanceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RETAILCLOUD_MODEL_REBUILDAPPINSTANCEREQUEST_H_

+ 59 - 0
retailcloud/include/alibabacloud/retailcloud/model/RebuildAppInstanceResult.h

@@ -0,0 +1,59 @@
+/*
+ * 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_RETAILCLOUD_MODEL_REBUILDAPPINSTANCERESULT_H_
+#define ALIBABACLOUD_RETAILCLOUD_MODEL_REBUILDAPPINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/retailcloud/RetailcloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Retailcloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_RETAILCLOUD_EXPORT RebuildAppInstanceResult : public ServiceResult
+			{
+			public:
+				struct Result
+				{
+					bool success;
+				};
+
+
+				RebuildAppInstanceResult();
+				explicit RebuildAppInstanceResult(const std::string &payload);
+				~RebuildAppInstanceResult();
+				std::string getErrMsg()const;
+				int getCode()const;
+				Result getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string errMsg_;
+				int code_;
+				Result result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_RETAILCLOUD_MODEL_REBUILDAPPINSTANCERESULT_H_

+ 3 - 0
retailcloud/include/alibabacloud/retailcloud/model/UpdateDeployConfigRequest.h

@@ -49,6 +49,8 @@ namespace AlibabaCloud
 				void setSecretList(const std::vector<std::string>& secretList);
 				long getId()const;
 				void setId(long id);
+				std::string getCronJob()const;
+				void setCronJob(const std::string& cronJob);
 				std::string getDeployment()const;
 				void setDeployment(const std::string& deployment);
 
@@ -60,6 +62,7 @@ namespace AlibabaCloud
 				long appId_;
 				std::vector<std::string> secretList_;
 				long id_;
+				std::string cronJob_;
 				std::string deployment_;
 
 			};

+ 108 - 0
retailcloud/src/RetailcloudClient.cc

@@ -1275,6 +1275,42 @@ RetailcloudClient::DescribeDeployOrderDetailOutcomeCallable RetailcloudClient::d
 	return task->get_future();
 }
 
+RetailcloudClient::DescribeJobLogOutcome RetailcloudClient::describeJobLog(const DescribeJobLogRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeJobLogOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeJobLogOutcome(DescribeJobLogResult(outcome.result()));
+	else
+		return DescribeJobLogOutcome(outcome.error());
+}
+
+void RetailcloudClient::describeJobLogAsync(const DescribeJobLogRequest& request, const DescribeJobLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeJobLog(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RetailcloudClient::DescribeJobLogOutcomeCallable RetailcloudClient::describeJobLogCallable(const DescribeJobLogRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeJobLogOutcome()>>(
+			[this, request]()
+			{
+			return this->describeJobLog(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 RetailcloudClient::DescribePodEventsOutcome RetailcloudClient::describePodEvents(const DescribePodEventsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1923,6 +1959,42 @@ RetailcloudClient::ListDeployOrdersOutcomeCallable RetailcloudClient::listDeploy
 	return task->get_future();
 }
 
+RetailcloudClient::ListJobHistoriesOutcome RetailcloudClient::listJobHistories(const ListJobHistoriesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListJobHistoriesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListJobHistoriesOutcome(ListJobHistoriesResult(outcome.result()));
+	else
+		return ListJobHistoriesOutcome(outcome.error());
+}
+
+void RetailcloudClient::listJobHistoriesAsync(const ListJobHistoriesRequest& request, const ListJobHistoriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listJobHistories(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RetailcloudClient::ListJobHistoriesOutcomeCallable RetailcloudClient::listJobHistoriesCallable(const ListJobHistoriesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListJobHistoriesOutcome()>>(
+			[this, request]()
+			{
+			return this->listJobHistories(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 RetailcloudClient::ListNodeLabelBindingsOutcome RetailcloudClient::listNodeLabelBindings(const ListNodeLabelBindingsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2319,6 +2391,42 @@ RetailcloudClient::QueryClusterDetailOutcomeCallable RetailcloudClient::queryClu
 	return task->get_future();
 }
 
+RetailcloudClient::RebuildAppInstanceOutcome RetailcloudClient::rebuildAppInstance(const RebuildAppInstanceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return RebuildAppInstanceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RebuildAppInstanceOutcome(RebuildAppInstanceResult(outcome.result()));
+	else
+		return RebuildAppInstanceOutcome(outcome.error());
+}
+
+void RetailcloudClient::rebuildAppInstanceAsync(const RebuildAppInstanceRequest& request, const RebuildAppInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, rebuildAppInstance(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+RetailcloudClient::RebuildAppInstanceOutcomeCallable RetailcloudClient::rebuildAppInstanceCallable(const RebuildAppInstanceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RebuildAppInstanceOutcome()>>(
+			[this, request]()
+			{
+			return this->rebuildAppInstance(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 RetailcloudClient::RemoveClusterNodeOutcome RetailcloudClient::removeClusterNode(const RemoveClusterNodeRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 11 - 0
retailcloud/src/model/CreateDeployConfigRequest.cc

@@ -119,6 +119,17 @@ void CreateDeployConfigRequest::setSecretList(const std::vector<std::string>& se
 	}
 }
 
+std::string CreateDeployConfigRequest::getCronJob()const
+{
+	return cronJob_;
+}
+
+void CreateDeployConfigRequest::setCronJob(const std::string& cronJob)
+{
+	cronJob_ = cronJob;
+	setParameter("CronJob", cronJob);
+}
+
 std::string CreateDeployConfigRequest::getDeployment()const
 {
 	return deployment_;

+ 62 - 0
retailcloud/src/model/DescribeJobLogRequest.cc

@@ -0,0 +1,62 @@
+/*
+ * 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/retailcloud/model/DescribeJobLogRequest.h>
+
+using AlibabaCloud::Retailcloud::Model::DescribeJobLogRequest;
+
+DescribeJobLogRequest::DescribeJobLogRequest() :
+	RpcServiceRequest("retailcloud", "2018-03-13", "DescribeJobLog")
+{
+	setMethod(HttpRequest::Method::Get);
+}
+
+DescribeJobLogRequest::~DescribeJobLogRequest()
+{}
+
+long DescribeJobLogRequest::getAppId()const
+{
+	return appId_;
+}
+
+void DescribeJobLogRequest::setAppId(long appId)
+{
+	appId_ = appId;
+	setParameter("AppId", std::to_string(appId));
+}
+
+std::string DescribeJobLogRequest::getPodName()const
+{
+	return podName_;
+}
+
+void DescribeJobLogRequest::setPodName(const std::string& podName)
+{
+	podName_ = podName;
+	setParameter("PodName", podName);
+}
+
+long DescribeJobLogRequest::getEnvId()const
+{
+	return envId_;
+}
+
+void DescribeJobLogRequest::setEnvId(long envId)
+{
+	envId_ = envId;
+	setParameter("EnvId", std::to_string(envId));
+}
+

+ 94 - 0
retailcloud/src/model/DescribeJobLogResult.cc

@@ -0,0 +1,94 @@
+/*
+ * 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/retailcloud/model/DescribeJobLogResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Retailcloud;
+using namespace AlibabaCloud::Retailcloud::Model;
+
+DescribeJobLogResult::DescribeJobLogResult() :
+	ServiceResult()
+{}
+
+DescribeJobLogResult::DescribeJobLogResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeJobLogResult::~DescribeJobLogResult()
+{}
+
+void DescribeJobLogResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto resultNode = value["Result"];
+	if(!resultNode["AppId"].isNull())
+		result_.appId = std::stol(resultNode["AppId"].asString());
+	if(!resultNode["EnvId"].isNull())
+		result_.envId = std::stol(resultNode["EnvId"].asString());
+	if(!resultNode["PodName"].isNull())
+		result_.podName = resultNode["PodName"].asString();
+	if(!resultNode["JobLog"].isNull())
+		result_.jobLog = resultNode["JobLog"].asString();
+	auto allEventsNode = resultNode["Events"]["Event"];
+	for (auto resultNodeEventsEvent : allEventsNode)
+	{
+		Result::Event eventObject;
+		if(!resultNodeEventsEvent["Action"].isNull())
+			eventObject.action = resultNodeEventsEvent["Action"].asString();
+		if(!resultNodeEventsEvent["Count"].isNull())
+			eventObject.count = std::stoi(resultNodeEventsEvent["Count"].asString());
+		if(!resultNodeEventsEvent["EventTime"].isNull())
+			eventObject.eventTime = resultNodeEventsEvent["EventTime"].asString();
+		if(!resultNodeEventsEvent["FirstTimestamp"].isNull())
+			eventObject.firstTimestamp = resultNodeEventsEvent["FirstTimestamp"].asString();
+		if(!resultNodeEventsEvent["LastTimestamp"].isNull())
+			eventObject.lastTimestamp = resultNodeEventsEvent["LastTimestamp"].asString();
+		if(!resultNodeEventsEvent["Mesage"].isNull())
+			eventObject.mesage = resultNodeEventsEvent["Mesage"].asString();
+		if(!resultNodeEventsEvent["Reason"].isNull())
+			eventObject.reason = resultNodeEventsEvent["Reason"].asString();
+		if(!resultNodeEventsEvent["Type"].isNull())
+			eventObject.type = resultNodeEventsEvent["Type"].asString();
+		result_.events.push_back(eventObject);
+	}
+	if(!value["Code"].isNull())
+		code_ = std::stoi(value["Code"].asString());
+	if(!value["ErrMsg"].isNull())
+		errMsg_ = value["ErrMsg"].asString();
+
+}
+
+std::string DescribeJobLogResult::getErrMsg()const
+{
+	return errMsg_;
+}
+
+int DescribeJobLogResult::getCode()const
+{
+	return code_;
+}
+
+DescribeJobLogResult::Result DescribeJobLogResult::getResult()const
+{
+	return result_;
+}
+

+ 2 - 0
retailcloud/src/model/ListDeployConfigResult.cc

@@ -61,6 +61,8 @@ void ListDeployConfigResult::parse(const std::string &payload)
 			dataObject.containerYamlConf.configMap = containerYamlConfNode["ConfigMap"].asString();
 		if(!containerYamlConfNode["StatefulSet"].isNull())
 			dataObject.containerYamlConf.statefulSet = containerYamlConfNode["StatefulSet"].asString();
+		if(!containerYamlConfNode["CronJob"].isNull())
+			dataObject.containerYamlConf.cronJob = containerYamlConfNode["CronJob"].asString();
 			auto allConfigMapList = containerYamlConfNode["ConfigMapList"]["ConfigMapList"];
 			for (auto value : allConfigMapList)
 				dataObject.containerYamlConf.configMapList.push_back(value.asString());

+ 84 - 0
retailcloud/src/model/ListJobHistoriesRequest.cc

@@ -0,0 +1,84 @@
+/*
+ * 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/retailcloud/model/ListJobHistoriesRequest.h>
+
+using AlibabaCloud::Retailcloud::Model::ListJobHistoriesRequest;
+
+ListJobHistoriesRequest::ListJobHistoriesRequest() :
+	RpcServiceRequest("retailcloud", "2018-03-13", "ListJobHistories")
+{
+	setMethod(HttpRequest::Method::Get);
+}
+
+ListJobHistoriesRequest::~ListJobHistoriesRequest()
+{}
+
+long ListJobHistoriesRequest::getAppId()const
+{
+	return appId_;
+}
+
+void ListJobHistoriesRequest::setAppId(long appId)
+{
+	appId_ = appId;
+	setParameter("AppId", std::to_string(appId));
+}
+
+int ListJobHistoriesRequest::getPageSize()const
+{
+	return pageSize_;
+}
+
+void ListJobHistoriesRequest::setPageSize(int pageSize)
+{
+	pageSize_ = pageSize;
+	setParameter("PageSize", std::to_string(pageSize));
+}
+
+long ListJobHistoriesRequest::getEnvId()const
+{
+	return envId_;
+}
+
+void ListJobHistoriesRequest::setEnvId(long envId)
+{
+	envId_ = envId;
+	setParameter("EnvId", std::to_string(envId));
+}
+
+int ListJobHistoriesRequest::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+void ListJobHistoriesRequest::setPageNumber(int pageNumber)
+{
+	pageNumber_ = pageNumber;
+	setParameter("PageNumber", std::to_string(pageNumber));
+}
+
+std::string ListJobHistoriesRequest::getStatus()const
+{
+	return status_;
+}
+
+void ListJobHistoriesRequest::setStatus(const std::string& status)
+{
+	status_ = status;
+	setParameter("Status", status);
+}
+

+ 113 - 0
retailcloud/src/model/ListJobHistoriesResult.cc

@@ -0,0 +1,113 @@
+/*
+ * 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/retailcloud/model/ListJobHistoriesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Retailcloud;
+using namespace AlibabaCloud::Retailcloud::Model;
+
+ListJobHistoriesResult::ListJobHistoriesResult() :
+	ServiceResult()
+{}
+
+ListJobHistoriesResult::ListJobHistoriesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListJobHistoriesResult::~ListJobHistoriesResult()
+{}
+
+void ListJobHistoriesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allDataNode = value["Data"]["JobDetail"];
+	for (auto valueDataJobDetail : allDataNode)
+	{
+		JobDetail dataObject;
+		if(!valueDataJobDetail["Name"].isNull())
+			dataObject.name = valueDataJobDetail["Name"].asString();
+		if(!valueDataJobDetail["CompletionTime"].isNull())
+			dataObject.completionTime = valueDataJobDetail["CompletionTime"].asString();
+		if(!valueDataJobDetail["StartTime"].isNull())
+			dataObject.startTime = valueDataJobDetail["StartTime"].asString();
+		if(!valueDataJobDetail["Succeeded"].isNull())
+			dataObject.succeeded = std::stoi(valueDataJobDetail["Succeeded"].asString());
+		if(!valueDataJobDetail["Failed"].isNull())
+			dataObject.failed = std::stoi(valueDataJobDetail["Failed"].asString());
+		if(!valueDataJobDetail["Message"].isNull())
+			dataObject.message = valueDataJobDetail["Message"].asString();
+		if(!valueDataJobDetail["ActiveDeadlineSeconds"].isNull())
+			dataObject.activeDeadlineSeconds = std::stoi(valueDataJobDetail["ActiveDeadlineSeconds"].asString());
+		if(!valueDataJobDetail["BackoffLimit"].isNull())
+			dataObject.backoffLimit = std::stoi(valueDataJobDetail["BackoffLimit"].asString());
+		if(!valueDataJobDetail["Completions"].isNull())
+			dataObject.completions = std::stoi(valueDataJobDetail["Completions"].asString());
+		if(!valueDataJobDetail["Parallelism"].isNull())
+			dataObject.parallelism = std::stoi(valueDataJobDetail["Parallelism"].asString());
+		auto allPodList = value["PodList"]["PodName"];
+		for (auto value : allPodList)
+			dataObject.podList.push_back(value.asString());
+		data_.push_back(dataObject);
+	}
+	if(!value["Code"].isNull())
+		code_ = std::stoi(value["Code"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stol(value["TotalCount"].asString());
+	if(!value["ErrorMsg"].isNull())
+		errorMsg_ = value["ErrorMsg"].asString();
+
+}
+
+long ListJobHistoriesResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListJobHistoriesResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListJobHistoriesResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+std::string ListJobHistoriesResult::getErrorMsg()const
+{
+	return errorMsg_;
+}
+
+std::vector<ListJobHistoriesResult::JobDetail> ListJobHistoriesResult::getData()const
+{
+	return data_;
+}
+
+int ListJobHistoriesResult::getCode()const
+{
+	return code_;
+}
+

+ 62 - 0
retailcloud/src/model/RebuildAppInstanceRequest.cc

@@ -0,0 +1,62 @@
+/*
+ * 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/retailcloud/model/RebuildAppInstanceRequest.h>
+
+using AlibabaCloud::Retailcloud::Model::RebuildAppInstanceRequest;
+
+RebuildAppInstanceRequest::RebuildAppInstanceRequest() :
+	RpcServiceRequest("retailcloud", "2018-03-13", "RebuildAppInstance")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+RebuildAppInstanceRequest::~RebuildAppInstanceRequest()
+{}
+
+long RebuildAppInstanceRequest::getAppId()const
+{
+	return appId_;
+}
+
+void RebuildAppInstanceRequest::setAppId(long appId)
+{
+	appId_ = appId;
+	setParameter("AppId", std::to_string(appId));
+}
+
+long RebuildAppInstanceRequest::getEnvId()const
+{
+	return envId_;
+}
+
+void RebuildAppInstanceRequest::setEnvId(long envId)
+{
+	envId_ = envId;
+	setParameter("EnvId", std::to_string(envId));
+}
+
+std::string RebuildAppInstanceRequest::getAppInstanceId()const
+{
+	return appInstanceId_;
+}
+
+void RebuildAppInstanceRequest::setAppInstanceId(const std::string& appInstanceId)
+{
+	appInstanceId_ = appInstanceId;
+	setParameter("AppInstanceId", appInstanceId);
+}
+

+ 66 - 0
retailcloud/src/model/RebuildAppInstanceResult.cc

@@ -0,0 +1,66 @@
+/*
+ * 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/retailcloud/model/RebuildAppInstanceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Retailcloud;
+using namespace AlibabaCloud::Retailcloud::Model;
+
+RebuildAppInstanceResult::RebuildAppInstanceResult() :
+	ServiceResult()
+{}
+
+RebuildAppInstanceResult::RebuildAppInstanceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+RebuildAppInstanceResult::~RebuildAppInstanceResult()
+{}
+
+void RebuildAppInstanceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto resultNode = value["Result"];
+	if(!resultNode["Success"].isNull())
+		result_.success = resultNode["Success"].asString() == "true";
+	if(!value["Code"].isNull())
+		code_ = std::stoi(value["Code"].asString());
+	if(!value["ErrMsg"].isNull())
+		errMsg_ = value["ErrMsg"].asString();
+
+}
+
+std::string RebuildAppInstanceResult::getErrMsg()const
+{
+	return errMsg_;
+}
+
+int RebuildAppInstanceResult::getCode()const
+{
+	return code_;
+}
+
+RebuildAppInstanceResult::Result RebuildAppInstanceResult::getResult()const
+{
+	return result_;
+}
+

+ 11 - 0
retailcloud/src/model/UpdateDeployConfigRequest.cc

@@ -108,6 +108,17 @@ void UpdateDeployConfigRequest::setId(long id)
 	setParameter("Id", std::to_string(id));
 }
 
+std::string UpdateDeployConfigRequest::getCronJob()const
+{
+	return cronJob_;
+}
+
+void UpdateDeployConfigRequest::setCronJob(const std::string& cronJob)
+{
+	cronJob_ = cronJob;
+	setParameter("CronJob", cronJob);
+}
+
 std::string UpdateDeployConfigRequest::getDeployment()const
 {
 	return deployment_;