Browse Source

Generated 2018-03-13 for retailcloud.

sdk-team 5 years ago
parent
commit
9306f76fce
33 changed files with 966 additions and 130 deletions
  1. 5 0
      ChangeLog.txt
  2. 108 0
      services/retailcloud/batch_add_servers.go
  3. 25 0
      services/retailcloud/client.go
  4. 17 8
      services/retailcloud/create_app.go
  5. 8 7
      services/retailcloud/create_deploy_config.go
  6. 111 0
      services/retailcloud/create_persistent_volume_claim.go
  7. 108 0
      services/retailcloud/delete_persistent_volume_claim.go
  8. 75 0
      services/retailcloud/endpoint.go
  9. 5 5
      services/retailcloud/list_app.go
  10. 7 7
      services/retailcloud/list_app_instance.go
  11. 7 7
      services/retailcloud/list_persistent_volume.go
  12. 112 0
      services/retailcloud/list_persistent_volume_claim.go
  13. 7 7
      services/retailcloud/list_pods.go
  14. 110 0
      services/retailcloud/list_users.go
  15. 3 2
      services/retailcloud/struct_app_detail.go
  16. 2 2
      services/retailcloud/struct_app_instance_detail.go
  17. 21 0
      services/retailcloud/struct_config_map_list.go
  18. 4 3
      services/retailcloud/struct_container_yaml_conf.go
  19. 1 1
      services/retailcloud/struct_data_in_list_app.go
  20. 1 1
      services/retailcloud/struct_data_in_list_app_instance.go
  21. 1 1
      services/retailcloud/struct_data_in_list_persistent_volume.go
  22. 21 0
      services/retailcloud/struct_data_in_list_persistent_volume_claim.go
  23. 1 1
      services/retailcloud/struct_data_in_list_pods.go
  24. 21 0
      services/retailcloud/struct_data_in_list_users.go
  25. 23 0
      services/retailcloud/struct_list_user_response.go
  26. 27 0
      services/retailcloud/struct_persistent_volume_claim_detail.go
  27. 2 2
      services/retailcloud/struct_persistent_volume_detail.go
  28. 2 2
      services/retailcloud/struct_pod_detail.go
  29. 65 62
      services/retailcloud/struct_result.go
  30. 24 0
      services/retailcloud/struct_user_role.go
  31. 21 0
      services/retailcloud/struct_user_roles.go
  32. 14 6
      services/retailcloud/update_app.go
  33. 7 6
      services/retailcloud/update_deploy_config.go

+ 5 - 0
ChangeLog.txt

@@ -1,3 +1,8 @@
+2020-02-20 Version: v1.60.383
+- Generated 2018-03-13 for `retailcloud`.
+- Add new api ListUsers.
+- Supported userRole setting for api, CreateApp, UpdateApp, DescribeAppDetail.
+
 2020-02-19 Version: v1.60.382
 - Generated 2017-09-12 for `Cbn`.
 - Support terraform.

+ 108 - 0
services/retailcloud/batch_add_servers.go

@@ -0,0 +1,108 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// BatchAddServers invokes the retailcloud.BatchAddServers API synchronously
+// api document: https://help.aliyun.com/api/retailcloud/batchaddservers.html
+func (client *Client) BatchAddServers(request *BatchAddServersRequest) (response *BatchAddServersResponse, err error) {
+	response = CreateBatchAddServersResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// BatchAddServersWithChan invokes the retailcloud.BatchAddServers API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/batchaddservers.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchAddServersWithChan(request *BatchAddServersRequest) (<-chan *BatchAddServersResponse, <-chan error) {
+	responseChan := make(chan *BatchAddServersResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.BatchAddServers(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// BatchAddServersWithCallback invokes the retailcloud.BatchAddServers API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/batchaddservers.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) BatchAddServersWithCallback(request *BatchAddServersRequest, callback func(response *BatchAddServersResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *BatchAddServersResponse
+		var err error
+		defer close(result)
+		response, err = client.BatchAddServers(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// BatchAddServersRequest is the request struct for api BatchAddServers
+type BatchAddServersRequest struct {
+	*requests.RpcRequest
+	InstanceId string `position:"Query" name:"InstanceId"`
+	VpcId      string `position:"Query" name:"VpcId"`
+	Sign       string `position:"Query" name:"Sign"`
+}
+
+// BatchAddServersResponse is the response struct for api BatchAddServers
+type BatchAddServersResponse struct {
+	*responses.BaseResponse
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	Code      int    `json:"Code" xml:"Code"`
+	ErrMsg    string `json:"ErrMsg" xml:"ErrMsg"`
+	Result    Result `json:"Result" xml:"Result"`
+}
+
+// CreateBatchAddServersRequest creates a request to invoke BatchAddServers API
+func CreateBatchAddServersRequest() (request *BatchAddServersRequest) {
+	request = &BatchAddServersRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("retailcloud", "2018-03-13", "BatchAddServers", "retailcloud", "openAPI")
+	return
+}
+
+// CreateBatchAddServersResponse creates a response to parse from BatchAddServers response
+func CreateBatchAddServersResponse() (response *BatchAddServersResponse) {
+	response = &BatchAddServersResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 25 - 0
services/retailcloud/client.go

@@ -16,6 +16,8 @@ package retailcloud
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
 import (
+	"reflect"
+
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth"
 	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider"
@@ -26,10 +28,25 @@ type Client struct {
 	sdk.Client
 }
 
+// SetClientProperty Set Property by Reflect
+func SetClientProperty(client *Client, propertyName string, propertyValue interface{}) {
+	v := reflect.ValueOf(client).Elem()
+	if v.FieldByName(propertyName).IsValid() && v.FieldByName(propertyName).CanSet() {
+		v.FieldByName(propertyName).Set(reflect.ValueOf(propertyValue))
+	}
+}
+
+// SetEndpointDataToClient Set EndpointMap and ENdpointType
+func SetEndpointDataToClient(client *Client) {
+	SetClientProperty(client, "EndpointMap", GetEndpointMap())
+	SetClientProperty(client, "EndpointType", GetEndpointType())
+}
+
 // NewClient creates a sdk client with environment variables
 func NewClient() (client *Client, err error) {
 	client = &Client{}
 	err = client.Init()
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -44,6 +61,7 @@ func NewClientWithProvider(regionId string, providers ...provider.Provider) (cli
 		pc = provider.NewProviderChain(providers)
 	}
 	err = client.InitWithProviderChain(regionId, pc)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -52,6 +70,7 @@ func NewClientWithProvider(regionId string, providers ...provider.Provider) (cli
 func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithOptions(regionId, config, credential)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -60,6 +79,7 @@ func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.C
 func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -68,6 +88,7 @@ func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (clie
 func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -76,6 +97,7 @@ func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToke
 func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -84,6 +106,7 @@ func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, role
 func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRamRoleArnAndPolicy(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName, policy)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -92,6 +115,7 @@ func NewClientWithRamRoleArnAndPolicy(regionId string, accessKeyId, accessKeySec
 func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithEcsRamRole(regionId, roleName)
+	SetEndpointDataToClient(client)
 	return
 }
 
@@ -100,5 +124,6 @@ func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client,
 func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
 	client = &Client{}
 	err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
+	SetEndpointDataToClient(client)
 	return
 }

+ 17 - 8
services/retailcloud/create_app.go

@@ -76,14 +76,23 @@ func (client *Client) CreateAppWithCallback(request *CreateAppRequest, callback
 // CreateAppRequest is the request struct for api CreateApp
 type CreateAppRequest struct {
 	*requests.RpcRequest
-	BizTitle        string           `position:"Body" name:"BizTitle"`
-	StateType       requests.Integer `position:"Body" name:"StateType"`
-	ServiceType     string           `position:"Body" name:"ServiceType"`
-	BizCode         string           `position:"Body" name:"BizCode"`
-	OperatingSystem string           `position:"Body" name:"OperatingSystem"`
-	Description     string           `position:"Body" name:"Description"`
-	Language        string           `position:"Body" name:"Language"`
-	Title           string           `position:"Body" name:"Title"`
+	BizTitle        string                `position:"Body" name:"BizTitle"`
+	StateType       requests.Integer      `position:"Body" name:"StateType"`
+	ServiceType     string                `position:"Body" name:"ServiceType"`
+	UserRoles       *[]CreateAppUserRoles `position:"Body" name:"UserRoles"  type:"Repeated"`
+	BizCode         string                `position:"Body" name:"BizCode"`
+	OperatingSystem string                `position:"Body" name:"OperatingSystem"`
+	Namespace       string                `position:"Body" name:"Namespace"`
+	Description     string                `position:"Body" name:"Description"`
+	Language        string                `position:"Body" name:"Language"`
+	Title           string                `position:"Body" name:"Title"`
+}
+
+// CreateAppUserRoles is a repeated param struct in CreateAppRequest
+type CreateAppUserRoles struct {
+	RoleName string `name:"RoleName"`
+	UserType string `name:"UserType"`
+	UserId   string `name:"UserId"`
 }
 
 // CreateAppResponse is the response struct for api CreateApp

+ 8 - 7
services/retailcloud/create_deploy_config.go

@@ -76,13 +76,14 @@ func (client *Client) CreateDeployConfigWithCallback(request *CreateDeployConfig
 // CreateDeployConfigRequest is the request struct for api CreateDeployConfig
 type CreateDeployConfigRequest struct {
 	*requests.RpcRequest
-	CodePath    string           `position:"Query" name:"CodePath"`
-	AppId       requests.Integer `position:"Query" name:"AppId"`
-	ConfigMap   string           `position:"Query" name:"ConfigMap"`
-	StatefulSet string           `position:"Query" name:"StatefulSet"`
-	EnvType     string           `position:"Query" name:"EnvType"`
-	Name        string           `position:"Query" name:"Name"`
-	Deployment  string           `position:"Query" name:"Deployment"`
+	CodePath      string           `position:"Query" name:"CodePath"`
+	ConfigMapList *[]string        `position:"Query" name:"ConfigMapList"  type:"Repeated"`
+	AppId         requests.Integer `position:"Query" name:"AppId"`
+	ConfigMap     string           `position:"Query" name:"ConfigMap"`
+	StatefulSet   string           `position:"Query" name:"StatefulSet"`
+	EnvType       string           `position:"Query" name:"EnvType"`
+	Name          string           `position:"Query" name:"Name"`
+	Deployment    string           `position:"Query" name:"Deployment"`
 }
 
 // CreateDeployConfigResponse is the response struct for api CreateDeployConfig

+ 111 - 0
services/retailcloud/create_persistent_volume_claim.go

@@ -0,0 +1,111 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// CreatePersistentVolumeClaim invokes the retailcloud.CreatePersistentVolumeClaim API synchronously
+// api document: https://help.aliyun.com/api/retailcloud/createpersistentvolumeclaim.html
+func (client *Client) CreatePersistentVolumeClaim(request *CreatePersistentVolumeClaimRequest) (response *CreatePersistentVolumeClaimResponse, err error) {
+	response = CreateCreatePersistentVolumeClaimResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// CreatePersistentVolumeClaimWithChan invokes the retailcloud.CreatePersistentVolumeClaim API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/createpersistentvolumeclaim.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreatePersistentVolumeClaimWithChan(request *CreatePersistentVolumeClaimRequest) (<-chan *CreatePersistentVolumeClaimResponse, <-chan error) {
+	responseChan := make(chan *CreatePersistentVolumeClaimResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.CreatePersistentVolumeClaim(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// CreatePersistentVolumeClaimWithCallback invokes the retailcloud.CreatePersistentVolumeClaim API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/createpersistentvolumeclaim.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) CreatePersistentVolumeClaimWithCallback(request *CreatePersistentVolumeClaimRequest, callback func(response *CreatePersistentVolumeClaimResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *CreatePersistentVolumeClaimResponse
+		var err error
+		defer close(result)
+		response, err = client.CreatePersistentVolumeClaim(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// CreatePersistentVolumeClaimRequest is the request struct for api CreatePersistentVolumeClaim
+type CreatePersistentVolumeClaimRequest struct {
+	*requests.RpcRequest
+	AccessModes  string           `position:"Query" name:"AccessModes"`
+	AppId        requests.Integer `position:"Query" name:"AppId"`
+	Name         string           `position:"Query" name:"Name"`
+	EnvId        requests.Integer `position:"Query" name:"EnvId"`
+	StorageClass string           `position:"Query" name:"StorageClass"`
+	Capacity     string           `position:"Query" name:"Capacity"`
+}
+
+// CreatePersistentVolumeClaimResponse is the response struct for api CreatePersistentVolumeClaim
+type CreatePersistentVolumeClaimResponse struct {
+	*responses.BaseResponse
+	Code      int    `json:"Code" xml:"Code"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	ErrMsg    string `json:"ErrMsg" xml:"ErrMsg"`
+	Result    Result `json:"Result" xml:"Result"`
+}
+
+// CreateCreatePersistentVolumeClaimRequest creates a request to invoke CreatePersistentVolumeClaim API
+func CreateCreatePersistentVolumeClaimRequest() (request *CreatePersistentVolumeClaimRequest) {
+	request = &CreatePersistentVolumeClaimRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("retailcloud", "2018-03-13", "CreatePersistentVolumeClaim", "retailcloud", "openAPI")
+	return
+}
+
+// CreateCreatePersistentVolumeClaimResponse creates a response to parse from CreatePersistentVolumeClaim response
+func CreateCreatePersistentVolumeClaimResponse() (response *CreatePersistentVolumeClaimResponse) {
+	response = &CreatePersistentVolumeClaimResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 108 - 0
services/retailcloud/delete_persistent_volume_claim.go

@@ -0,0 +1,108 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// DeletePersistentVolumeClaim invokes the retailcloud.DeletePersistentVolumeClaim API synchronously
+// api document: https://help.aliyun.com/api/retailcloud/deletepersistentvolumeclaim.html
+func (client *Client) DeletePersistentVolumeClaim(request *DeletePersistentVolumeClaimRequest) (response *DeletePersistentVolumeClaimResponse, err error) {
+	response = CreateDeletePersistentVolumeClaimResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// DeletePersistentVolumeClaimWithChan invokes the retailcloud.DeletePersistentVolumeClaim API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/deletepersistentvolumeclaim.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeletePersistentVolumeClaimWithChan(request *DeletePersistentVolumeClaimRequest) (<-chan *DeletePersistentVolumeClaimResponse, <-chan error) {
+	responseChan := make(chan *DeletePersistentVolumeClaimResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.DeletePersistentVolumeClaim(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// DeletePersistentVolumeClaimWithCallback invokes the retailcloud.DeletePersistentVolumeClaim API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/deletepersistentvolumeclaim.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) DeletePersistentVolumeClaimWithCallback(request *DeletePersistentVolumeClaimRequest, callback func(response *DeletePersistentVolumeClaimResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *DeletePersistentVolumeClaimResponse
+		var err error
+		defer close(result)
+		response, err = client.DeletePersistentVolumeClaim(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// DeletePersistentVolumeClaimRequest is the request struct for api DeletePersistentVolumeClaim
+type DeletePersistentVolumeClaimRequest struct {
+	*requests.RpcRequest
+	PersistentVolumeClaimName string           `position:"Query" name:"PersistentVolumeClaimName"`
+	AppId                     requests.Integer `position:"Query" name:"AppId"`
+	EnvId                     requests.Integer `position:"Query" name:"EnvId"`
+}
+
+// DeletePersistentVolumeClaimResponse is the response struct for api DeletePersistentVolumeClaim
+type DeletePersistentVolumeClaimResponse struct {
+	*responses.BaseResponse
+	Code      int    `json:"Code" xml:"Code"`
+	RequestId string `json:"RequestId" xml:"RequestId"`
+	ErrMsg    string `json:"ErrMsg" xml:"ErrMsg"`
+	Result    Result `json:"Result" xml:"Result"`
+}
+
+// CreateDeletePersistentVolumeClaimRequest creates a request to invoke DeletePersistentVolumeClaim API
+func CreateDeletePersistentVolumeClaimRequest() (request *DeletePersistentVolumeClaimRequest) {
+	request = &DeletePersistentVolumeClaimRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("retailcloud", "2018-03-13", "DeletePersistentVolumeClaim", "retailcloud", "openAPI")
+	return
+}
+
+// CreateDeletePersistentVolumeClaimResponse creates a response to parse from DeletePersistentVolumeClaim response
+func CreateDeletePersistentVolumeClaimResponse() (response *DeletePersistentVolumeClaimResponse) {
+	response = &DeletePersistentVolumeClaimResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 75 - 0
services/retailcloud/endpoint.go

@@ -0,0 +1,75 @@
+package retailcloud
+
+// EndpointMap Endpoint Data
+var EndpointMap map[string]string
+
+// EndpointType regional or central
+var EndpointType = "regional"
+
+// GetEndpointMap Get Endpoint Data Map
+func GetEndpointMap() map[string]string {
+	if EndpointMap == nil {
+		EndpointMap = map[string]string{
+			"cn-shanghai-internal-test-1": "retailcloud.aliyuncs.com",
+			"cn-shenzhen-su18-b01":        "retailcloud.aliyuncs.com",
+			"cn-beijing":                  "retailcloud.aliyuncs.com",
+			"cn-shanghai-inner":           "retailcloud.aliyuncs.com",
+			"cn-hangzhou-internal-prod-1": "retailcloud.aliyuncs.com",
+			"cn-north-2-gov-1":            "retailcloud.aliyuncs.com",
+			"cn-yushanfang":               "retailcloud.aliyuncs.com",
+			"cn-qingdao-nebula":           "retailcloud.aliyuncs.com",
+			"cn-beijing-finance-pop":      "retailcloud.aliyuncs.com",
+			"cn-wuhan":                    "retailcloud.aliyuncs.com",
+			"cn-zhangjiakou":              "retailcloud.aliyuncs.com",
+			"us-west-1":                   "retailcloud.aliyuncs.com",
+			"rus-west-1-pop":              "retailcloud.aliyuncs.com",
+			"cn-shanghai-et15-b01":        "retailcloud.aliyuncs.com",
+			"cn-hangzhou-bj-b01":          "retailcloud.aliyuncs.com",
+			"cn-zhangbei-na61-b01":        "retailcloud.aliyuncs.com",
+			"ap-northeast-1":              "retailcloud.aliyuncs.com",
+			"cn-shanghai-et2-b01":         "retailcloud.aliyuncs.com",
+			"ap-southeast-1":              "retailcloud.aliyuncs.com",
+			"ap-southeast-2":              "retailcloud.aliyuncs.com",
+			"ap-southeast-3":              "retailcloud.aliyuncs.com",
+			"ap-southeast-5":              "retailcloud.aliyuncs.com",
+			"us-east-1":                   "retailcloud.aliyuncs.com",
+			"cn-shenzhen-inner":           "retailcloud.aliyuncs.com",
+			"cn-zhangjiakou-na62-a01":     "retailcloud.aliyuncs.com",
+			"cn-beijing-gov-1":            "retailcloud.aliyuncs.com",
+			"ap-south-1":                  "retailcloud.aliyuncs.com",
+			"cn-shenzhen-st4-d01":         "retailcloud.aliyuncs.com",
+			"cn-haidian-cm12-c01":         "retailcloud.aliyuncs.com",
+			"cn-qingdao":                  "retailcloud.aliyuncs.com",
+			"cn-hongkong-finance-pop":     "retailcloud.aliyuncs.com",
+			"cn-shanghai":                 "retailcloud.aliyuncs.com",
+			"cn-shanghai-finance-1":       "retailcloud.aliyuncs.com",
+			"cn-hongkong":                 "retailcloud.aliyuncs.com",
+			"eu-central-1":                "retailcloud.aliyuncs.com",
+			"cn-shenzhen":                 "retailcloud.aliyuncs.com",
+			"cn-zhengzhou-nebula-1":       "retailcloud.aliyuncs.com",
+			"eu-west-1":                   "retailcloud.aliyuncs.com",
+			"cn-hangzhou-internal-test-1": "retailcloud.aliyuncs.com",
+			"eu-west-1-oxs":               "retailcloud.aliyuncs.com",
+			"cn-beijing-finance-1":        "retailcloud.aliyuncs.com",
+			"cn-hangzhou-internal-test-3": "retailcloud.aliyuncs.com",
+			"cn-hangzhou-internal-test-2": "retailcloud.aliyuncs.com",
+			"cn-shenzhen-finance-1":       "retailcloud.aliyuncs.com",
+			"me-east-1":                   "retailcloud.aliyuncs.com",
+			"cn-chengdu":                  "retailcloud.aliyuncs.com",
+			"cn-hangzhou-test-306":        "retailcloud.aliyuncs.com",
+			"cn-hangzhou-finance":         "retailcloud.aliyuncs.com",
+			"cn-beijing-nu16-b01":         "retailcloud.aliyuncs.com",
+			"cn-edge-1":                   "retailcloud.aliyuncs.com",
+			"cn-huhehaote":                "retailcloud.aliyuncs.com",
+			"cn-fujian":                   "retailcloud.aliyuncs.com",
+			"ap-northeast-2-pop":          "retailcloud.aliyuncs.com",
+			"cn-hangzhou":                 "retailcloud.aliyuncs.com",
+		}
+	}
+	return EndpointMap
+}
+
+// GetEndpointType Get Endpoint Type Value
+func GetEndpointType() string {
+	return EndpointType
+}

+ 5 - 5
services/retailcloud/list_app.go

@@ -83,11 +83,11 @@ type ListAppRequest struct {
 // ListAppResponse is the response struct for api ListApp
 type ListAppResponse struct {
 	*responses.BaseResponse
-	RequestId  string    `json:"RequestId" xml:"RequestId"`
-	Code       int       `json:"Code" xml:"Code"`
-	ErrorMsg   string    `json:"ErrorMsg" xml:"ErrorMsg"`
-	TotalCount int       `json:"TotalCount" xml:"TotalCount"`
-	Data       []ListApp `json:"Data" xml:"Data"`
+	RequestId  string      `json:"RequestId" xml:"RequestId"`
+	Code       int         `json:"Code" xml:"Code"`
+	ErrorMsg   string      `json:"ErrorMsg" xml:"ErrorMsg"`
+	TotalCount int         `json:"TotalCount" xml:"TotalCount"`
+	Data       []AppDetail `json:"Data" xml:"Data"`
 }
 
 // CreateListAppRequest creates a request to invoke ListApp API

+ 7 - 7
services/retailcloud/list_app_instance.go

@@ -85,13 +85,13 @@ type ListAppInstanceRequest struct {
 // ListAppInstanceResponse is the response struct for api ListAppInstance
 type ListAppInstanceResponse struct {
 	*responses.BaseResponse
-	RequestId  string            `json:"RequestId" xml:"RequestId"`
-	Code       int               `json:"Code" xml:"Code"`
-	PageSize   int               `json:"PageSize" xml:"PageSize"`
-	PageNumber int               `json:"PageNumber" xml:"PageNumber"`
-	TotalCount int64             `json:"TotalCount" xml:"TotalCount"`
-	ErrMsg     string            `json:"ErrMsg" xml:"ErrMsg"`
-	Data       []ListAppInstance `json:"Data" xml:"Data"`
+	RequestId  string              `json:"RequestId" xml:"RequestId"`
+	Code       int                 `json:"Code" xml:"Code"`
+	PageSize   int                 `json:"PageSize" xml:"PageSize"`
+	PageNumber int                 `json:"PageNumber" xml:"PageNumber"`
+	TotalCount int64               `json:"TotalCount" xml:"TotalCount"`
+	ErrMsg     string              `json:"ErrMsg" xml:"ErrMsg"`
+	Data       []AppInstanceDetail `json:"Data" xml:"Data"`
 }
 
 // CreateListAppInstanceRequest creates a request to invoke ListAppInstance API

+ 7 - 7
services/retailcloud/list_persistent_volume.go

@@ -84,13 +84,13 @@ type ListPersistentVolumeRequest struct {
 // ListPersistentVolumeResponse is the response struct for api ListPersistentVolume
 type ListPersistentVolumeResponse struct {
 	*responses.BaseResponse
-	RequestId  string                 `json:"RequestId" xml:"RequestId"`
-	Code       int                    `json:"Code" xml:"Code"`
-	PageSize   int                    `json:"PageSize" xml:"PageSize"`
-	PageNumber int                    `json:"PageNumber" xml:"PageNumber"`
-	TotalCount int64                  `json:"TotalCount" xml:"TotalCount"`
-	ErrMsg     string                 `json:"ErrMsg" xml:"ErrMsg"`
-	Data       []ListPersistentVolume `json:"Data" xml:"Data"`
+	RequestId  string                   `json:"RequestId" xml:"RequestId"`
+	Code       int                      `json:"Code" xml:"Code"`
+	PageSize   int                      `json:"PageSize" xml:"PageSize"`
+	PageNumber int                      `json:"PageNumber" xml:"PageNumber"`
+	TotalCount int64                    `json:"TotalCount" xml:"TotalCount"`
+	ErrMsg     string                   `json:"ErrMsg" xml:"ErrMsg"`
+	Data       []PersistentVolumeDetail `json:"Data" xml:"Data"`
 }
 
 // CreateListPersistentVolumeRequest creates a request to invoke ListPersistentVolume API

+ 112 - 0
services/retailcloud/list_persistent_volume_claim.go

@@ -0,0 +1,112 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ListPersistentVolumeClaim invokes the retailcloud.ListPersistentVolumeClaim API synchronously
+// api document: https://help.aliyun.com/api/retailcloud/listpersistentvolumeclaim.html
+func (client *Client) ListPersistentVolumeClaim(request *ListPersistentVolumeClaimRequest) (response *ListPersistentVolumeClaimResponse, err error) {
+	response = CreateListPersistentVolumeClaimResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListPersistentVolumeClaimWithChan invokes the retailcloud.ListPersistentVolumeClaim API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/listpersistentvolumeclaim.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListPersistentVolumeClaimWithChan(request *ListPersistentVolumeClaimRequest) (<-chan *ListPersistentVolumeClaimResponse, <-chan error) {
+	responseChan := make(chan *ListPersistentVolumeClaimResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListPersistentVolumeClaim(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListPersistentVolumeClaimWithCallback invokes the retailcloud.ListPersistentVolumeClaim API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/listpersistentvolumeclaim.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListPersistentVolumeClaimWithCallback(request *ListPersistentVolumeClaimRequest, callback func(response *ListPersistentVolumeClaimResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListPersistentVolumeClaimResponse
+		var err error
+		defer close(result)
+		response, err = client.ListPersistentVolumeClaim(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListPersistentVolumeClaimRequest is the request struct for api ListPersistentVolumeClaim
+type ListPersistentVolumeClaimRequest struct {
+	*requests.RpcRequest
+	AppId      requests.Integer `position:"Query" name:"AppId"`
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	EnvId      requests.Integer `position:"Query" name:"EnvId"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// ListPersistentVolumeClaimResponse is the response struct for api ListPersistentVolumeClaim
+type ListPersistentVolumeClaimResponse struct {
+	*responses.BaseResponse
+	Code       int                           `json:"Code" xml:"Code"`
+	PageNumber int                           `json:"PageNumber" xml:"PageNumber"`
+	RequestId  string                        `json:"RequestId" xml:"RequestId"`
+	PageSize   int                           `json:"PageSize" xml:"PageSize"`
+	TotalCount int64                         `json:"TotalCount" xml:"TotalCount"`
+	ErrorMsg   string                        `json:"ErrorMsg" xml:"ErrorMsg"`
+	Data       []PersistentVolumeClaimDetail `json:"Data" xml:"Data"`
+}
+
+// CreateListPersistentVolumeClaimRequest creates a request to invoke ListPersistentVolumeClaim API
+func CreateListPersistentVolumeClaimRequest() (request *ListPersistentVolumeClaimRequest) {
+	request = &ListPersistentVolumeClaimRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("retailcloud", "2018-03-13", "ListPersistentVolumeClaim", "retailcloud", "openAPI")
+	return
+}
+
+// CreateListPersistentVolumeClaimResponse creates a response to parse from ListPersistentVolumeClaim response
+func CreateListPersistentVolumeClaimResponse() (response *ListPersistentVolumeClaimResponse) {
+	response = &ListPersistentVolumeClaimResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 7 - 7
services/retailcloud/list_pods.go

@@ -86,13 +86,13 @@ type ListPodsRequest struct {
 // ListPodsResponse is the response struct for api ListPods
 type ListPodsResponse struct {
 	*responses.BaseResponse
-	Code       int        `json:"Code" xml:"Code"`
-	ErrorMsg   string     `json:"ErrorMsg" xml:"ErrorMsg"`
-	PageNumber int        `json:"PageNumber" xml:"PageNumber"`
-	PageSize   int        `json:"PageSize" xml:"PageSize"`
-	RequestId  string     `json:"RequestId" xml:"RequestId"`
-	TotalCount int64      `json:"TotalCount" xml:"TotalCount"`
-	Data       []ListPods `json:"Data" xml:"Data"`
+	Code       int         `json:"Code" xml:"Code"`
+	ErrorMsg   string      `json:"ErrorMsg" xml:"ErrorMsg"`
+	PageNumber int         `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int         `json:"PageSize" xml:"PageSize"`
+	RequestId  string      `json:"RequestId" xml:"RequestId"`
+	TotalCount int64       `json:"TotalCount" xml:"TotalCount"`
+	Data       []PodDetail `json:"Data" xml:"Data"`
 }
 
 // CreateListPodsRequest creates a request to invoke ListPods API

+ 110 - 0
services/retailcloud/list_users.go

@@ -0,0 +1,110 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+import (
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
+	"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
+)
+
+// ListUsers invokes the retailcloud.ListUsers API synchronously
+// api document: https://help.aliyun.com/api/retailcloud/listusers.html
+func (client *Client) ListUsers(request *ListUsersRequest) (response *ListUsersResponse, err error) {
+	response = CreateListUsersResponse()
+	err = client.DoAction(request, response)
+	return
+}
+
+// ListUsersWithChan invokes the retailcloud.ListUsers API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/listusers.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListUsersWithChan(request *ListUsersRequest) (<-chan *ListUsersResponse, <-chan error) {
+	responseChan := make(chan *ListUsersResponse, 1)
+	errChan := make(chan error, 1)
+	err := client.AddAsyncTask(func() {
+		defer close(responseChan)
+		defer close(errChan)
+		response, err := client.ListUsers(request)
+		if err != nil {
+			errChan <- err
+		} else {
+			responseChan <- response
+		}
+	})
+	if err != nil {
+		errChan <- err
+		close(responseChan)
+		close(errChan)
+	}
+	return responseChan, errChan
+}
+
+// ListUsersWithCallback invokes the retailcloud.ListUsers API asynchronously
+// api document: https://help.aliyun.com/api/retailcloud/listusers.html
+// asynchronous document: https://help.aliyun.com/document_detail/66220.html
+func (client *Client) ListUsersWithCallback(request *ListUsersRequest, callback func(response *ListUsersResponse, err error)) <-chan int {
+	result := make(chan int, 1)
+	err := client.AddAsyncTask(func() {
+		var response *ListUsersResponse
+		var err error
+		defer close(result)
+		response, err = client.ListUsers(request)
+		callback(response, err)
+		result <- 1
+	})
+	if err != nil {
+		defer close(result)
+		callback(nil, err)
+		result <- 0
+	}
+	return result
+}
+
+// ListUsersRequest is the request struct for api ListUsers
+type ListUsersRequest struct {
+	*requests.RpcRequest
+	PageSize   requests.Integer `position:"Query" name:"PageSize"`
+	PageNumber requests.Integer `position:"Query" name:"PageNumber"`
+}
+
+// ListUsersResponse is the response struct for api ListUsers
+type ListUsersResponse struct {
+	*responses.BaseResponse
+	Code       int                `json:"Code" xml:"Code"`
+	ErrorMsg   string             `json:"ErrorMsg" xml:"ErrorMsg"`
+	PageNumber int                `json:"PageNumber" xml:"PageNumber"`
+	PageSize   int                `json:"PageSize" xml:"PageSize"`
+	RequestId  string             `json:"RequestId" xml:"RequestId"`
+	TotalCount int64              `json:"TotalCount" xml:"TotalCount"`
+	Data       []ListUserResponse `json:"Data" xml:"Data"`
+}
+
+// CreateListUsersRequest creates a request to invoke ListUsers API
+func CreateListUsersRequest() (request *ListUsersRequest) {
+	request = &ListUsersRequest{
+		RpcRequest: &requests.RpcRequest{},
+	}
+	request.InitWithApiInfo("retailcloud", "2018-03-13", "ListUsers", "retailcloud", "openAPI")
+	return
+}
+
+// CreateListUsersResponse creates a response to parse from ListUsers response
+func CreateListUsersResponse() (response *ListUsersResponse) {
+	response = &ListUsersResponse{
+		BaseResponse: &responses.BaseResponse{},
+	}
+	return
+}

+ 3 - 2
services/retailcloud/struct_list_app_response.go → services/retailcloud/struct_app_detail.go

@@ -15,8 +15,8 @@ package retailcloud
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
-// ListAppResponse is a nested struct in retailcloud response
-type ListApp struct {
+// AppDetail is a nested struct in retailcloud response
+type AppDetail struct {
 	AppId           int64  `json:"AppId" xml:"AppId"`
 	Title           string `json:"Title" xml:"Title"`
 	Description     string `json:"Description" xml:"Description"`
@@ -26,4 +26,5 @@ type ListApp struct {
 	ServiceType     string `json:"ServiceType" xml:"ServiceType"`
 	DeployType      string `json:"DeployType" xml:"DeployType"`
 	BizTitle        string `json:"BizTitle" xml:"BizTitle"`
+	AppStateType    string `json:"AppStateType" xml:"AppStateType"`
 }

+ 2 - 2
services/retailcloud/struct_list_app_instance_response.go → services/retailcloud/struct_app_instance_detail.go

@@ -15,8 +15,8 @@ package retailcloud
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
-// ListAppInstanceResponse is a nested struct in retailcloud response
-type ListAppInstance struct {
+// AppInstanceDetail is a nested struct in retailcloud response
+type AppInstanceDetail struct {
 	AppInstanceId string `json:"AppInstanceId" xml:"AppInstanceId"`
 	CreateTime    string `json:"CreateTime" xml:"CreateTime"`
 	Spec          string `json:"Spec" xml:"Spec"`

+ 21 - 0
services/retailcloud/struct_config_map_list.go

@@ -0,0 +1,21 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ConfigMapList is a nested struct in retailcloud response
+type ConfigMapList struct {
+	ConfigMapList []string `json:"ConfigMapList" xml:"ConfigMapList"`
+}

+ 4 - 3
services/retailcloud/struct_container_yaml_conf.go

@@ -17,7 +17,8 @@ package retailcloud
 
 // ContainerYamlConf is a nested struct in retailcloud response
 type ContainerYamlConf struct {
-	Deployment  string `json:"Deployment" xml:"Deployment"`
-	ConfigMap   string `json:"ConfigMap" xml:"ConfigMap"`
-	StatefulSet string `json:"StatefulSet" xml:"StatefulSet"`
+	Deployment    string   `json:"Deployment" xml:"Deployment"`
+	ConfigMap     string   `json:"ConfigMap" xml:"ConfigMap"`
+	StatefulSet   string   `json:"StatefulSet" xml:"StatefulSet"`
+	ConfigMapList []string `json:"ConfigMapList" xml:"ConfigMapList"`
 }

+ 1 - 1
services/retailcloud/struct_data_in_list_app.go

@@ -17,5 +17,5 @@ package retailcloud
 
 // DataInListApp is a nested struct in retailcloud response
 type DataInListApp struct {
-	ListAppResponse []ListAppResponse `json:"ListAppResponse" xml:"ListAppResponse"`
+	AppDetail []AppDetail `json:"AppDetail" xml:"AppDetail"`
 }

+ 1 - 1
services/retailcloud/struct_data_in_list_app_instance.go

@@ -17,5 +17,5 @@ package retailcloud
 
 // DataInListAppInstance is a nested struct in retailcloud response
 type DataInListAppInstance struct {
-	ListAppInstanceResponse []ListAppInstanceResponse `json:"ListAppInstanceResponse" xml:"ListAppInstanceResponse"`
+	AppInstanceDetail []AppInstanceDetail `json:"AppInstanceDetail" xml:"AppInstanceDetail"`
 }

+ 1 - 1
services/retailcloud/struct_data_in_list_persistent_volume.go

@@ -17,5 +17,5 @@ package retailcloud
 
 // DataInListPersistentVolume is a nested struct in retailcloud response
 type DataInListPersistentVolume struct {
-	ListPersistentVolumeResponse []ListPersistentVolumeResponse `json:"ListPersistentVolumeResponse" xml:"ListPersistentVolumeResponse"`
+	PersistentVolumeDetail []PersistentVolumeDetail `json:"PersistentVolumeDetail" xml:"PersistentVolumeDetail"`
 }

+ 21 - 0
services/retailcloud/struct_data_in_list_persistent_volume_claim.go

@@ -0,0 +1,21 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInListPersistentVolumeClaim is a nested struct in retailcloud response
+type DataInListPersistentVolumeClaim struct {
+	PersistentVolumeClaimDetail []PersistentVolumeClaimDetail `json:"PersistentVolumeClaimDetail" xml:"PersistentVolumeClaimDetail"`
+}

+ 1 - 1
services/retailcloud/struct_data_in_list_pods.go

@@ -17,5 +17,5 @@ package retailcloud
 
 // DataInListPods is a nested struct in retailcloud response
 type DataInListPods struct {
-	ListPodsResponse []ListPodsResponse `json:"ListPodsResponse" xml:"ListPodsResponse"`
+	PodDetail []PodDetail `json:"PodDetail" xml:"PodDetail"`
 }

+ 21 - 0
services/retailcloud/struct_data_in_list_users.go

@@ -0,0 +1,21 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// DataInListUsers is a nested struct in retailcloud response
+type DataInListUsers struct {
+	ListUserResponse []ListUserResponse `json:"ListUserResponse" xml:"ListUserResponse"`
+}

+ 23 - 0
services/retailcloud/struct_list_user_response.go

@@ -0,0 +1,23 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// ListUserResponse is a nested struct in retailcloud response
+type ListUserResponse struct {
+	UserId   string `json:"UserId" xml:"UserId"`
+	UserType string `json:"UserType" xml:"UserType"`
+	RealName string `json:"RealName" xml:"RealName"`
+}

+ 27 - 0
services/retailcloud/struct_persistent_volume_claim_detail.go

@@ -0,0 +1,27 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// PersistentVolumeClaimDetail is a nested struct in retailcloud response
+type PersistentVolumeClaimDetail struct {
+	Name         string `json:"Name" xml:"Name"`
+	Capacity     string `json:"Capacity" xml:"Capacity"`
+	AccessModes  string `json:"AccessModes" xml:"AccessModes"`
+	Status       string `json:"Status" xml:"Status"`
+	StorageClass string `json:"StorageClass" xml:"StorageClass"`
+	VolumeName   string `json:"VolumeName" xml:"VolumeName"`
+	CreateTime   string `json:"CreateTime" xml:"CreateTime"`
+}

+ 2 - 2
services/retailcloud/struct_list_persistent_volume_response.go → services/retailcloud/struct_persistent_volume_detail.go

@@ -15,8 +15,8 @@ package retailcloud
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
-// ListPersistentVolumeResponse is a nested struct in retailcloud response
-type ListPersistentVolume struct {
+// PersistentVolumeDetail is a nested struct in retailcloud response
+type PersistentVolumeDetail struct {
 	Name          string `json:"Name" xml:"Name"`
 	Capacity      string `json:"Capacity" xml:"Capacity"`
 	AccessModes   string `json:"AccessModes" xml:"AccessModes"`

+ 2 - 2
services/retailcloud/struct_list_pods_response.go → services/retailcloud/struct_pod_detail.go

@@ -15,8 +15,8 @@ package retailcloud
 // Code generated by Alibaba Cloud SDK Code Generator.
 // Changes may cause incorrect behavior and will be lost if the code is regenerated.
 
-// ListPodsResponse is a nested struct in retailcloud response
-type ListPods struct {
+// PodDetail is a nested struct in retailcloud response
+type PodDetail struct {
 	AppInstanceId      string       `json:"AppInstanceId" xml:"AppInstanceId"`
 	DeployOrderId      int64        `json:"DeployOrderId" xml:"DeployOrderId"`
 	DeployPartitionNum int          `json:"DeployPartitionNum" xml:"DeployPartitionNum"`

+ 65 - 62
services/retailcloud/struct_result.go

@@ -17,66 +17,69 @@ package retailcloud
 
 // Result is a nested struct in retailcloud response
 type Result struct {
-	Nonsense           int                  `json:"Nonsense" xml:"Nonsense"`
-	BusinessCode       string               `json:"BusinessCode" xml:"BusinessCode"`
-	Headless           bool                 `json:"Headless" xml:"Headless"`
-	AppEnvId           int64                `json:"AppEnvId" xml:"AppEnvId"`
-	StickySession      int                  `json:"StickySession" xml:"StickySession"`
-	SlbAPId            int64                `json:"SlbAPId" xml:"SlbAPId"`
-	LabelValue         string               `json:"LabelValue" xml:"LabelValue"`
-	EnvType            int                  `json:"EnvType" xml:"EnvType"`
-	ListenerPort       int                  `json:"ListenerPort" xml:"ListenerPort"`
-	ServiceType        string               `json:"ServiceType" xml:"ServiceType"`
-	ClusterId          string               `json:"ClusterId" xml:"ClusterId"`
-	SchemaId           int64                `json:"SchemaId" xml:"SchemaId"`
-	RealServerPort     int                  `json:"RealServerPort" xml:"RealServerPort"`
-	Id                 int64                `json:"Id" xml:"Id"`
-	DeployOrderId      int64                `json:"DeployOrderId" xml:"DeployOrderId"`
-	TotalBackupSize    int64                `json:"TotalBackupSize" xml:"TotalBackupSize"`
-	Success            bool                 `json:"Success" xml:"Success"`
-	Admitted           bool                 `json:"Admitted" xml:"Admitted"`
-	ServiceId          int64                `json:"ServiceId" xml:"ServiceId"`
-	EnvTypeName        string               `json:"EnvTypeName" xml:"EnvTypeName"`
-	SlbId              string               `json:"SlbId" xml:"SlbId"`
-	Name               string               `json:"Name" xml:"Name"`
-	Region             string               `json:"Region" xml:"Region"`
-	BizTitle           string               `json:"BizTitle" xml:"BizTitle"`
-	ResourceDef        string               `json:"ResourceDef" xml:"ResourceDef"`
-	Title              string               `json:"Title" xml:"Title"`
-	EnvId              int64                `json:"EnvId" xml:"EnvId"`
-	BizName            string               `json:"BizName" xml:"BizName"`
-	Language           string               `json:"Language" xml:"Language"`
-	LabelKey           string               `json:"LabelKey" xml:"LabelKey"`
-	DeployType         string               `json:"DeployType" xml:"DeployType"`
-	AppId              int64                `json:"AppId" xml:"AppId"`
-	CookieTimeout      int                  `json:"CookieTimeout" xml:"CookieTimeout"`
-	Replicas           int                  `json:"Replicas" xml:"Replicas"`
-	SslCertId          string               `json:"SslCertId" xml:"SslCertId"`
-	K8sServiceId       string               `json:"K8sServiceId" xml:"K8sServiceId"`
-	PersistentVolumeId int64                `json:"PersistentVolumeId" xml:"PersistentVolumeId"`
-	TotalRecordCount   string               `json:"TotalRecordCount" xml:"TotalRecordCount"`
-	Description        string               `json:"Description" xml:"Description"`
-	DeployOrderName    string               `json:"DeployOrderName" xml:"DeployOrderName"`
-	PageNumber         string               `json:"PageNumber" xml:"PageNumber"`
-	EstablishedTimeout int                  `json:"EstablishedTimeout" xml:"EstablishedTimeout"`
-	Protocol           string               `json:"Protocol" xml:"Protocol"`
-	EnvName            string               `json:"EnvName" xml:"EnvName"`
-	AppSchemaId        int64                `json:"AppSchemaId" xml:"AppSchemaId"`
-	NetworkMode        string               `json:"NetworkMode" xml:"NetworkMode"`
-	RequestId          string               `json:"RequestId" xml:"RequestId"`
-	OperatingSystem    string               `json:"OperatingSystem" xml:"OperatingSystem"`
-	ClusterInstanceId  string               `json:"ClusterInstanceId" xml:"ClusterInstanceId"`
-	SlbIp              string               `json:"SlbIp" xml:"SlbIp"`
-	PageRecordCount    string               `json:"PageRecordCount" xml:"PageRecordCount"`
-	NodeWorkLoadList   []string             `json:"NodeWorkLoadList" xml:"NodeWorkLoadList"`
-	InstanceInfo       InstanceInfo         `json:"InstanceInfo" xml:"InstanceInfo"`
-	WorkLoad           WorkLoad             `json:"WorkLoad" xml:"WorkLoad"`
-	BasicInfo          BasicInfo            `json:"BasicInfo" xml:"BasicInfo"`
-	NetInfo            NetInfo              `json:"NetInfo" xml:"NetInfo"`
-	PodEvents          []PodEvent           `json:"PodEvents" xml:"PodEvents"`
-	PortMappings       []ServicePortMapping `json:"PortMappings" xml:"PortMappings"`
-	Accounts           []AccountsItem       `json:"Accounts" xml:"Accounts"`
-	DeployStepList     []DeployLogStepRC    `json:"DeployStepList" xml:"DeployStepList"`
-	Items              []Backup             `json:"Items" xml:"Items"`
-	Databases          []DatabasesItem      `json:"Databases" xml:"Databases"`
+	Nonsense                int                  `json:"Nonsense" xml:"Nonsense"`
+	BusinessCode            string               `json:"BusinessCode" xml:"BusinessCode"`
+	Headless                bool                 `json:"Headless" xml:"Headless"`
+	AppEnvId                int64                `json:"AppEnvId" xml:"AppEnvId"`
+	AppStateType            string               `json:"AppStateType" xml:"AppStateType"`
+	StickySession           int                  `json:"StickySession" xml:"StickySession"`
+	SlbAPId                 int64                `json:"SlbAPId" xml:"SlbAPId"`
+	LabelValue              string               `json:"LabelValue" xml:"LabelValue"`
+	EnvType                 int                  `json:"EnvType" xml:"EnvType"`
+	ListenerPort            int                  `json:"ListenerPort" xml:"ListenerPort"`
+	ServiceType             string               `json:"ServiceType" xml:"ServiceType"`
+	ClusterId               string               `json:"ClusterId" xml:"ClusterId"`
+	SchemaId                int64                `json:"SchemaId" xml:"SchemaId"`
+	RealServerPort          int                  `json:"RealServerPort" xml:"RealServerPort"`
+	Id                      int64                `json:"Id" xml:"Id"`
+	DeployOrderId           int64                `json:"DeployOrderId" xml:"DeployOrderId"`
+	TotalBackupSize         int64                `json:"TotalBackupSize" xml:"TotalBackupSize"`
+	Success                 bool                 `json:"Success" xml:"Success"`
+	Admitted                bool                 `json:"Admitted" xml:"Admitted"`
+	ServiceId               int64                `json:"ServiceId" xml:"ServiceId"`
+	EnvTypeName             string               `json:"EnvTypeName" xml:"EnvTypeName"`
+	PersistentVolumeClaimId int64                `json:"PersistentVolumeClaimId" xml:"PersistentVolumeClaimId"`
+	SlbId                   string               `json:"SlbId" xml:"SlbId"`
+	Name                    string               `json:"Name" xml:"Name"`
+	Region                  string               `json:"Region" xml:"Region"`
+	BizTitle                string               `json:"BizTitle" xml:"BizTitle"`
+	ResourceDef             string               `json:"ResourceDef" xml:"ResourceDef"`
+	Title                   string               `json:"Title" xml:"Title"`
+	EnvId                   int64                `json:"EnvId" xml:"EnvId"`
+	BizName                 string               `json:"BizName" xml:"BizName"`
+	Language                string               `json:"Language" xml:"Language"`
+	LabelKey                string               `json:"LabelKey" xml:"LabelKey"`
+	DeployType              string               `json:"DeployType" xml:"DeployType"`
+	AppId                   int64                `json:"AppId" xml:"AppId"`
+	CookieTimeout           int                  `json:"CookieTimeout" xml:"CookieTimeout"`
+	Replicas                int                  `json:"Replicas" xml:"Replicas"`
+	SslCertId               string               `json:"SslCertId" xml:"SslCertId"`
+	K8sServiceId            string               `json:"K8sServiceId" xml:"K8sServiceId"`
+	PersistentVolumeId      int64                `json:"PersistentVolumeId" xml:"PersistentVolumeId"`
+	TotalRecordCount        string               `json:"TotalRecordCount" xml:"TotalRecordCount"`
+	Description             string               `json:"Description" xml:"Description"`
+	DeployOrderName         string               `json:"DeployOrderName" xml:"DeployOrderName"`
+	PageNumber              string               `json:"PageNumber" xml:"PageNumber"`
+	EstablishedTimeout      int                  `json:"EstablishedTimeout" xml:"EstablishedTimeout"`
+	Protocol                string               `json:"Protocol" xml:"Protocol"`
+	EnvName                 string               `json:"EnvName" xml:"EnvName"`
+	AppSchemaId             int64                `json:"AppSchemaId" xml:"AppSchemaId"`
+	NetworkMode             string               `json:"NetworkMode" xml:"NetworkMode"`
+	RequestId               string               `json:"RequestId" xml:"RequestId"`
+	OperatingSystem         string               `json:"OperatingSystem" xml:"OperatingSystem"`
+	ClusterInstanceId       string               `json:"ClusterInstanceId" xml:"ClusterInstanceId"`
+	SlbIp                   string               `json:"SlbIp" xml:"SlbIp"`
+	PageRecordCount         string               `json:"PageRecordCount" xml:"PageRecordCount"`
+	NodeWorkLoadList        []string             `json:"NodeWorkLoadList" xml:"NodeWorkLoadList"`
+	InstanceInfo            InstanceInfo         `json:"InstanceInfo" xml:"InstanceInfo"`
+	WorkLoad                WorkLoad             `json:"WorkLoad" xml:"WorkLoad"`
+	BasicInfo               BasicInfo            `json:"BasicInfo" xml:"BasicInfo"`
+	NetInfo                 NetInfo              `json:"NetInfo" xml:"NetInfo"`
+	PodEvents               []PodEvent           `json:"PodEvents" xml:"PodEvents"`
+	UserRoles               []UserRole           `json:"UserRoles" xml:"UserRoles"`
+	PortMappings            []ServicePortMapping `json:"PortMappings" xml:"PortMappings"`
+	Accounts                []AccountsItem       `json:"Accounts" xml:"Accounts"`
+	DeployStepList          []DeployLogStepRC    `json:"DeployStepList" xml:"DeployStepList"`
+	Items                   []Backup             `json:"Items" xml:"Items"`
+	Databases               []DatabasesItem      `json:"Databases" xml:"Databases"`
 }

+ 24 - 0
services/retailcloud/struct_user_role.go

@@ -0,0 +1,24 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// UserRole is a nested struct in retailcloud response
+type UserRole struct {
+	UserId   string `json:"UserId" xml:"UserId"`
+	UserType string `json:"UserType" xml:"UserType"`
+	RealName string `json:"RealName" xml:"RealName"`
+	RoleName string `json:"RoleName" xml:"RoleName"`
+}

+ 21 - 0
services/retailcloud/struct_user_roles.go

@@ -0,0 +1,21 @@
+package retailcloud
+
+//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.
+//
+// Code generated by Alibaba Cloud SDK Code Generator.
+// Changes may cause incorrect behavior and will be lost if the code is regenerated.
+
+// UserRoles is a nested struct in retailcloud response
+type UserRoles struct {
+	UserRole []UserRole `json:"UserRole" xml:"UserRole"`
+}

+ 14 - 6
services/retailcloud/update_app.go

@@ -76,12 +76,20 @@ func (client *Client) UpdateAppWithCallback(request *UpdateAppRequest, callback
 // UpdateAppRequest is the request struct for api UpdateApp
 type UpdateAppRequest struct {
 	*requests.RpcRequest
-	BizTitle        string           `position:"Body" name:"BizTitle"`
-	ServiceType     string           `position:"Body" name:"ServiceType"`
-	AppId           requests.Integer `position:"Body" name:"AppId"`
-	OperatingSystem string           `position:"Body" name:"OperatingSystem"`
-	Description     string           `position:"Body" name:"Description"`
-	Language        string           `position:"Body" name:"Language"`
+	BizTitle        string                `position:"Body" name:"BizTitle"`
+	ServiceType     string                `position:"Body" name:"ServiceType"`
+	UserRoles       *[]UpdateAppUserRoles `position:"Body" name:"UserRoles"  type:"Repeated"`
+	AppId           requests.Integer      `position:"Body" name:"AppId"`
+	OperatingSystem string                `position:"Body" name:"OperatingSystem"`
+	Description     string                `position:"Body" name:"Description"`
+	Language        string                `position:"Body" name:"Language"`
+}
+
+// UpdateAppUserRoles is a repeated param struct in UpdateAppRequest
+type UpdateAppUserRoles struct {
+	RoleName string `name:"RoleName"`
+	UserType string `name:"UserType"`
+	UserId   string `name:"UserId"`
 }
 
 // UpdateAppResponse is the response struct for api UpdateApp

+ 7 - 6
services/retailcloud/update_deploy_config.go

@@ -76,12 +76,13 @@ func (client *Client) UpdateDeployConfigWithCallback(request *UpdateDeployConfig
 // UpdateDeployConfigRequest is the request struct for api UpdateDeployConfig
 type UpdateDeployConfigRequest struct {
 	*requests.RpcRequest
-	CodePath    string           `position:"Query" name:"CodePath"`
-	ConfigMap   string           `position:"Query" name:"ConfigMap"`
-	StatefulSet string           `position:"Query" name:"StatefulSet"`
-	AppId       requests.Integer `position:"Query" name:"AppId"`
-	Id          requests.Integer `position:"Query" name:"Id"`
-	Deployment  string           `position:"Query" name:"Deployment"`
+	CodePath      string           `position:"Query" name:"CodePath"`
+	ConfigMapList *[]string        `position:"Query" name:"ConfigMapList"  type:"Repeated"`
+	ConfigMap     string           `position:"Query" name:"ConfigMap"`
+	StatefulSet   string           `position:"Query" name:"StatefulSet"`
+	AppId         requests.Integer `position:"Query" name:"AppId"`
+	Id            requests.Integer `position:"Query" name:"Id"`
+	Deployment    string           `position:"Query" name:"Deployment"`
 }
 
 // UpdateDeployConfigResponse is the response struct for api UpdateDeployConfig