Merge pull request 'migrate code from github' (#13) from github_branch into master
This commit is contained in:
commit
858d9f7652
|
@ -0,0 +1,110 @@
|
|||
//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.
|
||||
|
||||
package ali
|
||||
|
||||
import (
|
||||
"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"
|
||||
)
|
||||
|
||||
// Client is the sdk client struct, each func corresponds to an OpenAPI
|
||||
type Client struct {
|
||||
sdk.Client
|
||||
}
|
||||
|
||||
//type AliEci struct {
|
||||
// cli *alieci.Client
|
||||
// region tenanter.Region
|
||||
// tenanter tenanter.Tenanter
|
||||
//}
|
||||
|
||||
// NewClient creates a sdk client with environment variables
|
||||
func NewClient() (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.Init()
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithProvider creates a sdk client with providers
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
func NewClientWithProvider(regionId string, providers ...provider.Provider) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
var pc provider.Provider
|
||||
if len(providers) == 0 {
|
||||
pc = provider.DefaultChain
|
||||
} else {
|
||||
pc = provider.NewProviderChain(providers)
|
||||
}
|
||||
err = client.InitWithProviderChain(regionId, pc)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithOptions creates a sdk client with regionId/sdkConfig/credential
|
||||
// this is the common api to create a sdk client
|
||||
func NewClientWithOptions(regionId string, config *sdk.Config, credential auth.Credential) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.InitWithOptions(regionId, config, credential)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithAccessKey is a shortcut to create sdk client with accesskey
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
func NewClientWithAccessKey(regionId, accessKeyId, accessKeySecret string) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.InitWithAccessKey(regionId, accessKeyId, accessKeySecret)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithStsToken is a shortcut to create sdk client with sts token
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
func NewClientWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken string) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.InitWithStsToken(regionId, stsAccessKeyId, stsAccessKeySecret, stsToken)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
func NewClientWithRamRoleArn(regionId string, accessKeyId, accessKeySecret, roleArn, roleSessionName string) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.InitWithRamRoleArn(regionId, accessKeyId, accessKeySecret, roleArn, roleSessionName)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithRamRoleArn is a shortcut to create sdk client with ram roleArn and policy
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
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)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithEcsRamRole is a shortcut to create sdk client with ecs ram role
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
func NewClientWithEcsRamRole(regionId string, roleName string) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.InitWithEcsRamRole(regionId, roleName)
|
||||
return
|
||||
}
|
||||
|
||||
// NewClientWithRsaKeyPair is a shortcut to create sdk client with rsa key pair
|
||||
// usage: https://github.com/aliyun/alibaba-cloud-sdk-go/blob/master/docs/2-Client-EN.md
|
||||
func NewClientWithRsaKeyPair(regionId string, publicKeyId, privateKey string, sessionExpiration int) (client *Client, err error) {
|
||||
client = &Client{}
|
||||
err = client.InitWithRsaKeyPair(regionId, publicKeyId, privateKey, sessionExpiration)
|
||||
return
|
||||
}
|
|
@ -0,0 +1,361 @@
|
|||
package ali
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"flag"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
|
||||
"github.com/golang/glog"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod/server"
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
// CreateContainerGroup invokes the eci.CreateContainerGroup API synchronously
|
||||
// api document: https://help.aliyun.com/api/eci/createcontainergroup.html
|
||||
func CreateContainerGroup(request *CreateContainerGroupRequest) (response *CreateContainerGroupResponse, err error) {
|
||||
|
||||
provider := pbtenant.CloudProvider(request.ProviderId)
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", "configs/config.yaml", "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
if err := tenanter.LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, tenanter.ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("tenanter.LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("tenanter.LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
tenanters, err := tenanter.GetTenanters(provider)
|
||||
var regionId int32
|
||||
switch request.ProviderId {
|
||||
case 0:
|
||||
regionId, _ = tenanter.GetAliRegionId(request.RegionId)
|
||||
case 1:
|
||||
regionId, _ = tenanter.GetTencentRegionId(request.RegionId)
|
||||
case 2:
|
||||
regionId, _ = tenanter.GetHuaweiRegionId(request.RegionId)
|
||||
case 3:
|
||||
regionId, _ = tenanter.GetK8SRegionId(request.RegionId)
|
||||
}
|
||||
container := *request.Container
|
||||
containerImage := container[0].Image
|
||||
containerName := container[0].Name
|
||||
containerPod := container[0].Cpu
|
||||
memoryPod := container[0].Memory
|
||||
|
||||
requestPCM := &pbpod.CreatePodReq{
|
||||
RequestSource: "ali",
|
||||
Provider: provider,
|
||||
AccountName: tenanters[0].AccountName(),
|
||||
PodName: request.ContainerGroupName,
|
||||
RegionId: regionId,
|
||||
ContainerImage: containerImage,
|
||||
ContainerName: containerName,
|
||||
CpuPod: string(containerPod),
|
||||
MemoryPod: string(memoryPod),
|
||||
SecurityGroupId: "sg-6qlun7hd",
|
||||
SubnetId: "subnet-mnwfg2fk",
|
||||
VpcId: "vpc-rkwt40g5",
|
||||
Namespace: "pcm",
|
||||
}
|
||||
|
||||
resp, err := server.CreatePod(nil, requestPCM)
|
||||
|
||||
response = &CreateContainerGroupResponse{
|
||||
BaseResponse: nil,
|
||||
RequestId: resp.RequestId,
|
||||
ContainerGroupId: resp.PodId,
|
||||
}
|
||||
|
||||
return response, nil
|
||||
}
|
||||
|
||||
// CreateContainerGroupRequest is the request struct for api CreateContainerGroup
|
||||
type CreateContainerGroupRequest struct {
|
||||
*requests.RpcRequest
|
||||
/*********PCM param************/
|
||||
RequestSource string `position:"Query" name:"RequestSource"`
|
||||
ProviderId int32 `position:"Query" name:"ProviderId"`
|
||||
AccountName string `position:"Query" name:"AccountName"`
|
||||
Namespace string `position:"Query" name:"Namespace"`
|
||||
/*********PCM param************/
|
||||
OwnerId requests.Integer `position:"Query" name:"OwnerId"`
|
||||
ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
|
||||
ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
|
||||
OwnerAccount string `position:"Query" name:"OwnerAccount"`
|
||||
RegionId string `position:"Query" name:"RegionId"`
|
||||
ZoneId string `position:"Query" name:"ZoneId"`
|
||||
SecurityGroupId string `position:"Query" name:"SecurityGroupId"`
|
||||
VSwitchId string `position:"Query" name:"VSwitchId"`
|
||||
ContainerGroupName string `position:"Query" name:"ContainerGroupName"`
|
||||
RestartPolicy string `position:"Query" name:"RestartPolicy"`
|
||||
Tag *[]CreateContainerGroupTag `position:"Query" name:"Tag" type:"Repeated"`
|
||||
ImageRegistryCredential *[]CreateContainerGroupImageRegistryCredential `position:"Query" name:"ImageRegistryCredential" type:"Repeated"`
|
||||
Container *[]CreateContainerGroupContainer `position:"Query" name:"Container" type:"Repeated"`
|
||||
Volume *[]CreateContainerGroupVolume `position:"Query" name:"Volume" type:"Repeated"`
|
||||
EipInstanceId string `position:"Query" name:"EipInstanceId"`
|
||||
InitContainer *[]CreateContainerGroupInitContainer `position:"Query" name:"InitContainer" type:"Repeated"`
|
||||
Cpu requests.Float `position:"Query" name:"Cpu"`
|
||||
Memory requests.Float `position:"Query" name:"Memory"`
|
||||
ResourceGroupId string `position:"Query" name:"ResourceGroupId"`
|
||||
DnsPolicy string `position:"Query" name:"DnsPolicy"`
|
||||
ClientToken string `position:"Query" name:"ClientToken"`
|
||||
HostAliase *[]CreateContainerGroupHostAliase `position:"Query" name:"HostAliase" type:"Repeated"`
|
||||
Arn *[]CreateContainerGroupArn `position:"Query" name:"Arn" type:"Repeated"`
|
||||
InstanceType string `position:"Query" name:"InstanceType"`
|
||||
SlsEnable requests.Boolean `position:"Query" name:"SlsEnable"`
|
||||
ImageSnapshotId string `position:"Query" name:"ImageSnapshotId"`
|
||||
RamRoleName string `position:"Query" name:"RamRoleName"`
|
||||
NtpServer []string `position:"Query" name:"NtpServer" type:"Repeated"`
|
||||
TerminationGracePeriodSeconds requests.Integer `position:"Query" name:"TerminationGracePeriodSeconds"`
|
||||
AutoMatchImageCache requests.Boolean `position:"Query" name:"AutoMatchImageCache"`
|
||||
VkClientVersion string `position:"Query" name:"VkClientVersion"`
|
||||
Ipv6AddressCount requests.Integer `position:"Query" name:"Ipv6AddressCount"`
|
||||
ActiveDeadlineSeconds requests.Integer `position:"Query" name:"ActiveDeadlineSeconds"`
|
||||
SpotStrategy string `position:"Query" name:"SpotStrategy"`
|
||||
SpotPriceLimit requests.Float `position:"Query" name:"SpotPriceLimit"`
|
||||
VSwitchStrategy string `position:"Query" name:"VSwitchStrategy"`
|
||||
DnsConfig CreateContainerGroupDnsConfig `position:"Query" name:"DnsConfig" type:"Struct"`
|
||||
SecurityContext CreateContainerGroupSecurityContext `position:"Query" name:"SecurityContext" type:"Struct"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupTag struct {
|
||||
Key string `name:"Key"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupImageRegistryCredential struct {
|
||||
Server string `name:"Server"`
|
||||
UserName string `name:"UserName"`
|
||||
Password string `name:"Password"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupContainer struct {
|
||||
Image string `name:"Image"`
|
||||
Name string `name:"Name"`
|
||||
Cpu requests.Float `name:"Cpu"`
|
||||
Memory requests.Float `name:"Memory"`
|
||||
WorkingDir string `name:"WorkingDir"`
|
||||
ImagePullPolicy string `name:"ImagePullPolicy"`
|
||||
Command []string `name:"Command" type:"Repeated"`
|
||||
Arg []string `name:"Arg" type:"Repeated"`
|
||||
VolumeMount *[]CreateContainerGroupVolumeMount `name:"VolumeMount" type:"Repeated"`
|
||||
Port *[]CreateContainerGroupPort `name:"Port" type:"Repeated"`
|
||||
EnvironmentVar *[]CreateContainerGroupEnvironmentVar `name:"EnvironmentVar" type:"Repeated"`
|
||||
Stdin requests.Boolean `name:"Stdin"`
|
||||
StdinOnce requests.Boolean `name:"StdinOnce"`
|
||||
Tty requests.Boolean `name:"Tty"`
|
||||
Gpu requests.Integer `name:"Gpu"`
|
||||
LifecyclePostStartHandlerHttpGetHost string `name:"LifecyclePostStartHandlerHttpGetHost"`
|
||||
LifecyclePostStartHandlerHttpGetPort requests.Integer `name:"LifecyclePostStartHandlerHttpGetPort"`
|
||||
LifecyclePostStartHandlerHttpGetPath string `name:"LifecyclePostStartHandlerHttpGetPath"`
|
||||
LifecyclePostStartHandlerHttpGetScheme string `name:"LifecyclePostStartHandlerHttpGetScheme"`
|
||||
LifecyclePostStartHandlerHttpGetHttpHeader *[]CreateContainerGroupLifecyclePostStartHandlerHttpGetHttpHeader `name:"LifecyclePostStartHandlerHttpGetHttpHeader" type:"Repeated"`
|
||||
LifecyclePostStartHandlerExec []string `name:"LifecyclePostStartHandlerExec" type:"Repeated"`
|
||||
LifecyclePostStartHandlerTcpSocketHost string `name:"LifecyclePostStartHandlerTcpSocketHost"`
|
||||
LifecyclePostStartHandlerTcpSocketPort requests.Integer `name:"LifecyclePostStartHandlerTcpSocketPort"`
|
||||
LifecyclePreStopHandlerHttpGetHost string `name:"LifecyclePreStopHandlerHttpGetHost"`
|
||||
LifecyclePreStopHandlerHttpGetPort requests.Integer `name:"LifecyclePreStopHandlerHttpGetPort"`
|
||||
LifecyclePreStopHandlerHttpGetPath string `name:"LifecyclePreStopHandlerHttpGetPath"`
|
||||
LifecyclePreStopHandlerHttpGetScheme string `name:"LifecyclePreStopHandlerHttpGetScheme"`
|
||||
LifecyclePreStopHandlerHttpGetHttpHeader *[]CreateContainerGroupLifecyclePreStopHandlerHttpGetHttpHeader `name:"LifecyclePreStopHandlerHttpGetHttpHeader" type:"Repeated"`
|
||||
LifecyclePreStopHandlerExec []string `name:"LifecyclePreStopHandlerExec" type:"Repeated"`
|
||||
LifecyclePreStopHandlerTcpSocketHost string `name:"LifecyclePreStopHandlerTcpSocketHost"`
|
||||
LifecyclePreStopHandlerTcpSocketPort requests.Integer `name:"LifecyclePreStopHandlerTcpSocketPort"`
|
||||
ReadinessProbe CreateContainerGroupReadinessProbe `name:"ReadinessProbe" type:"Struct"`
|
||||
LivenessProbe CreateContainerGroupLivenessProbe `name:"LivenessProbe" type:"Struct"`
|
||||
SecurityContext CreateContainerGroupSecurityContext `name:"SecurityContext" type:"Struct"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupVolume struct {
|
||||
Name string `name:"Name"`
|
||||
Type string `name:"Type"`
|
||||
NFSVolume CreateContainerGroupNFSVolume `name:"NFSVolume" type:"Struct"`
|
||||
ConfigFileVolume CreateContainerGroupConfigFileVolume `name:"ConfigFileVolume" type:"Struct"`
|
||||
EmptyDirVolume CreateContainerGroupEmptyDirVolume `name:"EmptyDirVolume" type:"Struct"`
|
||||
DiskVolume CreateContainerGroupDiskVolume `name:"DiskVolume" type:"Struct"`
|
||||
FlexVolume CreateContainerGroupFlexVolume `name:"FlexVolume" type:"Struct"`
|
||||
HostPathVolume CreateContainerGroupHostPathVolume `name:"HostPathVolume" type:"Struct"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupInitContainer struct {
|
||||
Name string `name:"Name"`
|
||||
Image string `name:"Image"`
|
||||
Cpu requests.Float `name:"Cpu"`
|
||||
Memory requests.Float `name:"Memory"`
|
||||
WorkingDir string `name:"WorkingDir"`
|
||||
ImagePullPolicy string `name:"ImagePullPolicy"`
|
||||
Command []string `name:"Command" type:"Repeated"`
|
||||
Arg []string `name:"Arg" type:"Repeated"`
|
||||
VolumeMount *[]CreateContainerGroupVolumeMount `name:"VolumeMount" type:"Repeated"`
|
||||
Port *[]CreateContainerGroupPort `name:"Port" type:"Repeated"`
|
||||
EnvironmentVar *[]CreateContainerGroupEnvironmentVar `name:"EnvironmentVar" type:"Repeated"`
|
||||
Gpu requests.Integer `name:"Gpu"`
|
||||
SecurityContext CreateContainerGroupSecurityContext `name:"SecurityContext" type:"Struct"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupHostAliase struct {
|
||||
Ip string `name:"Ip"`
|
||||
Hostname []string `name:"Hostname" type:"Repeated"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupArn struct {
|
||||
RoleArn string `name:"RoleArn"`
|
||||
RoleType string `name:"RoleType"`
|
||||
AssumeRoleFor string `name:"AssumeRoleFor"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupDnsConfig struct {
|
||||
NameServer []string `name:"NameServer"`
|
||||
Search []string `name:"Search"`
|
||||
Option *[]CreateContainerGroupOption `name:"Option"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupSecurityContext struct {
|
||||
Sysctl *[]CreateContainerGroupSysctl `name:"Sysctl"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupVolumeMount struct {
|
||||
MountPath string `name:"MountPath"`
|
||||
ReadOnly requests.Boolean `name:"ReadOnly"`
|
||||
Name string `name:"Name"`
|
||||
SubPath string `name:"SubPath"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupPort struct {
|
||||
Protocol string `name:"Protocol"`
|
||||
Port requests.Integer `name:"Port"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupEnvironmentVar struct {
|
||||
Key string `name:"Key"`
|
||||
Value string `name:"Value"`
|
||||
FieldRef CreateContainerGroupFieldRef `name:"FieldRef" type:"Struct"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupFieldRef struct {
|
||||
FieldPath string `name:"FieldPath"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupLifecyclePostStartHandlerHttpGetHttpHeader struct {
|
||||
Name string `name:"Name"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupLifecyclePreStopHandlerHttpGetHttpHeader struct {
|
||||
Name string `name:"Name"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupReadinessProbe struct {
|
||||
InitialDelaySeconds requests.Integer `name:"InitialDelaySeconds"`
|
||||
PeriodSeconds requests.Integer `name:"PeriodSeconds"`
|
||||
SuccessThreshold requests.Integer `name:"SuccessThreshold"`
|
||||
FailureThreshold requests.Integer `name:"FailureThreshold"`
|
||||
TimeoutSeconds requests.Integer `name:"TimeoutSeconds"`
|
||||
HttpGet CreateContainerGroupHttpGet `name:"HttpGet"`
|
||||
Exec CreateContainerGroupExec `name:"Exec"`
|
||||
TcpSocket CreateContainerGroupTcpSocket `name:"TcpSocket"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupHttpGet struct {
|
||||
Path string `name:"Path"`
|
||||
Port requests.Integer `name:"Port"`
|
||||
Scheme string `name:"Scheme"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupExec struct {
|
||||
Command []string `name:"Command"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupTcpSocket struct {
|
||||
Port requests.Integer `name:"Port"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupLivenessProbe struct {
|
||||
InitialDelaySeconds requests.Integer `name:"InitialDelaySeconds"`
|
||||
PeriodSeconds requests.Integer `name:"PeriodSeconds"`
|
||||
SuccessThreshold requests.Integer `name:"SuccessThreshold"`
|
||||
FailureThreshold requests.Integer `name:"FailureThreshold"`
|
||||
TimeoutSeconds requests.Integer `name:"TimeoutSeconds"`
|
||||
HttpGet CreateContainerGroupHttpGet `name:"HttpGet"`
|
||||
Exec CreateContainerGroupExec `name:"Exec"`
|
||||
TcpSocket CreateContainerGroupTcpSocket `name:"TcpSocket"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupNFSVolume struct {
|
||||
Server string `name:"Server"`
|
||||
Path string `name:"Path"`
|
||||
ReadOnly requests.Boolean `name:"ReadOnly"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupConfigFileVolume struct {
|
||||
ConfigFileToPath *[]CreateContainerGroupConfigFileToPath `name:"ConfigFileToPath"`
|
||||
DefaultModel requests.Integer `name:"DefaultModel"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupConfigFileToPath struct {
|
||||
Content string `name:"Content"`
|
||||
Path string `name:"Path"`
|
||||
Mode requests.Integer `name:"Mode"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupEmptyDirVolume struct {
|
||||
Medium string `name:"Medium"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupDiskVolume struct {
|
||||
DiskId string `name:"DiskId"`
|
||||
FsType string `name:"FsType"`
|
||||
DiskSize requests.Integer `name:"DiskSize"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupFlexVolume struct {
|
||||
Driver string `name:"Driver"`
|
||||
FsType string `name:"FsType"`
|
||||
Options string `name:"Options"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupHostPathVolume struct {
|
||||
Type string `name:"Type"`
|
||||
Path string `name:"Path"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupOption struct {
|
||||
Name string `name:"Name"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
type CreateContainerGroupSysctl struct {
|
||||
Name string `name:"Name"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
// CreateContainerGroupResponse is the response struct for api CreateContainerGroup
|
||||
type CreateContainerGroupResponse struct {
|
||||
*responses.BaseResponse
|
||||
RequestId string `json:"RequestId" xml:"RequestId"`
|
||||
ContainerGroupId string `json:"ContainerGroupId" xml:"ContainerGroupId"`
|
||||
}
|
||||
|
||||
// CreateCreateContainerGroupRequest creates a request to invoke CreateContainerGroup API
|
||||
func CreateCreateContainerGroupRequest() (request *CreateContainerGroupRequest) {
|
||||
request = &CreateContainerGroupRequest{
|
||||
RpcRequest: &requests.RpcRequest{},
|
||||
}
|
||||
request.InitWithApiInfo("Eci", "2018-08-08", "CreateContainerGroup", "eci", "openAPI")
|
||||
return
|
||||
}
|
||||
|
||||
// CreateCreateContainerGroupResponse creates a response to parse from CreateContainerGroup response
|
||||
func CreateCreateContainerGroupResponse() (response *CreateContainerGroupResponse) {
|
||||
response = &CreateContainerGroupResponse{
|
||||
BaseResponse: &responses.BaseResponse{},
|
||||
}
|
||||
return
|
||||
}
|
|
@ -0,0 +1,124 @@
|
|||
//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.
|
||||
|
||||
package ali
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"flag"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
|
||||
"github.com/golang/glog"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod/server"
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
// DeleteContainerGroup invokes the eci.DeleteContainerGroup API synchronously
|
||||
// api document: https://help.aliyun.com/api/eci/deletecontainergroup.html
|
||||
func DeleteContainerGroup(request *DeleteContainerGroupRequest) (response *DeleteContainerGroupResponse, err error) {
|
||||
|
||||
provider := pbtenant.CloudProvider(request.ProviderId)
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", "configs/config.yaml", "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
if err := tenanter.LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, tenanter.ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("tenanter.LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("tenanter.LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
var regionId int32
|
||||
switch request.ProviderId {
|
||||
case 0:
|
||||
regionId, _ = tenanter.GetAliRegionId(request.RegionId)
|
||||
case 1:
|
||||
regionId, _ = tenanter.GetTencentRegionId(request.RegionId)
|
||||
case 2:
|
||||
regionId, _ = tenanter.GetHuaweiRegionId(request.RegionId)
|
||||
case 3:
|
||||
regionId, _ = tenanter.GetK8SRegionId(request.RegionId)
|
||||
}
|
||||
podId := request.ContainerGroupId
|
||||
podName := request.ContainerGroupName
|
||||
|
||||
requestPCM := &pbpod.DeletePodReq{
|
||||
RequestSource: "ali",
|
||||
Provider: provider,
|
||||
AccountName: request.AccountName,
|
||||
PodId: podId,
|
||||
PodName: podName,
|
||||
Namespace: request.Namespace,
|
||||
RegionId: regionId,
|
||||
}
|
||||
|
||||
resp, err := server.DeletePod(nil, requestPCM)
|
||||
|
||||
response = &DeleteContainerGroupResponse{
|
||||
BaseResponse: nil,
|
||||
RequestId: resp.RequestId,
|
||||
}
|
||||
|
||||
return response, err
|
||||
|
||||
}
|
||||
|
||||
// DeleteContainerGroupRequest is the request struct for api DeleteContainerGroup
|
||||
type DeleteContainerGroupRequest struct {
|
||||
*requests.RpcRequest
|
||||
/*********PCM param************/
|
||||
RequestSource string `position:"Query" name:"RequestSource"`
|
||||
ProviderId int32 `position:"Query" name:"ProviderId"`
|
||||
AccountName string `position:"Query" name:"AccountName"`
|
||||
Namespace string `position:"Query" name:"Namespace"`
|
||||
ContainerGroupName string `position:"Query" name:"ContainerGroupName"`
|
||||
/*********PCM param************/
|
||||
OwnerId requests.Integer `position:"Query" name:"OwnerId"`
|
||||
ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
|
||||
ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
|
||||
OwnerAccount string `position:"Query" name:"OwnerAccount"`
|
||||
RegionId string `position:"Query" name:"RegionId"`
|
||||
ContainerGroupId string `position:"Query" name:"ContainerGroupId"`
|
||||
ClientToken string `position:"Query" name:"ClientToken"`
|
||||
VkClientVersion string `position:"Query" name:"VkClientVersion"`
|
||||
}
|
||||
|
||||
// DeleteContainerGroupResponse is the response struct for api DeleteContainerGroup
|
||||
type DeleteContainerGroupResponse struct {
|
||||
*responses.BaseResponse
|
||||
RequestId string `json:"RequestId" xml:"RequestId"`
|
||||
}
|
||||
|
||||
// CreateDeleteContainerGroupRequest creates a request to invoke DeleteContainerGroup API
|
||||
func CreateDeleteContainerGroupRequest() (request *DeleteContainerGroupRequest) {
|
||||
request = &DeleteContainerGroupRequest{
|
||||
RpcRequest: &requests.RpcRequest{},
|
||||
}
|
||||
request.InitWithApiInfo("Eci", "2018-08-08", "DeleteContainerGroup", "eci", "openAPI")
|
||||
return
|
||||
}
|
||||
|
||||
// CreateDeleteContainerGroupResponse creates a response to parse from DeleteContainerGroup response
|
||||
func CreateDeleteContainerGroupResponse() (response *DeleteContainerGroupResponse) {
|
||||
response = &DeleteContainerGroupResponse{
|
||||
BaseResponse: &responses.BaseResponse{},
|
||||
}
|
||||
return
|
||||
}
|
|
@ -0,0 +1,314 @@
|
|||
package ali
|
||||
|
||||
import (
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod/server"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
// DescribeContainerGroups invokes the eci.DescribeContainerGroups API synchronously
|
||||
// api document: https://help.aliyun.com/api/eci/describecontainergroups.html
|
||||
func DescribeContainerGroups(request *DescribeContainerGroupsRequest) (response *DescribeContainerGroupsResponse, err error) {
|
||||
|
||||
provider := pbtenant.CloudProvider(request.ProviderId)
|
||||
containerGroups := make([]DescribeContainerGroupsContainerGroup0, 0)
|
||||
//trans Ali request to PCM request
|
||||
requestPCM := &pbpod.ListPodReq{
|
||||
RequestSource: "ali",
|
||||
Provider: provider,
|
||||
Namespace: "pcm",
|
||||
}
|
||||
|
||||
resp, err := server.ListPod(nil, requestPCM)
|
||||
|
||||
//trans PCM response pod set to Ali ContainerGroup set
|
||||
for k := range resp.Pods {
|
||||
podId := resp.Pods[k].PodId
|
||||
podName := resp.Pods[k].PodName
|
||||
|
||||
containerGroup := new(DescribeContainerGroupsContainerGroup0)
|
||||
containerGroup.ContainerGroupName = podName
|
||||
containerGroup.ContainerGroupId = podId
|
||||
|
||||
containerGroups = append(containerGroups, *containerGroup)
|
||||
|
||||
}
|
||||
|
||||
response = &DescribeContainerGroupsResponse{
|
||||
BaseResponse: nil,
|
||||
RequestId: "",
|
||||
NextToken: "",
|
||||
TotalCount: 0,
|
||||
ContainerGroups: containerGroups,
|
||||
}
|
||||
|
||||
return response, nil
|
||||
}
|
||||
|
||||
// DescribeContainerGroupsRequest is the request struct for api DescribeContainerGroups
|
||||
type DescribeContainerGroupsRequest struct {
|
||||
*requests.RpcRequest
|
||||
/*********PCM param************/
|
||||
RequestSource string `position:"Query" name:"RequestSource"`
|
||||
ProviderId int32 `position:"Query" name:"ProviderId"`
|
||||
AccountName string `position:"Query" name:"AccountName"`
|
||||
Namespace string `position:"Query" name:"Namespace"`
|
||||
/*********PCM param************/
|
||||
OwnerId requests.Integer `position:"Query" name:"OwnerId"`
|
||||
ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
|
||||
ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
|
||||
OwnerAccount string `position:"Query" name:"OwnerAccount"`
|
||||
RegionId string `position:"Query" name:"RegionId"`
|
||||
ZoneId string `position:"Query" name:"ZoneId"`
|
||||
VSwitchId string `position:"Query" name:"VSwitchId"`
|
||||
NextToken string `position:"Query" name:"NextToken"`
|
||||
Limit requests.Integer `position:"Query" name:"Limit"`
|
||||
Tag *[]DescribeContainerGroupsTag `position:"Query" name:"Tag" type:"Repeated"`
|
||||
ContainerGroupIds string `position:"Query" name:"ContainerGroupIds"`
|
||||
ContainerGroupName string `position:"Query" name:"ContainerGroupName"`
|
||||
Status string `position:"Query" name:"Status"`
|
||||
VkClientVersion string `position:"Query" name:"VkClientVersion"`
|
||||
ResourceGroupId string `position:"Query" name:"ResourceGroupId"`
|
||||
WithEvent requests.Boolean `position:"Query" name:"WithEvent"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsTag struct {
|
||||
Key string `name:"Key"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
// DescribeContainerGroupsResponse is the response struct for api DescribeContainerGroups
|
||||
type DescribeContainerGroupsResponse struct {
|
||||
*responses.BaseResponse
|
||||
RequestId string `json:"RequestId" xml:"RequestId"`
|
||||
NextToken string `json:"NextToken" xml:"NextToken"`
|
||||
TotalCount int `json:"TotalCount" xml:"TotalCount"`
|
||||
ContainerGroups []DescribeContainerGroupsContainerGroup0 `json:"ContainerGroups" xml:"ContainerGroups"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsContainerGroup0 struct {
|
||||
ContainerGroupId string `json:"ContainerGroupId" xml:"ContainerGroupId"`
|
||||
ContainerGroupName string `json:"ContainerGroupName" xml:"ContainerGroupName"`
|
||||
RegionId string `json:"RegionId" xml:"RegionId"`
|
||||
ZoneId string `json:"ZoneId" xml:"ZoneId"`
|
||||
Memory float32 `json:"Memory" xml:"Memory"`
|
||||
Cpu float32 `json:"Cpu" xml:"Cpu"`
|
||||
VSwitchId string `json:"VSwitchId" xml:"VSwitchId"`
|
||||
SecurityGroupId string `json:"SecurityGroupId" xml:"SecurityGroupId"`
|
||||
RestartPolicy string `json:"RestartPolicy" xml:"RestartPolicy"`
|
||||
IntranetIp string `json:"IntranetIp" xml:"IntranetIp"`
|
||||
Status string `json:"Status" xml:"Status"`
|
||||
InternetIp string `json:"InternetIp" xml:"InternetIp"`
|
||||
CreationTime string `json:"CreationTime" xml:"CreationTime"`
|
||||
SucceededTime string `json:"SucceededTime" xml:"SucceededTime"`
|
||||
EniInstanceId string `json:"EniInstanceId" xml:"EniInstanceId"`
|
||||
InstanceType string `json:"InstanceType" xml:"InstanceType"`
|
||||
ExpiredTime string `json:"ExpiredTime" xml:"ExpiredTime"`
|
||||
FailedTime string `json:"FailedTime" xml:"FailedTime"`
|
||||
RamRoleName string `json:"RamRoleName" xml:"RamRoleName"`
|
||||
Ipv6Address string `json:"Ipv6Address" xml:"Ipv6Address"`
|
||||
VpcId string `json:"VpcId" xml:"VpcId"`
|
||||
Discount int `json:"Discount" xml:"Discount"`
|
||||
ResourceGroupId string `json:"ResourceGroupId" xml:"ResourceGroupId"`
|
||||
Tags []DescribeContainerGroupsLabel1 `json:"Tags" xml:"Tags"`
|
||||
Events []DescribeContainerGroupsEvent1 `json:"Events" xml:"Events"`
|
||||
Containers []DescribeContainerGroupsContainer1 `json:"Containers" xml:"Containers"`
|
||||
Volumes []DescribeContainerGroupsVolume1 `json:"Volumes" xml:"Volumes"`
|
||||
InitContainers []DescribeContainerGroupsContainer1 `json:"InitContainers" xml:"InitContainers"`
|
||||
HostAliases []DescribeContainerGroupsHostAliase1 `json:"HostAliases" xml:"HostAliases"`
|
||||
DnsConfig DescribeContainerGroupsDnsConfig1 `json:"DnsConfig" xml:"DnsConfig"`
|
||||
EciSecurityContext DescribeContainerGroupsEciSecurityContext1 `json:"EciSecurityContext" xml:"EciSecurityContext"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsLabel1 struct {
|
||||
Key string `json:"Key" xml:"Key"`
|
||||
Value string `json:"Value" xml:"Value"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsEvent1 struct {
|
||||
Count int `json:"Count" xml:"Count"`
|
||||
Type string `json:"Type" xml:"Type"`
|
||||
Name string `json:"Name" xml:"Name"`
|
||||
Message string `json:"Message" xml:"Message"`
|
||||
FirstTimestamp string `json:"FirstTimestamp" xml:"FirstTimestamp"`
|
||||
LastTimestamp string `json:"LastTimestamp" xml:"LastTimestamp"`
|
||||
Reason string `json:"Reason" xml:"Reason"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsContainer1 struct {
|
||||
Name string `json:"Name" xml:"Name"`
|
||||
Image string `json:"Image" xml:"Image"`
|
||||
Memory float32 `json:"Memory" xml:"Memory"`
|
||||
Cpu float32 `json:"Cpu" xml:"Cpu"`
|
||||
RestartCount int `json:"RestartCount" xml:"RestartCount"`
|
||||
WorkingDir string `json:"WorkingDir" xml:"WorkingDir"`
|
||||
ImagePullPolicy string `json:"ImagePullPolicy" xml:"ImagePullPolicy"`
|
||||
Ready bool `json:"Ready" xml:"Ready"`
|
||||
Gpu int `json:"Gpu" xml:"Gpu"`
|
||||
Stdin bool `json:"Stdin" xml:"Stdin"`
|
||||
StdinOnce bool `json:"StdinOnce" xml:"StdinOnce"`
|
||||
Tty bool `json:"Tty" xml:"Tty"`
|
||||
VolumeMounts []DescribeContainerGroupsVolumeMount2 `json:"VolumeMounts" xml:"VolumeMounts"`
|
||||
Ports []DescribeContainerGroupsPort2 `json:"Ports" xml:"Ports"`
|
||||
EnvironmentVars []DescribeContainerGroupsEnvironmentVar2 `json:"EnvironmentVars" xml:"EnvironmentVars"`
|
||||
Commands []string `json:"Commands" xml:"Commands"`
|
||||
Args []string `json:"Args" xml:"Args"`
|
||||
PreviousState DescribeContainerGroupsPreviousState2 `json:"PreviousState" xml:"PreviousState"`
|
||||
CurrentState DescribeContainerGroupsCurrentState2 `json:"CurrentState" xml:"CurrentState"`
|
||||
ReadinessProbe DescribeContainerGroupsReadinessProbe2 `json:"ReadinessProbe" xml:"ReadinessProbe"`
|
||||
LivenessProbe DescribeContainerGroupsLivenessProbe2 `json:"LivenessProbe" xml:"LivenessProbe"`
|
||||
SecurityContext DescribeContainerGroupsSecurityContext2 `json:"SecurityContext" xml:"SecurityContext"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsVolumeMount2 struct {
|
||||
Name string `json:"Name" xml:"Name"`
|
||||
MountPath string `json:"MountPath" xml:"MountPath"`
|
||||
ReadOnly bool `json:"ReadOnly" xml:"ReadOnly"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsPort2 struct {
|
||||
Port int `json:"Port" xml:"Port"`
|
||||
Protocol string `json:"Protocol" xml:"Protocol"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsEnvironmentVar2 struct {
|
||||
Key string `json:"Key" xml:"Key"`
|
||||
Value string `json:"Value" xml:"Value"`
|
||||
ValueFrom DescribeContainerGroupsValueFrom3 `json:"ValueFrom" xml:"ValueFrom"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsValueFrom3 struct {
|
||||
FieldRef DescribeContainerGroupsFieldRef4 `json:"FieldRef" xml:"FieldRef"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsFieldRef4 struct {
|
||||
FieldPath string `json:"FieldPath" xml:"FieldPath"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsPreviousState2 struct {
|
||||
State string `json:"State" xml:"State"`
|
||||
DetailStatus string `json:"DetailStatus" xml:"DetailStatus"`
|
||||
ExitCode int `json:"ExitCode" xml:"ExitCode"`
|
||||
StartTime string `json:"StartTime" xml:"StartTime"`
|
||||
FinishTime string `json:"FinishTime" xml:"FinishTime"`
|
||||
Reason string `json:"Reason" xml:"Reason"`
|
||||
Message string `json:"Message" xml:"Message"`
|
||||
Signal int `json:"Signal" xml:"Signal"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsCurrentState2 struct {
|
||||
State string `json:"State" xml:"State"`
|
||||
DetailStatus string `json:"DetailStatus" xml:"DetailStatus"`
|
||||
ExitCode int `json:"ExitCode" xml:"ExitCode"`
|
||||
StartTime string `json:"StartTime" xml:"StartTime"`
|
||||
FinishTime string `json:"FinishTime" xml:"FinishTime"`
|
||||
Reason string `json:"Reason" xml:"Reason"`
|
||||
Message string `json:"Message" xml:"Message"`
|
||||
Signal int `json:"Signal" xml:"Signal"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsReadinessProbe2 struct {
|
||||
InitialDelaySeconds int `json:"InitialDelaySeconds" xml:"InitialDelaySeconds"`
|
||||
PeriodSeconds int `json:"PeriodSeconds" xml:"PeriodSeconds"`
|
||||
TimeoutSeconds int `json:"TimeoutSeconds" xml:"TimeoutSeconds"`
|
||||
SuccessThreshold int `json:"SuccessThreshold" xml:"SuccessThreshold"`
|
||||
FailureThreshold int `json:"FailureThreshold" xml:"FailureThreshold"`
|
||||
Execs []string `json:"Execs" xml:"Execs"`
|
||||
HttpGet DescribeContainerGroupsHttpGet3 `json:"HttpGet" xml:"HttpGet"`
|
||||
TcpSocket DescribeContainerGroupsTcpSocket3 `json:"TcpSocket" xml:"TcpSocket"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsHttpGet3 struct {
|
||||
Path string `json:"Path" xml:"Path"`
|
||||
Port int `json:"Port" xml:"Port"`
|
||||
Scheme string `json:"Scheme" xml:"Scheme"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsTcpSocket3 struct {
|
||||
Host string `json:"Host" xml:"Host"`
|
||||
Port int `json:"Port" xml:"Port"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsLivenessProbe2 struct {
|
||||
InitialDelaySeconds int `json:"InitialDelaySeconds" xml:"InitialDelaySeconds"`
|
||||
PeriodSeconds int `json:"PeriodSeconds" xml:"PeriodSeconds"`
|
||||
TimeoutSeconds int `json:"TimeoutSeconds" xml:"TimeoutSeconds"`
|
||||
SuccessThreshold int `json:"SuccessThreshold" xml:"SuccessThreshold"`
|
||||
FailureThreshold int `json:"FailureThreshold" xml:"FailureThreshold"`
|
||||
Execs []string `json:"Execs" xml:"Execs"`
|
||||
HttpGet DescribeContainerGroupsHttpGet3 `json:"HttpGet" xml:"HttpGet"`
|
||||
TcpSocket DescribeContainerGroupsTcpSocket3 `json:"TcpSocket" xml:"TcpSocket"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsSecurityContext2 struct {
|
||||
ReadOnlyRootFilesystem bool `json:"ReadOnlyRootFilesystem" xml:"ReadOnlyRootFilesystem"`
|
||||
RunAsUser int64 `json:"RunAsUser" xml:"RunAsUser"`
|
||||
Capability DescribeContainerGroupsCapability3 `json:"Capability" xml:"Capability"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsCapability3 struct {
|
||||
Adds []string `json:"Adds" xml:"Adds"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsVolume1 struct {
|
||||
Type string `json:"Type" xml:"Type"`
|
||||
Name string `json:"Name" xml:"Name"`
|
||||
NFSVolumePath string `json:"NFSVolumePath" xml:"NFSVolumePath"`
|
||||
NFSVolumeServer string `json:"NFSVolumeServer" xml:"NFSVolumeServer"`
|
||||
NFSVolumeReadOnly bool `json:"NFSVolumeReadOnly" xml:"NFSVolumeReadOnly"`
|
||||
DiskVolumeDiskId string `json:"DiskVolumeDiskId" xml:"DiskVolumeDiskId"`
|
||||
DiskVolumeFsType string `json:"DiskVolumeFsType" xml:"DiskVolumeFsType"`
|
||||
FlexVolumeDriver string `json:"FlexVolumeDriver" xml:"FlexVolumeDriver"`
|
||||
FlexVolumeFsType string `json:"FlexVolumeFsType" xml:"FlexVolumeFsType"`
|
||||
FlexVolumeOptions string `json:"FlexVolumeOptions" xml:"FlexVolumeOptions"`
|
||||
ConfigFileVolumeConfigFileToPaths []DescribeContainerGroupsConfigFileVolumeConfigFileToPath2 `json:"ConfigFileVolumeConfigFileToPaths" xml:"ConfigFileVolumeConfigFileToPaths"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsConfigFileVolumeConfigFileToPath2 struct {
|
||||
Content string `json:"Content" xml:"Content"`
|
||||
Path string `json:"Path" xml:"Path"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsHostAliase1 struct {
|
||||
Ip string `json:"Ip" xml:"Ip"`
|
||||
Hostnames []string `json:"Hostnames" xml:"Hostnames"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsDnsConfig1 struct {
|
||||
Options []DescribeContainerGroupsOption2 `json:"Options" xml:"Options"`
|
||||
NameServers []string `json:"NameServers" xml:"NameServers"`
|
||||
Searches []string `json:"Searches" xml:"Searches"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsOption2 struct {
|
||||
Name string `json:"Name" xml:"Name"`
|
||||
Value string `json:"Value" xml:"Value"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsEciSecurityContext1 struct {
|
||||
Sysctls []DescribeContainerGroupsSysctl2 `json:"Sysctls" xml:"Sysctls"`
|
||||
}
|
||||
|
||||
type DescribeContainerGroupsSysctl2 struct {
|
||||
Name string `json:"Name" xml:"Name"`
|
||||
Value string `json:"Value" xml:"Value"`
|
||||
}
|
||||
|
||||
// CreateDescribeContainerGroupsRequest creates a request to invoke DescribeContainerGroups API
|
||||
func CreateDescribeContainerGroupsRequest() (request *DescribeContainerGroupsRequest) {
|
||||
request = &DescribeContainerGroupsRequest{
|
||||
RpcRequest: &requests.RpcRequest{},
|
||||
}
|
||||
request.InitWithApiInfo("Eci", "2018-08-08", "DescribeContainerGroups", "eci", "openAPI")
|
||||
return
|
||||
}
|
||||
|
||||
// CreateDescribeContainerGroupsResponse creates a response to parse from DescribeContainerGroups response
|
||||
func CreateDescribeContainerGroupsResponse() (response *DescribeContainerGroupsResponse) {
|
||||
response = &DescribeContainerGroupsResponse{
|
||||
BaseResponse: &responses.BaseResponse{},
|
||||
}
|
||||
return
|
||||
}
|
|
@ -0,0 +1,288 @@
|
|||
//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.
|
||||
|
||||
package ali
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"flag"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests"
|
||||
"github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses"
|
||||
"github.com/golang/glog"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod/server"
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
// UpdateContainerGroup invokes the eci.UpdateContainerGroup API synchronously
|
||||
// api document: https://help.aliyun.com/api/eci/updatecontainergroup.html
|
||||
func UpdateContainerGroup(request *UpdateContainerGroupRequest) (response *UpdateContainerGroupResponse, err error) {
|
||||
|
||||
provider := pbtenant.CloudProvider(request.ProviderId)
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", "configs/config.yaml", "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
if err := tenanter.LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, tenanter.ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("tenanter.LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("tenanter.LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
var regionId int32
|
||||
switch request.ProviderId {
|
||||
case 0:
|
||||
regionId, _ = tenanter.GetAliRegionId(request.RegionId)
|
||||
case 1:
|
||||
regionId, _ = tenanter.GetTencentRegionId(request.RegionId)
|
||||
case 2:
|
||||
regionId, _ = tenanter.GetHuaweiRegionId(request.RegionId)
|
||||
case 3:
|
||||
regionId, _ = tenanter.GetK8SRegionId(request.RegionId)
|
||||
}
|
||||
containers := *request.Container
|
||||
|
||||
requestPCM := &pbpod.UpdatePodReq{
|
||||
RequestSource: "ali",
|
||||
Provider: provider,
|
||||
AccountName: request.AccountName,
|
||||
PodId: request.ContainerGroupId,
|
||||
PodName: request.ContainerGroupName,
|
||||
Namespace: request.Namespace,
|
||||
RegionId: regionId,
|
||||
ContainerImage: containers[0].Image,
|
||||
ContainerName: containers[0].Name,
|
||||
CpuPod: string(containers[0].Cpu),
|
||||
MemoryPod: string(containers[0].Memory),
|
||||
RestartPolicy: request.RestartPolicy,
|
||||
Labels: "",
|
||||
}
|
||||
|
||||
resp, err := server.UpdatePod(nil, requestPCM)
|
||||
|
||||
response = &UpdateContainerGroupResponse{
|
||||
BaseResponse: nil,
|
||||
RequestId: resp.RequestId,
|
||||
}
|
||||
|
||||
return response, err
|
||||
}
|
||||
|
||||
// UpdateContainerGroupRequest is the request struct for api UpdateContainerGroup
|
||||
type UpdateContainerGroupRequest struct {
|
||||
*requests.RpcRequest
|
||||
/*********PCM param************/
|
||||
RequestSource string `position:"Query" name:"RequestSource"`
|
||||
ProviderId int32 `position:"Query" name:"ProviderId"`
|
||||
AccountName string `position:"Query" name:"AccountName"`
|
||||
Namespace string `position:"Query" name:"Namespace"`
|
||||
ContainerGroupName string `position:"Query" name:"ContainerGroupName"`
|
||||
/*********PCM param************/
|
||||
OwnerId requests.Integer `position:"Query" name:"OwnerId"`
|
||||
ResourceOwnerAccount string `position:"Query" name:"ResourceOwnerAccount"`
|
||||
ResourceOwnerId requests.Integer `position:"Query" name:"ResourceOwnerId"`
|
||||
OwnerAccount string `position:"Query" name:"OwnerAccount"`
|
||||
RegionId string `position:"Query" name:"RegionId"`
|
||||
ContainerGroupId string `position:"Query" name:"ContainerGroupId"`
|
||||
RestartPolicy string `position:"Query" name:"RestartPolicy"`
|
||||
Tag *[]UpdateContainerGroupTag `position:"Query" name:"Tag" type:"Repeated"`
|
||||
Volume *[]UpdateContainerGroupVolume `position:"Query" name:"Volume" type:"Repeated"`
|
||||
Container *[]UpdateContainerGroupContainer `position:"Query" name:"Container" type:"Repeated"`
|
||||
InitContainer *[]UpdateContainerGroupInitContainer `position:"Query" name:"InitContainer" type:"Repeated"`
|
||||
ImageRegistryCredential *[]UpdateContainerGroupImageRegistryCredential `position:"Query" name:"ImageRegistryCredential" type:"Repeated"`
|
||||
ClientToken string `position:"Query" name:"ClientToken"`
|
||||
Cpu requests.Float `position:"Query" name:"Cpu"`
|
||||
Memory requests.Float `position:"Query" name:"Memory"`
|
||||
DnsConfig UpdateContainerGroupDnsConfig `position:"Query" name:"DnsConfig" type:"Struct"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupTag struct {
|
||||
Key string `name:"Key"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupVolume struct {
|
||||
Name string `name:"Name"`
|
||||
Type string `name:"Type"`
|
||||
NFSVolume UpdateContainerGroupNFSVolume `name:"NFSVolume" type:"Struct"`
|
||||
ConfigFileVolume UpdateContainerGroupConfigFileVolume `name:"ConfigFileVolume" type:"Struct"`
|
||||
EmptyDirVolume UpdateContainerGroupEmptyDirVolume `name:"EmptyDirVolume" type:"Struct"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupContainer struct {
|
||||
Name string `name:"Name"`
|
||||
Image string `name:"Image"`
|
||||
Cpu requests.Float `name:"Cpu"`
|
||||
Memory requests.Float `name:"Memory"`
|
||||
WorkingDir string `name:"WorkingDir"`
|
||||
ImagePullPolicy string `name:"ImagePullPolicy"`
|
||||
Stdin requests.Boolean `name:"Stdin"`
|
||||
StdinOnce requests.Boolean `name:"StdinOnce"`
|
||||
Tty requests.Boolean `name:"Tty"`
|
||||
Command []string `name:"Command" type:"Repeated"`
|
||||
Arg []string `name:"Arg" type:"Repeated"`
|
||||
EnvironmentVar []string `name:"EnvironmentVar" type:"Repeated"`
|
||||
Port []string `name:"Port" type:"Repeated"`
|
||||
VolumeMount []string `name:"VolumeMount" type:"Repeated"`
|
||||
Gpu requests.Integer `name:"Gpu"`
|
||||
ReadinessProbe UpdateContainerGroupReadinessProbe `name:"ReadinessProbe" type:"Struct"`
|
||||
LivenessProbe UpdateContainerGroupLivenessProbe `name:"LivenessProbe" type:"Struct"`
|
||||
SecurityContext UpdateContainerGroupSecurityContext `name:"SecurityContext" type:"Struct"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupInitContainer struct {
|
||||
Name string `name:"Name"`
|
||||
Image string `name:"Image"`
|
||||
Cpu requests.Float `name:"Cpu"`
|
||||
Memory requests.Float `name:"Memory"`
|
||||
WorkingDir string `name:"WorkingDir"`
|
||||
ImagePullPolicy string `name:"ImagePullPolicy"`
|
||||
Stdin requests.Boolean `name:"Stdin"`
|
||||
StdinOnce requests.Boolean `name:"StdinOnce"`
|
||||
Tty requests.Boolean `name:"Tty"`
|
||||
Command []string `name:"Command" type:"Repeated"`
|
||||
Arg []string `name:"Arg" type:"Repeated"`
|
||||
EnvironmentVar *[]UpdateContainerGroupEnvironmentVar `name:"EnvironmentVar" type:"Repeated"`
|
||||
Port *[]UpdateContainerGroupPort `name:"Port" type:"Repeated"`
|
||||
VolumeMount *[]UpdateContainerGroupVolumeMount `name:"VolumeMount" type:"Repeated"`
|
||||
Gpu requests.Integer `name:"Gpu"`
|
||||
SecurityContext UpdateContainerGroupSecurityContext `name:"SecurityContext" type:"Struct"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupImageRegistryCredential struct {
|
||||
Server string `name:"Server"`
|
||||
UserName string `name:"UserName"`
|
||||
Password string `name:"Password"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupDnsConfig struct {
|
||||
NameServer []string `name:"NameServer"`
|
||||
Search []string `name:"Search"`
|
||||
Option *[]UpdateContainerGroupOption `name:"Option"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupNFSVolume struct {
|
||||
Server string `name:"Server"`
|
||||
Path string `name:"Path"`
|
||||
ReadOnly requests.Boolean `name:"ReadOnly"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupConfigFileVolume struct {
|
||||
ConfigFileToPath *[]UpdateContainerGroupConfigFileToPath `name:"ConfigFileToPath"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupConfigFileToPath struct {
|
||||
Content string `name:"Content"`
|
||||
Path string `name:"Path"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupEmptyDirVolume struct {
|
||||
Medium string `name:"Medium"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupReadinessProbe struct {
|
||||
InitialDelaySeconds requests.Integer `name:"InitialDelaySeconds"`
|
||||
PeriodSeconds requests.Integer `name:"PeriodSeconds"`
|
||||
SuccessThreshold requests.Integer `name:"SuccessThreshold"`
|
||||
FailureThreshold requests.Integer `name:"FailureThreshold"`
|
||||
TimeoutSeconds requests.Integer `name:"TimeoutSeconds"`
|
||||
TcpSocket UpdateContainerGroupTcpSocket `name:"TcpSocket"`
|
||||
Exec UpdateContainerGroupExec `name:"Exec"`
|
||||
HttpGet UpdateContainerGroupHttpGet `name:"HttpGet"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupTcpSocket struct {
|
||||
Port requests.Integer `name:"Port"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupExec struct {
|
||||
Command []string `name:"Command"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupHttpGet struct {
|
||||
Path string `name:"Path"`
|
||||
Port requests.Integer `name:"Port"`
|
||||
Scheme string `name:"Scheme"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupLivenessProbe struct {
|
||||
InitialDelaySeconds requests.Integer `name:"InitialDelaySeconds"`
|
||||
PeriodSeconds requests.Integer `name:"PeriodSeconds"`
|
||||
SuccessThreshold requests.Integer `name:"SuccessThreshold"`
|
||||
FailureThreshold requests.Integer `name:"FailureThreshold"`
|
||||
TimeoutSeconds requests.Integer `name:"TimeoutSeconds"`
|
||||
TcpSocket UpdateContainerGroupTcpSocket `name:"TcpSocket"`
|
||||
Exec UpdateContainerGroupExec `name:"Exec"`
|
||||
HttpGet UpdateContainerGroupHttpGet `name:"HttpGet"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupSecurityContext struct {
|
||||
ReadOnlyRootFilesystem requests.Boolean `name:"ReadOnlyRootFilesystem"`
|
||||
RunAsUser requests.Integer `name:"RunAsUser"`
|
||||
Capability UpdateContainerGroupCapability `name:"Capability"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupCapability struct {
|
||||
Add []string `name:"Add"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupEnvironmentVar struct {
|
||||
Key string `name:"Key"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupPort struct {
|
||||
Port requests.Integer `name:"Port"`
|
||||
Protocol string `name:"Protocol"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupVolumeMount struct {
|
||||
Name string `name:"Name"`
|
||||
MountPath string `name:"MountPath"`
|
||||
SubPath string `name:"SubPath"`
|
||||
ReadOnly requests.Boolean `name:"ReadOnly"`
|
||||
}
|
||||
|
||||
type UpdateContainerGroupOption struct {
|
||||
Name string `name:"Name"`
|
||||
Value string `name:"Value"`
|
||||
}
|
||||
|
||||
// UpdateContainerGroupResponse is the response struct for api UpdateContainerGroup
|
||||
type UpdateContainerGroupResponse struct {
|
||||
*responses.BaseResponse
|
||||
RequestId string `json:"RequestId" xml:"RequestId"`
|
||||
}
|
||||
|
||||
// CreateUpdateContainerGroupRequest creates a request to invoke UpdateContainerGroup API
|
||||
func CreateUpdateContainerGroupRequest() (request *UpdateContainerGroupRequest) {
|
||||
request = &UpdateContainerGroupRequest{
|
||||
RpcRequest: &requests.RpcRequest{},
|
||||
}
|
||||
request.InitWithApiInfo("Eci", "2018-08-08", "UpdateContainerGroup", "eci", "openAPI")
|
||||
return
|
||||
}
|
||||
|
||||
// CreateUpdateContainerGroupResponse creates a response to parse from UpdateContainerGroup response
|
||||
func CreateUpdateContainerGroupResponse() (response *UpdateContainerGroupResponse) {
|
||||
response = &UpdateContainerGroupResponse{
|
||||
BaseResponse: &responses.BaseResponse{},
|
||||
}
|
||||
return
|
||||
}
|
|
@ -1,11 +1,12 @@
|
|||
package pod
|
||||
package server
|
||||
|
||||
import (
|
||||
"context"
|
||||
"flag"
|
||||
"fmt"
|
||||
"sync"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod_adaptor/service/poder"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod/service"
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
|
@ -125,7 +126,22 @@ func DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpod.DeletePodRe
|
|||
var (
|
||||
pod poder.Poder
|
||||
)
|
||||
//pcm adk过来的请求需要从用户本地读取配置文件
|
||||
if len(req.RequestSource) > 0 {
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", "configs/config.yaml", "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
if err := tenanter.LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, tenanter.ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("tenanter.LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("tenanter.LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
}
|
||||
tenanters, err := tenanter.GetTenanters(req.Provider)
|
||||
if err != nil {
|
||||
return nil, errors.WithMessage(err, "getTenanters error")
|
||||
|
@ -152,7 +168,22 @@ func UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbpod.UpdatePodRe
|
|||
var (
|
||||
pod poder.Poder
|
||||
)
|
||||
//pcm adk过来的请求需要从用户本地读取配置文件
|
||||
if len(req.RequestSource) > 0 {
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", "configs/config.yaml", "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
if err := tenanter.LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, tenanter.ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("tenanter.LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("tenanter.LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
}
|
||||
tenanters, err := tenanter.GetTenanters(req.Provider)
|
||||
if err != nil {
|
||||
return nil, errors.WithMessage(err, "getTenanters error")
|
||||
|
@ -207,12 +238,27 @@ func ListPod(ctx context.Context, req *pbpod.ListPodReq) (*pbpod.ListPodResp, er
|
|||
wg sync.WaitGroup
|
||||
mutex sync.Mutex
|
||||
pods []*pbpod.PodInstance
|
||||
tenanters []tenanter.Tenanter
|
||||
)
|
||||
//pcm adk过来的请求需要从用户本地读取配置文件
|
||||
if len(req.RequestSource) > 0 {
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", "configs/config.yaml", "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
tenanters, err := tenanter.GetTenanters(req.Provider)
|
||||
if err != nil {
|
||||
return nil, errors.WithMessage(err, "getTenanters error")
|
||||
if err := tenanter.LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, tenanter.ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("tenanter.LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("tenanter.LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
}
|
||||
|
||||
tenanters, _ = tenanter.GetTenanters(req.Provider)
|
||||
|
||||
//get the available region for product
|
||||
reqPodRegion := &pbpod.GetPodRegionReq{Provider: req.GetProvider()}
|
||||
respPodRegion, err := GetPodRegion(ctx, reqPodRegion)
|
|
@ -120,7 +120,7 @@ func (eci *AliEci) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbp
|
|||
|
||||
deleteContainerGroupRequest := alieci.CreateDeleteContainerGroupRequest()
|
||||
deleteContainerGroupRequest.RegionId = eci.region.GetName()
|
||||
deleteContainerGroupRequest.ContainerGroupId = req.PodId
|
||||
deleteContainerGroupRequest.ContainerGroupId = req.PcmId
|
||||
|
||||
resp, err := eci.cli.DeleteContainerGroup(deleteContainerGroupRequest)
|
||||
isFinished := true
|
||||
|
@ -143,7 +143,7 @@ func (eci *AliEci) UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbp
|
|||
|
||||
updateContainerGroupRequest := alieci.CreateUpdateContainerGroupRequest()
|
||||
updateContainerGroupRequest.RegionId = eci.region.GetName()
|
||||
updateContainerGroupRequest.ContainerGroupId = req.PodId
|
||||
updateContainerGroupRequest.ContainerGroupId = req.PcmId
|
||||
|
||||
updateContainerRequestContainer := make([]alieci.UpdateContainerGroupContainer, 1)
|
||||
updateContainerRequestContainer[0].Image = req.ContainerImage
|
||||
|
@ -184,6 +184,7 @@ func (eci *AliEci) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetailRe
|
|||
ecies[k] = &pbpod.PodInstance{
|
||||
Provider: pbtenant.CloudProvider_ali,
|
||||
AccountName: eci.tenanter.AccountName(),
|
||||
PcmId: v.ContainerGroupId,
|
||||
PodId: v.ContainerGroupId,
|
||||
PodName: v.ContainerGroupName,
|
||||
RegionId: eci.region.GetId(),
|
|
@ -148,7 +148,7 @@ func (cci *HuaweiCci) CreatePod(ctx context.Context, req *pbpod.CreatePodReq) (*
|
|||
|
||||
func (cci *HuaweiCci) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpod.DeletePodResp, error) {
|
||||
|
||||
err := cci.cli.CoreV1().Pods(req.GetNamespace()).Delete(context.TODO(), req.PodName, metav1.DeleteOptions{})
|
||||
err := cci.cli.CoreV1().Pods(req.GetNamespace()).Delete(context.TODO(), req.PcmId, metav1.DeleteOptions{})
|
||||
|
||||
isFinished := true
|
||||
if err != nil {
|
||||
|
@ -169,7 +169,7 @@ func (cci *HuaweiCci) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*
|
|||
|
||||
func (cci *HuaweiCci) UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbpod.UpdatePodResp, error) {
|
||||
|
||||
qresp, err := cci.cli.CoreV1().Pods(req.GetNamespace()).Get(context.TODO(), req.PodName, metav1.GetOptions{})
|
||||
qresp, err := cci.cli.CoreV1().Pods(req.GetNamespace()).Get(context.TODO(), req.PcmId, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "Huaweiyun UpdatePod error")
|
||||
}
|
||||
|
@ -218,6 +218,7 @@ func (cci *HuaweiCci) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetai
|
|||
pods[k] = &pbpod.PodInstance{
|
||||
Provider: pbtenant.CloudProvider_huawei,
|
||||
AccountName: cci.tenanter.AccountName(),
|
||||
PcmId: v.Name,
|
||||
PodId: string(v.GetUID()),
|
||||
PodName: v.Name,
|
||||
RegionId: cci.region.GetId(),
|
|
@ -135,7 +135,7 @@ func (k *K8SPoder) CreatePod(ctx context.Context, req *pbpod.CreatePodReq) (*pbp
|
|||
|
||||
func (k K8SPoder) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpod.DeletePodResp, error) {
|
||||
|
||||
podName := req.PodName
|
||||
podName := req.PcmId
|
||||
fmt.Println("K8S ContainerGroup:", podName, " Deleted")
|
||||
err := k.cli.CoreV1().Pods(req.Namespace).Delete(context.TODO(), podName, metav1.DeleteOptions{})
|
||||
|
||||
|
@ -157,14 +157,14 @@ func (k K8SPoder) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpo
|
|||
|
||||
func (k K8SPoder) UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbpod.UpdatePodResp, error) {
|
||||
|
||||
qresp, err := k.cli.CoreV1().Pods(req.GetNamespace()).Get(context.TODO(), req.PodName, metav1.GetOptions{})
|
||||
qresp, err := k.cli.CoreV1().Pods(req.GetNamespace()).Get(context.TODO(), req.PcmId, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return nil, errors.Wrap(err, "K8S UpdatePod error")
|
||||
}
|
||||
pod := corev1.Pod{
|
||||
TypeMeta: qresp.TypeMeta,
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: req.PodName,
|
||||
Name: req.PcmId,
|
||||
Namespace: req.Namespace,
|
||||
Labels: map[string]string{"name": req.Labels},
|
||||
},
|
||||
|
@ -204,6 +204,7 @@ func (k K8SPoder) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetailReq
|
|||
pods[k] = &pbpod.PodInstance{
|
||||
Provider: pbtenant.CloudProvider_k8s,
|
||||
AccountName: req.AccountName,
|
||||
PcmId: v.Name,
|
||||
PodId: string(v.GetUID()),
|
||||
PodName: v.Name,
|
||||
ContainerImage: v.Spec.Containers[0].Image,
|
|
@ -2,7 +2,6 @@ package poder
|
|||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
|
@ -36,8 +36,9 @@ func (eks TencentEks) GetPodRegion(ctx context.Context, req *pbpod.GetPodRegionR
|
|||
}
|
||||
for _, eksRegion := range resp.Response.Regions {
|
||||
|
||||
regionId, _ := tenanter.GetTencentRegionId(*eksRegion.RegionName)
|
||||
regionPod := &pbtenant.Region{
|
||||
Id: int32(*eksRegion.RegionId),
|
||||
Id: regionId,
|
||||
Name: *eksRegion.RegionName,
|
||||
}
|
||||
regions = append(regions, regionPod)
|
||||
|
@ -131,7 +132,7 @@ func (eks TencentEks) CreatePod(ctx context.Context, req *pbpod.CreatePodReq) (*
|
|||
func (eks *TencentEks) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpod.DeletePodResp, error) {
|
||||
request := tencenteks.NewDeleteEKSContainerInstancesRequest()
|
||||
request.EksCiIds = make([]*string, 1)
|
||||
request.EksCiIds[0] = &req.PodId
|
||||
request.EksCiIds[0] = &req.PcmId
|
||||
resp, err := eks.cli.DeleteEKSContainerInstances(request)
|
||||
|
||||
isFinished := true
|
||||
|
@ -153,7 +154,7 @@ func (eks *TencentEks) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (
|
|||
func (eks *TencentEks) UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbpod.UpdatePodResp, error) {
|
||||
//创建更新pod请求
|
||||
request := tencenteks.NewUpdateEKSContainerInstanceRequest()
|
||||
request.EksCiId = &req.PodId
|
||||
request.EksCiId = &req.PcmId
|
||||
request.RestartPolicy = &req.RestartPolicy
|
||||
request.Name = &req.PodName
|
||||
cpu, err := strconv.ParseFloat(req.CpuPod, 64)
|
||||
|
@ -192,6 +193,7 @@ func (eks TencentEks) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetai
|
|||
ekspods[k] = &pbpod.PodInstance{
|
||||
Provider: pbtenant.CloudProvider_tencent,
|
||||
AccountName: eks.tenanter.AccountName(),
|
||||
PcmId: *v.EksCiId,
|
||||
PodId: *v.EksCiId,
|
||||
PodName: *v.EksCiName,
|
||||
RegionId: eks.region.GetId(),
|
||||
|
@ -212,7 +214,7 @@ func (eks TencentEks) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetai
|
|||
isFinished = true
|
||||
}
|
||||
|
||||
glog.Infof("--------------------K8S Pod Instance deleted--------------------")
|
||||
glog.Infof("--------------------K8S Pod Instance listed--------------------")
|
||||
|
||||
return &pbpod.ListPodDetailResp{
|
||||
Pods: ekspods,
|
|
@ -1,33 +0,0 @@
|
|||
package pod
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
var (
|
||||
aliTenant, tcTenant, hwTenant, awsTenant []tenanter.Tenanter
|
||||
)
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
err := tenanter.LoadCloudConfigs("../../../../configs/config.yaml")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
if aliTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_ali); err != nil {
|
||||
panic("get aliTenant failed")
|
||||
}
|
||||
if tcTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_tencent); err != nil {
|
||||
panic("get tcTenant failed")
|
||||
}
|
||||
if hwTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_huawei); err != nil {
|
||||
panic("get hwTenant failed")
|
||||
}
|
||||
//if awsTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_aws); err != nil {
|
||||
// panic("get awsTenant failed")
|
||||
//}
|
||||
os.Exit(m.Run())
|
||||
}
|
|
@ -1,83 +0,0 @@
|
|||
package pod
|
||||
|
||||
import (
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
func TestListDetail(t *testing.T) {
|
||||
type args struct {
|
||||
req *pbpod.ListPodDetailReq
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
args args
|
||||
wantErr bool
|
||||
}{
|
||||
{name: "ali", args: args{req: &pbpod.ListPodDetailReq{Provider: pbtenant.CloudProvider_ali, RegionId: int32(pbtenant.AliRegionId_ali_cn_hangzhou), PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
{name: "tencent", args: args{req: &pbpod.ListPodDetailReq{Provider: pbtenant.CloudProvider_tencent, RegionId: int32(pbtenant.TencentRegionId_tc_ap_beijing), PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
{name: "aws", args: args{req: &pbpod.ListPodDetailReq{Provider: pbtenant.CloudProvider_aws, RegionId: int32(pbtenant.AwsRegionId_aws_us_east_2), PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
got, err := ListPodDetail(context.Background(), tt.args.req)
|
||||
if (err != nil) != tt.wantErr {
|
||||
t.Errorf("ListDetail() error = %+v, wantErr %v", err, tt.wantErr)
|
||||
return
|
||||
}
|
||||
t.Log(got)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestList(t *testing.T) {
|
||||
type args struct {
|
||||
req *pbpod.ListPodReq
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
args args
|
||||
wantErr bool
|
||||
}{
|
||||
{name: "ali", args: args{req: &pbpod.ListPodReq{Provider: pbtenant.CloudProvider_ali}}, wantErr: false},
|
||||
{name: "tencent", args: args{req: &pbpod.ListPodReq{Provider: pbtenant.CloudProvider_tencent}}, wantErr: false},
|
||||
{name: "huawei", args: args{req: &pbpod.ListPodReq{Provider: pbtenant.CloudProvider_huawei}}, wantErr: false},
|
||||
{name: "aws", args: args{req: &pbpod.ListPodReq{Provider: pbtenant.CloudProvider_aws}}, wantErr: false},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
got, err := ListPod(context.Background(), tt.args.req)
|
||||
if (err != nil) != tt.wantErr {
|
||||
t.Errorf("List() error = %+v, wantErr %v", err, tt.wantErr)
|
||||
return
|
||||
}
|
||||
t.Log(got)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestListAll(t *testing.T) {
|
||||
type args struct {
|
||||
req *pbpod.ListPodReq
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
args args
|
||||
wantErr bool
|
||||
}{
|
||||
{name: "all", args: args{req: &pbpod.ListPodReq{}}, wantErr: false},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
got, err := ListPodAll(context.Background())
|
||||
if (err != nil) != tt.wantErr {
|
||||
t.Errorf("ListAll() error = %+v, wantErr %v", err, tt.wantErr)
|
||||
return
|
||||
}
|
||||
t.Log(got)
|
||||
})
|
||||
}
|
||||
}
|
|
@ -1,33 +0,0 @@
|
|||
package poder
|
||||
|
||||
import (
|
||||
"os"
|
||||
"testing"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
var (
|
||||
aliTenant, tcTenant, hwTenant, awsTenant []tenanter.Tenanter
|
||||
)
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
err := tenanter.LoadCloudConfigs("../../../config.yaml")
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
if aliTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_ali); err != nil {
|
||||
panic("get aliTenant failed")
|
||||
}
|
||||
if tcTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_tencent); err != nil {
|
||||
panic("get tcTenant failed")
|
||||
}
|
||||
if hwTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_huawei); err != nil {
|
||||
panic("get hwTenant failed")
|
||||
}
|
||||
if awsTenant, err = tenanter.GetTenanters(pbtenant.CloudProvider_k8s); err != nil {
|
||||
panic("get awsTenant failed")
|
||||
}
|
||||
os.Exit(m.Run())
|
||||
}
|
|
@ -1,70 +0,0 @@
|
|||
package poder
|
||||
|
||||
import (
|
||||
"context"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
"testing"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
)
|
||||
|
||||
func TestEcser_ListDetail(t *testing.T) {
|
||||
region, _ := tenanter.NewRegion(pbtenant.CloudProvider_ali, int32(pbtenant.AliRegionId_ali_cn_hangzhou))
|
||||
ali, _ := NewPodClient(pbtenant.CloudProvider_ali, region, aliTenant[0])
|
||||
aliFailed, _ := NewPodClient(pbtenant.CloudProvider_ali, region, tenanter.NewTenantWithAccessKey("empty", "", "", "", ""))
|
||||
|
||||
region, _ = tenanter.NewRegion(pbtenant.CloudProvider_tencent, int32(pbtenant.TencentRegionId_tc_ap_beijing))
|
||||
tc, _ := NewPodClient(pbtenant.CloudProvider_tencent, region, tcTenant[0])
|
||||
tcFailed, _ := NewPodClient(pbtenant.CloudProvider_tencent, region, tenanter.NewTenantWithAccessKey("empty", "", "", "", ""))
|
||||
|
||||
region, _ = tenanter.NewRegion(pbtenant.CloudProvider_huawei, int32(pbtenant.HuaweiRegionId_hw_cn_southwest_2))
|
||||
hw, _ := NewPodClient(pbtenant.CloudProvider_huawei, region, hwTenant[0])
|
||||
// hwFailed, _ := newHuaweiEcsClient(int32(pbtenant.HuaweiRegionId_hw_cn_north_1), tenanter.NewTenantWithAccessKey("empty", "", "", ""))
|
||||
|
||||
region, _ = tenanter.NewRegion(pbtenant.CloudProvider_k8s, int32(pbtenant.AwsRegionId_aws_us_east_2))
|
||||
aws, _ := NewPodClient(pbtenant.CloudProvider_k8s, region, awsTenant[0])
|
||||
|
||||
// google, _ := NewGoogleEcsClient(tenanter.NewTenantWithAccessKey("", ""))
|
||||
|
||||
type args struct {
|
||||
req *pbpod.ListPodDetailReq
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
fields Poder
|
||||
args args
|
||||
wantErr bool
|
||||
}{
|
||||
{name: "ali wrong cli", fields: aliFailed, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 1}}, wantErr: true},
|
||||
{name: "ali wrong page number", fields: ali, args: args{&pbpod.ListPodDetailReq{PageNumber: 0, PageSize: 1}}, wantErr: true},
|
||||
{name: "ali wrong page size", fields: ali, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 0}}, wantErr: true},
|
||||
{name: "ali right cli", fields: ali, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
|
||||
{name: "tc wrong cli", fields: tcFailed, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 1}}, wantErr: true},
|
||||
{name: "tc wrong page number", fields: tc, args: args{&pbpod.ListPodDetailReq{PageNumber: 0, PageSize: 1}}, wantErr: true},
|
||||
{name: "tc wrong page size", fields: tc, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 0}}, wantErr: true},
|
||||
{name: "tc right cli", fields: tc, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
|
||||
// {name: "hw wrong cli", fields: hwFailed, args: args{pageNumber: 1, pageSize: 1}, wantErr: true},
|
||||
{name: "hw right cli", fields: hw, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
|
||||
{name: "aws right cli", fields: aws, args: args{&pbpod.ListPodDetailReq{PageNumber: 1, PageSize: 10}}, wantErr: false},
|
||||
|
||||
// {name: "right cli", fields: google, args: args{pageNumber: 1, pageSize: 10}, wantErr: false},
|
||||
}
|
||||
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
resp, err := tt.fields.ListPodDetail(context.Background(), tt.args.req)
|
||||
if (err != nil) != tt.wantErr {
|
||||
t.Errorf("ListDetail() error = %+v, wantErr %v", err, tt.wantErr)
|
||||
return
|
||||
}
|
||||
t.Logf("%+v", err)
|
||||
if err == nil {
|
||||
t.Log(resp)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
|
@ -6,7 +6,7 @@ import (
|
|||
|
||||
"github.com/golang/glog"
|
||||
"github.com/pkg/errors"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/vm_adaptor/service/ecser"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/vm/service/ecser"
|
||||
"gitlink.org.cn/JCCE/PCM/common/tenanter"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbecs"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
|
@ -3,7 +3,7 @@ package server
|
|||
import (
|
||||
"context"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/vm_adaptor/server/ecs"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/vm/server/ecs"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbecs"
|
||||
|
||||
"github.com/golang/glog"
|
||||
|
|
|
@ -2,8 +2,8 @@ package server
|
|||
|
||||
import (
|
||||
"context"
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod/server"
|
||||
|
||||
"gitlink.org.cn/JCCE/PCM/adaptor/pod_adaptor/server/pod"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbpod"
|
||||
|
||||
"github.com/golang/glog"
|
||||
|
@ -13,7 +13,7 @@ import (
|
|||
|
||||
// GetProdRegions get available region for product
|
||||
func (s *Server) GetProdRegions(ctx context.Context, req *pbpod.GetPodRegionReq) (*pbpod.GetPodRegionResp, error) {
|
||||
resp, err := pod.GetPodRegion(ctx, req)
|
||||
resp, err := server.GetPodRegion(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("CreatePods error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -23,7 +23,7 @@ func (s *Server) GetProdRegions(ctx context.Context, req *pbpod.GetPodRegionReq)
|
|||
|
||||
// CreatePods create multiple pod on multiple clouds
|
||||
func (s *Server) CreatePods(ctx context.Context, req *pbpod.CreatePodsReq) (*pbpod.CreatePodsResp, error) {
|
||||
resp, err := pod.CreatePods(ctx, req)
|
||||
resp, err := server.CreatePods(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("CreatePods error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -33,7 +33,7 @@ func (s *Server) CreatePods(ctx context.Context, req *pbpod.CreatePodsReq) (*pbp
|
|||
|
||||
// CreatePod create pod on one cloud
|
||||
func (s *Server) CreatePod(ctx context.Context, req *pbpod.CreatePodReq) (*pbpod.CreatePodResp, error) {
|
||||
resp, err := pod.CreatePod(ctx, req)
|
||||
resp, err := server.CreatePod(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("CreatePod error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -43,7 +43,7 @@ func (s *Server) CreatePod(ctx context.Context, req *pbpod.CreatePodReq) (*pbpod
|
|||
|
||||
// DeletePod delete specified pod
|
||||
func (s *Server) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpod.DeletePodResp, error) {
|
||||
resp, err := pod.DeletePod(ctx, req)
|
||||
resp, err := server.DeletePod(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("DeletePod error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -53,7 +53,7 @@ func (s *Server) DeletePod(ctx context.Context, req *pbpod.DeletePodReq) (*pbpod
|
|||
|
||||
// UpdatePod update specified pod
|
||||
func (s *Server) UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbpod.UpdatePodResp, error) {
|
||||
resp, err := pod.UpdatePod(ctx, req)
|
||||
resp, err := server.UpdatePod(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("UpdatePod error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -62,7 +62,7 @@ func (s *Server) UpdatePod(ctx context.Context, req *pbpod.UpdatePodReq) (*pbpod
|
|||
}
|
||||
|
||||
func (s *Server) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetailReq) (*pbpod.ListPodDetailResp, error) {
|
||||
resp, err := pod.ListPodDetail(ctx, req)
|
||||
resp, err := server.ListPodDetail(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("ListPodDetail error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -71,7 +71,7 @@ func (s *Server) ListPodDetail(ctx context.Context, req *pbpod.ListPodDetailReq)
|
|||
}
|
||||
|
||||
func (s *Server) ListPod(ctx context.Context, req *pbpod.ListPodReq) (*pbpod.ListPodResp, error) {
|
||||
resp, err := pod.ListPod(ctx, req)
|
||||
resp, err := server.ListPod(ctx, req)
|
||||
if err != nil {
|
||||
glog.Errorf("ListPod error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
@ -80,7 +80,7 @@ func (s *Server) ListPod(ctx context.Context, req *pbpod.ListPodReq) (*pbpod.Lis
|
|||
}
|
||||
|
||||
func (s *Server) ListPodAll(ctx context.Context, req *pbpod.ListPodAllReq) (*pbpod.ListPodResp, error) {
|
||||
resp, err := pod.ListPodAll(ctx)
|
||||
resp, err := server.ListPodAll(ctx)
|
||||
if err != nil {
|
||||
glog.Errorf("ListPodAll error %+v", err)
|
||||
return nil, status.Errorf(codes.Internal, err.Error())
|
||||
|
|
|
@ -117,6 +117,16 @@ func GetTencentRegionName(regionId int32) (string, error) {
|
|||
return region[3:], nil
|
||||
}
|
||||
|
||||
// GetTencentRegionId prefix tc_
|
||||
func GetTencentRegionId(regionName string) (int32, error) {
|
||||
regionName = "tc_" + strings.ReplaceAll(regionName, "-", "_")
|
||||
id, ok := pbtenant.TencentRegionId_value[regionName]
|
||||
if !ok || regionName == "" {
|
||||
return 0, errors.WithMessagef(ErrNoExistAliRegionId, "input region id is %s", regionName)
|
||||
}
|
||||
return id, nil
|
||||
}
|
||||
|
||||
// GetHuaweiRegionName prefix huawei
|
||||
func GetHuaweiRegionName(regionId int32) (string, error) {
|
||||
name, ok := pbtenant.HuaweiRegionId_name[regionId]
|
||||
|
@ -149,12 +159,7 @@ func GetK8SRegionName(regionId int32) (string, error) {
|
|||
|
||||
// GetK8SRegionId prefix ali_
|
||||
func GetK8SRegionId(regionName string) (int32, error) {
|
||||
regionName = "ali_" + strings.ReplaceAll(regionName, "-", "_")
|
||||
id, ok := pbtenant.AliRegionId_value[regionName]
|
||||
if !ok || regionName == "" {
|
||||
return 0, errors.WithMessagef(ErrNoExistAliRegionId, "input region id is %s", regionName)
|
||||
}
|
||||
return id, nil
|
||||
return 0, nil
|
||||
}
|
||||
|
||||
// GetAwsRegionName prefix aws_
|
||||
|
|
|
@ -2,6 +2,8 @@ package tenanter
|
|||
|
||||
import (
|
||||
"encoding/json"
|
||||
"flag"
|
||||
"github.com/golang/glog"
|
||||
"gitlink.org.cn/JCCE/PCM/lan_trans/idl/pbtenant"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
|
@ -99,3 +101,19 @@ func GetTenanters(provider pbtenant.CloudProvider) ([]Tenanter, error) {
|
|||
}
|
||||
return tenanters, nil
|
||||
}
|
||||
|
||||
func GenTenanter(configPath string) {
|
||||
var configFile string
|
||||
flag.StringVar(&configFile, "conf", configPath, "config.yaml")
|
||||
flag.Parse()
|
||||
defer glog.Flush()
|
||||
|
||||
if err := LoadCloudConfigsFromFile(configFile); err != nil {
|
||||
if !errors.Is(err, ErrLoadTenanterFileEmpty) {
|
||||
glog.Fatalf("LoadCloudConfigsFromFile error %+v", err)
|
||||
}
|
||||
glog.Warningf("LoadCloudConfigsFromFile empty file path %s", configFile)
|
||||
}
|
||||
|
||||
glog.Infof("load tenant from file finished")
|
||||
}
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
//// This file is auto-generated, don't edit it. Thanks.
|
||||
package main
|
||||
|
||||
//
|
||||
//import (
|
||||
// openapi "github.com/alibabacloud-go/darabonba-openapi/client"
|
||||
// eci20180808 "github.com/alibabacloud-go/eci-20180808/v2/client"
|
||||
// "github.com/alibabacloud-go/tea/tea"
|
||||
// "os"
|
||||
//)
|
||||
//
|
||||
///**
|
||||
// * 使用AK&SK初始化账号Client
|
||||
// * @param accessKeyId
|
||||
// * @param accessKeySecret
|
||||
// * @return Client
|
||||
// * @throws Exception
|
||||
// */
|
||||
//func CreateClient(accessKeyId *string, accessKeySecret *string) (_result *eci20180808.Client, _err error) {
|
||||
// config := &openapi.Config{
|
||||
// // 您的AccessKey ID
|
||||
// AccessKeyId: accessKeyId,
|
||||
// // 您的AccessKey Secret
|
||||
// AccessKeySecret: accessKeySecret,
|
||||
// }
|
||||
// // 访问的域名
|
||||
// config.Endpoint = tea.String("eci.aliyuncs.com")
|
||||
// _result = &eci20180808.Client{}
|
||||
// _result, _err = eci20180808.NewClient(config)
|
||||
// return _result, _err
|
||||
//}
|
||||
//
|
||||
//func _main(args []*string) (_err error) {
|
||||
// client, _err := CreateClient(tea.String(""), tea.String(""))
|
||||
// if _err != nil {
|
||||
// return _err
|
||||
// }
|
||||
//
|
||||
// describeContainerGroupsRequest := &eci20180808.DescribeContainerGroupsRequest{
|
||||
// RegionId: tea.String("cn-hangzhou"),
|
||||
// }
|
||||
// // 复制代码运行请自行打印 API 的返回值
|
||||
// resp, _err := client.DescribeContainerGroups(describeContainerGroupsRequest)
|
||||
// println(*resp.Body.ContainerGroups[0].ContainerGroupId)
|
||||
// if _err != nil {
|
||||
// return _err
|
||||
// }
|
||||
// return _err
|
||||
//}
|
||||
//
|
||||
//func main() {
|
||||
// err := _main(tea.StringSlice(os.Args[1:]))
|
||||
// if err != nil {
|
||||
// panic(err)
|
||||
// }
|
||||
//}
|
|
@ -0,0 +1,53 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"github.com/alibabacloud-go/tea/tea"
|
||||
pcm_pod_ali "gitlink.org.cn/JCCE/PCM/adaptor/pod/server/ali"
|
||||
"os"
|
||||
)
|
||||
|
||||
func _main(args []*string) (_err error) {
|
||||
|
||||
//查询
|
||||
//describeContainerGroupsRequest := pcm_pod_ali.DescribeContainerGroupsRequest{
|
||||
// RegionId: "cn-hangzhou",
|
||||
// ProviderId: 1,
|
||||
//}
|
||||
//
|
||||
//// 复制代码运行请自行打印 API 的返回值
|
||||
//resp, _err := pcm_pod_ali.DescribeContainerGroups(&describeContainerGroupsRequest)
|
||||
//println(resp.ContainerGroups[0].ContainerGroupId)
|
||||
|
||||
//创建
|
||||
container := pcm_pod_ali.CreateContainerGroupContainer{
|
||||
Image: "nginx:latest",
|
||||
Name: "pcm-sdk-ali",
|
||||
Cpu: "1",
|
||||
Memory: "2",
|
||||
}
|
||||
containers := make([]pcm_pod_ali.CreateContainerGroupContainer, 0)
|
||||
containers = append(containers, container)
|
||||
|
||||
createContainerGroupsRequest := pcm_pod_ali.CreateContainerGroupRequest{
|
||||
RpcRequest: nil,
|
||||
//ali:cn-hangzhou tc:ap-shanghai hw: k8s
|
||||
RegionId: "cn-hangzhou",
|
||||
ProviderId: 3,
|
||||
Namespace: "pcm",
|
||||
ContainerGroupName: "sdk-alitohuawei",
|
||||
Container: &containers,
|
||||
}
|
||||
|
||||
// 复制代码运行请自行打印 API 的返回值
|
||||
resp, _err := pcm_pod_ali.CreateContainerGroup(&createContainerGroupsRequest)
|
||||
|
||||
println(resp.ContainerGroupId)
|
||||
return _err
|
||||
}
|
||||
|
||||
func main() {
|
||||
err := _main(tea.StringSlice(os.Args[1:]))
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
3
go.mod
3
go.mod
|
@ -5,6 +5,7 @@ go 1.17
|
|||
require (
|
||||
github.com/alibabacloud-go/darabonba-openapi v0.1.4
|
||||
github.com/alibabacloud-go/darabonba-string v1.0.0
|
||||
github.com/alibabacloud-go/eci-20180808/v2 v2.0.2
|
||||
github.com/alibabacloud-go/ecs-20140526/v2 v2.1.0
|
||||
github.com/alibabacloud-go/tea v1.1.15
|
||||
github.com/alibabacloud-go/tea-utils v1.3.9
|
||||
|
@ -73,7 +74,7 @@ require (
|
|||
github.com/josharian/intern v1.0.0 // indirect
|
||||
github.com/json-iterator/go v1.1.11 // indirect
|
||||
github.com/k8snetworkplumbingwg/network-attachment-definition-client v0.0.0-20200331171230-d50e42f2b669 // indirect
|
||||
github.com/kubernetes-csi/external-snapshotter/v2 v2.1.1 // indirect
|
||||
github.com/kubernetes-csi/external-snapshotter/v2 v2.1.3 // indirect
|
||||
github.com/longhorn/go-iscsi-helper v0.0.0-20201111045018-ee87992ec536 // indirect
|
||||
github.com/mailru/easyjson v0.7.6 // indirect
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.2-0.20181231171920-c182affec369 // indirect
|
||||
|
|
|
@ -11,32 +11,34 @@ message PodInstance {
|
|||
pbtenant.CloudProvider provider = 1;
|
||||
// 账号名称
|
||||
string account_name = 2;
|
||||
//pcm id
|
||||
string pcm_id = 3;
|
||||
// 实例id
|
||||
string pod_id = 3;
|
||||
string pod_id = 4;
|
||||
// 实例名称
|
||||
string pod_name = 4;
|
||||
string pod_name = 5;
|
||||
// 地域ID
|
||||
int32 region_id = 5;
|
||||
int32 region_id = 6;
|
||||
// 地域Name
|
||||
string region_name = 6;
|
||||
string region_name = 7;
|
||||
// 镜像
|
||||
string container_image = 7;
|
||||
string container_image = 8;
|
||||
// 容器名称
|
||||
string container_name = 8;
|
||||
string container_name = 9;
|
||||
// vcpu数
|
||||
string cpu_pod = 9;
|
||||
string cpu_pod = 10;
|
||||
// 内存MB
|
||||
string memory_pod = 10;
|
||||
string memory_pod = 11;
|
||||
//安全组ID 对应腾讯 SecurityGroupIds(腾讯必需)
|
||||
string security_group_id = 11;
|
||||
string security_group_id = 12;
|
||||
//子网ID 对应腾讯 SubnetId(腾讯必需)
|
||||
string subnet_id = 12;
|
||||
string subnet_id = 13;
|
||||
//VPC ID 对应腾讯 VpcId(腾讯必需)
|
||||
string vpc_id = 13;
|
||||
string vpc_id = 14;
|
||||
//名空间
|
||||
string namespace = 14;
|
||||
string namespace = 15;
|
||||
// 实例状态
|
||||
string status = 15;
|
||||
string status = 16;
|
||||
}
|
||||
|
||||
|
||||
|
@ -79,6 +81,8 @@ message CreatePodReq {
|
|||
string vpc_id = 12;
|
||||
//名空间
|
||||
string namespace = 13;
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
string requestSource = 14;
|
||||
}
|
||||
|
||||
message CreatePodResp {
|
||||
|
@ -97,18 +101,22 @@ message DeletePodReq {
|
|||
pbtenant.CloudProvider provider = 1;
|
||||
// 账号名称
|
||||
string account_name = 2;
|
||||
// 实例ID
|
||||
string pod_id = 3;
|
||||
// 实例名称
|
||||
string pod_name = 4;
|
||||
// pcm id
|
||||
string pcm_id = 3;
|
||||
// podId
|
||||
string pod_id = 4;
|
||||
// podName
|
||||
string pod_name = 5;
|
||||
//namespace
|
||||
string namespace = 5;
|
||||
string namespace = 6;
|
||||
// 地域,数据中心
|
||||
int32 region_id = 6;
|
||||
int32 region_id = 7;
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
string requestSource = 8;
|
||||
}
|
||||
|
||||
message DeletePodResp {
|
||||
// 查询是否完成,如果为否-false,则可以将下面三个分页参数填入到请求中,继续查询
|
||||
// 删除是否完成
|
||||
bool finished = 1;
|
||||
// 请求id,出现问题后提供给云厂商,排查问题
|
||||
string request_id = 2;
|
||||
|
@ -123,30 +131,34 @@ message UpdatePodReq {
|
|||
pbtenant.CloudProvider provider = 1;
|
||||
// 账号名称
|
||||
string account_name = 2;
|
||||
// 实例ID
|
||||
string pod_id = 3;
|
||||
// 实例名称
|
||||
string pod_name = 4;
|
||||
// pcm ID
|
||||
string pcm_id = 3;
|
||||
// podId
|
||||
string pod_id = 4;
|
||||
// podName
|
||||
string pod_name = 5;
|
||||
//namespace
|
||||
string namespace = 5;
|
||||
string namespace = 6;
|
||||
// 地域,数据中心
|
||||
int32 region_id = 6;
|
||||
int32 region_id = 7;
|
||||
// 镜像
|
||||
string container_image = 7;
|
||||
string container_image = 8;
|
||||
// 容器名称
|
||||
string container_name = 8;
|
||||
string container_name = 9;
|
||||
// v cpu数
|
||||
string cpu_pod = 9;
|
||||
string cpu_pod = 10;
|
||||
// 内存MB
|
||||
string memory_pod = 10;
|
||||
string memory_pod = 11;
|
||||
// 重启策略
|
||||
string restart_policy = 11;
|
||||
string restart_policy = 12;
|
||||
// labels
|
||||
string labels = 12;
|
||||
string labels = 13;
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
string requestSource = 14;
|
||||
}
|
||||
|
||||
message UpdatePodResp {
|
||||
// 查询是否完成,如果为否-false,则可以将下面三个分页参数填入到请求中,继续查询
|
||||
// 更新是否完成
|
||||
bool finished = 1;
|
||||
// 请求id,出现问题后提供给云厂商,排查问题
|
||||
string request_id = 2;
|
||||
|
@ -165,6 +177,7 @@ message ListPodDetailReq {
|
|||
int32 region_id = 3;
|
||||
// 区域名称,各云厂商自定义的region name
|
||||
int32 region_name = 4;
|
||||
|
||||
// podID
|
||||
int32 pod_id = 5;
|
||||
// 分页相关参数,页码
|
||||
|
@ -195,8 +208,10 @@ message ListPodDetailResp {
|
|||
message ListPodReq {
|
||||
// cloud name
|
||||
pbtenant.CloudProvider provider = 1;
|
||||
//
|
||||
//命名空间
|
||||
string namespace =2;
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
string requestSource =3;
|
||||
}
|
||||
|
||||
message ListPodResp {
|
||||
|
|
|
@ -137,11 +137,11 @@ var file_idl_demo_demo_proto_rawDesc = []byte{
|
|||
0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2d, 0x65, 0x63, 0x6f,
|
||||
0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x2f, 0x67, 0x72, 0x70, 0x63, 0x2d, 0x67, 0x61, 0x74, 0x65,
|
||||
0x77, 0x61, 0x79, 0x58, 0x01, 0x62, 0x00, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0f, 0x22, 0x0a, 0x2f,
|
||||
0x61, 0x70, 0x69, 0x73, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x3a, 0x01, 0x2a, 0x42, 0x30, 0x5a, 0x2e,
|
||||
0x67, 0x69, 0x74, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x6e, 0x2f, 0x4a,
|
||||
0x43, 0x43, 0x45, 0x2f, 0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x6e,
|
||||
0x73, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x62, 0x06,
|
||||
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x61, 0x70, 0x69, 0x73, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x3a, 0x01, 0x2a, 0x42, 0x31, 0x5a, 0x2f,
|
||||
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2d,
|
||||
0x6e, 0x75, 0x64, 0x74, 0x2f, 0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61,
|
||||
0x6e, 0x73, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x64, 0x65, 0x6d, 0x6f, 0x62,
|
||||
0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
|
|
@ -77,12 +77,13 @@ func RegisterDemoServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/demo.DemoService/Echo")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/demo.DemoService/Echo", runtime.WithHTTPPathPattern("/apis/demo"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_DemoService_Echo_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_DemoService_Echo_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -139,12 +140,13 @@ func RegisterDemoServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/demo.DemoService/Echo")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/demo.DemoService/Echo", runtime.WithHTTPPathPattern("/apis/demo"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_DemoService_Echo_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_DemoService_Echo_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
|
|
@ -2370,10 +2370,10 @@ var file_idl_pbecs_ecs_proto_rawDesc = []byte{
|
|||
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x1a, 0x11, 0x2e, 0x70, 0x62, 0x65, 0x63, 0x73, 0x2e,
|
||||
0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93,
|
||||
0x02, 0x15, 0x22, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x65, 0x63, 0x73, 0x2f, 0x61, 0x63,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0x42, 0x2d, 0x5a, 0x2b, 0x67, 0x69, 0x74, 0x6c, 0x69,
|
||||
0x6e, 0x6b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x6e, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2f, 0x50,
|
||||
0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x2f, 0x69, 0x64, 0x6c,
|
||||
0x2f, 0x70, 0x62, 0x65, 0x63, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x74, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0x42, 0x2e, 0x5a, 0x2c, 0x67, 0x69, 0x74, 0x68, 0x75,
|
||||
0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2d, 0x6e, 0x75, 0x64, 0x74, 0x2f,
|
||||
0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x2f, 0x69, 0x64,
|
||||
0x6c, 0x2f, 0x70, 0x62, 0x65, 0x63, 0x73, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
|
|
@ -303,12 +303,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/CreateMultipleEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/CreateMultipleEcs", runtime.WithHTTPPathPattern("/apis/ecs/createMultiple"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_CreateMultipleEcs_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_CreateMultipleEcs_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -326,12 +327,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/CreateEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/CreateEcs", runtime.WithHTTPPathPattern("/apis/ecs/create"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_CreateEcs_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_CreateEcs_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -349,12 +351,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/DeleteEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/DeleteEcs", runtime.WithHTTPPathPattern("/apis/ecs/delete"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_DeleteEcs_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_DeleteEcs_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -372,12 +375,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/UpdateEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/UpdateEcs", runtime.WithHTTPPathPattern("/apis/ecs/update"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_UpdateEcs_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_UpdateEcs_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -395,12 +399,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ListEcsDetail")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ListEcsDetail", runtime.WithHTTPPathPattern("/apis/ecs/detail"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_ListEcsDetail_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_ListEcsDetail_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -418,12 +423,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ListEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ListEcs", runtime.WithHTTPPathPattern("/apis/ecs"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_ListEcs_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_ListEcs_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -441,12 +447,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ListEcsAll")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ListEcsAll", runtime.WithHTTPPathPattern("/apis/ecs/all"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_ListEcsAll_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_ListEcsAll_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -464,12 +471,13 @@ func RegisterEcsServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ActionEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbecs.EcsService/ActionEcs", runtime.WithHTTPPathPattern("/apis/ecs/action"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_EcsService_ActionEcs_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_EcsService_ActionEcs_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -526,12 +534,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/CreateMultipleEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/CreateMultipleEcs", runtime.WithHTTPPathPattern("/apis/ecs/createMultiple"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_CreateMultipleEcs_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_CreateMultipleEcs_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -546,12 +555,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/CreateEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/CreateEcs", runtime.WithHTTPPathPattern("/apis/ecs/create"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_CreateEcs_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_CreateEcs_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -566,12 +576,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/DeleteEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/DeleteEcs", runtime.WithHTTPPathPattern("/apis/ecs/delete"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_DeleteEcs_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_DeleteEcs_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -586,12 +597,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/UpdateEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/UpdateEcs", runtime.WithHTTPPathPattern("/apis/ecs/update"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_UpdateEcs_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_UpdateEcs_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -606,12 +618,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ListEcsDetail")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ListEcsDetail", runtime.WithHTTPPathPattern("/apis/ecs/detail"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_ListEcsDetail_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_ListEcsDetail_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -626,12 +639,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ListEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ListEcs", runtime.WithHTTPPathPattern("/apis/ecs"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_ListEcs_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_ListEcs_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -646,12 +660,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ListEcsAll")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ListEcsAll", runtime.WithHTTPPathPattern("/apis/ecs/all"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_ListEcsAll_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_ListEcsAll_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -666,12 +681,13 @@ func RegisterEcsServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ActionEcs")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbecs.EcsService/ActionEcs", runtime.WithHTTPPathPattern("/apis/ecs/action"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_EcsService_ActionEcs_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_EcsService_ActionEcs_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
|
|
@ -31,32 +31,34 @@ type PodInstance struct {
|
|||
Provider pbtenant.CloudProvider `protobuf:"varint,1,opt,name=provider,proto3,enum=pbtenant.CloudProvider" json:"provider,omitempty"`
|
||||
// 账号名称
|
||||
AccountName string `protobuf:"bytes,2,opt,name=account_name,json=accountName,proto3" json:"account_name,omitempty"`
|
||||
//pcm id
|
||||
PcmId string `protobuf:"bytes,3,opt,name=pcm_id,json=pcmId,proto3" json:"pcm_id,omitempty"`
|
||||
// 实例id
|
||||
PodId string `protobuf:"bytes,3,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"`
|
||||
PodId string `protobuf:"bytes,4,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"`
|
||||
// 实例名称
|
||||
PodName string `protobuf:"bytes,4,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
|
||||
PodName string `protobuf:"bytes,5,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
|
||||
// 地域ID
|
||||
RegionId int32 `protobuf:"varint,5,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
|
||||
RegionId int32 `protobuf:"varint,6,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
|
||||
// 地域Name
|
||||
RegionName string `protobuf:"bytes,6,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
|
||||
RegionName string `protobuf:"bytes,7,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
|
||||
// 镜像
|
||||
ContainerImage string `protobuf:"bytes,7,opt,name=container_image,json=containerImage,proto3" json:"container_image,omitempty"`
|
||||
ContainerImage string `protobuf:"bytes,8,opt,name=container_image,json=containerImage,proto3" json:"container_image,omitempty"`
|
||||
// 容器名称
|
||||
ContainerName string `protobuf:"bytes,8,opt,name=container_name,json=containerName,proto3" json:"container_name,omitempty"`
|
||||
ContainerName string `protobuf:"bytes,9,opt,name=container_name,json=containerName,proto3" json:"container_name,omitempty"`
|
||||
// vcpu数
|
||||
CpuPod string `protobuf:"bytes,9,opt,name=cpu_pod,json=cpuPod,proto3" json:"cpu_pod,omitempty"`
|
||||
CpuPod string `protobuf:"bytes,10,opt,name=cpu_pod,json=cpuPod,proto3" json:"cpu_pod,omitempty"`
|
||||
// 内存MB
|
||||
MemoryPod string `protobuf:"bytes,10,opt,name=memory_pod,json=memoryPod,proto3" json:"memory_pod,omitempty"`
|
||||
MemoryPod string `protobuf:"bytes,11,opt,name=memory_pod,json=memoryPod,proto3" json:"memory_pod,omitempty"`
|
||||
//安全组ID 对应腾讯 SecurityGroupIds(腾讯必需)
|
||||
SecurityGroupId string `protobuf:"bytes,11,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
|
||||
SecurityGroupId string `protobuf:"bytes,12,opt,name=security_group_id,json=securityGroupId,proto3" json:"security_group_id,omitempty"`
|
||||
//子网ID 对应腾讯 SubnetId(腾讯必需)
|
||||
SubnetId string `protobuf:"bytes,12,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
|
||||
SubnetId string `protobuf:"bytes,13,opt,name=subnet_id,json=subnetId,proto3" json:"subnet_id,omitempty"`
|
||||
//VPC ID 对应腾讯 VpcId(腾讯必需)
|
||||
VpcId string `protobuf:"bytes,13,opt,name=vpc_id,json=vpcId,proto3" json:"vpc_id,omitempty"`
|
||||
VpcId string `protobuf:"bytes,14,opt,name=vpc_id,json=vpcId,proto3" json:"vpc_id,omitempty"`
|
||||
//名空间
|
||||
Namespace string `protobuf:"bytes,14,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
Namespace string `protobuf:"bytes,15,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
// 实例状态
|
||||
Status string `protobuf:"bytes,15,opt,name=status,proto3" json:"status,omitempty"`
|
||||
Status string `protobuf:"bytes,16,opt,name=status,proto3" json:"status,omitempty"`
|
||||
}
|
||||
|
||||
func (x *PodInstance) Reset() {
|
||||
|
@ -105,6 +107,13 @@ func (x *PodInstance) GetAccountName() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (x *PodInstance) GetPcmId() string {
|
||||
if x != nil {
|
||||
return x.PcmId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *PodInstance) GetPodId() string {
|
||||
if x != nil {
|
||||
return x.PodId
|
||||
|
@ -332,6 +341,8 @@ type CreatePodReq struct {
|
|||
VpcId string `protobuf:"bytes,12,opt,name=vpc_id,json=vpcId,proto3" json:"vpc_id,omitempty"`
|
||||
//名空间
|
||||
Namespace string `protobuf:"bytes,13,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
RequestSource string `protobuf:"bytes,14,opt,name=requestSource,proto3" json:"requestSource,omitempty"`
|
||||
}
|
||||
|
||||
func (x *CreatePodReq) Reset() {
|
||||
|
@ -457,6 +468,13 @@ func (x *CreatePodReq) GetNamespace() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (x *CreatePodReq) GetRequestSource() string {
|
||||
if x != nil {
|
||||
return x.RequestSource
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type CreatePodResp struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
|
@ -541,14 +559,18 @@ type DeletePodReq struct {
|
|||
Provider pbtenant.CloudProvider `protobuf:"varint,1,opt,name=provider,proto3,enum=pbtenant.CloudProvider" json:"provider,omitempty"`
|
||||
// 账号名称
|
||||
AccountName string `protobuf:"bytes,2,opt,name=account_name,json=accountName,proto3" json:"account_name,omitempty"`
|
||||
// 实例ID
|
||||
PodId string `protobuf:"bytes,3,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"`
|
||||
// 实例名称
|
||||
PodName string `protobuf:"bytes,4,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
|
||||
// pcm id
|
||||
PcmId string `protobuf:"bytes,3,opt,name=pcm_id,json=pcmId,proto3" json:"pcm_id,omitempty"`
|
||||
// podId
|
||||
PodId string `protobuf:"bytes,4,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"`
|
||||
// podName
|
||||
PodName string `protobuf:"bytes,5,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
|
||||
//namespace
|
||||
Namespace string `protobuf:"bytes,5,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
Namespace string `protobuf:"bytes,6,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
// 地域,数据中心
|
||||
RegionId int32 `protobuf:"varint,6,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
|
||||
RegionId int32 `protobuf:"varint,7,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
RequestSource string `protobuf:"bytes,8,opt,name=requestSource,proto3" json:"requestSource,omitempty"`
|
||||
}
|
||||
|
||||
func (x *DeletePodReq) Reset() {
|
||||
|
@ -597,6 +619,13 @@ func (x *DeletePodReq) GetAccountName() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (x *DeletePodReq) GetPcmId() string {
|
||||
if x != nil {
|
||||
return x.PcmId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *DeletePodReq) GetPodId() string {
|
||||
if x != nil {
|
||||
return x.PodId
|
||||
|
@ -625,12 +654,19 @@ func (x *DeletePodReq) GetRegionId() int32 {
|
|||
return 0
|
||||
}
|
||||
|
||||
func (x *DeletePodReq) GetRequestSource() string {
|
||||
if x != nil {
|
||||
return x.RequestSource
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type DeletePodResp struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
// 查询是否完成,如果为否-false,则可以将下面三个分页参数填入到请求中,继续查询
|
||||
// 删除是否完成
|
||||
Finished bool `protobuf:"varint,1,opt,name=finished,proto3" json:"finished,omitempty"`
|
||||
// 请求id,出现问题后提供给云厂商,排查问题
|
||||
RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
|
||||
|
@ -709,26 +745,30 @@ type UpdatePodReq struct {
|
|||
Provider pbtenant.CloudProvider `protobuf:"varint,1,opt,name=provider,proto3,enum=pbtenant.CloudProvider" json:"provider,omitempty"`
|
||||
// 账号名称
|
||||
AccountName string `protobuf:"bytes,2,opt,name=account_name,json=accountName,proto3" json:"account_name,omitempty"`
|
||||
// 实例ID
|
||||
PodId string `protobuf:"bytes,3,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"`
|
||||
// 实例名称
|
||||
PodName string `protobuf:"bytes,4,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
|
||||
// pcm ID
|
||||
PcmId string `protobuf:"bytes,3,opt,name=pcm_id,json=pcmId,proto3" json:"pcm_id,omitempty"`
|
||||
// podId
|
||||
PodId string `protobuf:"bytes,4,opt,name=pod_id,json=podId,proto3" json:"pod_id,omitempty"`
|
||||
// podName
|
||||
PodName string `protobuf:"bytes,5,opt,name=pod_name,json=podName,proto3" json:"pod_name,omitempty"`
|
||||
//namespace
|
||||
Namespace string `protobuf:"bytes,5,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
Namespace string `protobuf:"bytes,6,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
// 地域,数据中心
|
||||
RegionId int32 `protobuf:"varint,6,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
|
||||
RegionId int32 `protobuf:"varint,7,opt,name=region_id,json=regionId,proto3" json:"region_id,omitempty"`
|
||||
// 镜像
|
||||
ContainerImage string `protobuf:"bytes,7,opt,name=container_image,json=containerImage,proto3" json:"container_image,omitempty"`
|
||||
ContainerImage string `protobuf:"bytes,8,opt,name=container_image,json=containerImage,proto3" json:"container_image,omitempty"`
|
||||
// 容器名称
|
||||
ContainerName string `protobuf:"bytes,8,opt,name=container_name,json=containerName,proto3" json:"container_name,omitempty"`
|
||||
ContainerName string `protobuf:"bytes,9,opt,name=container_name,json=containerName,proto3" json:"container_name,omitempty"`
|
||||
// v cpu数
|
||||
CpuPod string `protobuf:"bytes,9,opt,name=cpu_pod,json=cpuPod,proto3" json:"cpu_pod,omitempty"`
|
||||
CpuPod string `protobuf:"bytes,10,opt,name=cpu_pod,json=cpuPod,proto3" json:"cpu_pod,omitempty"`
|
||||
// 内存MB
|
||||
MemoryPod string `protobuf:"bytes,10,opt,name=memory_pod,json=memoryPod,proto3" json:"memory_pod,omitempty"`
|
||||
MemoryPod string `protobuf:"bytes,11,opt,name=memory_pod,json=memoryPod,proto3" json:"memory_pod,omitempty"`
|
||||
// 重启策略
|
||||
RestartPolicy string `protobuf:"bytes,11,opt,name=restart_policy,json=restartPolicy,proto3" json:"restart_policy,omitempty"`
|
||||
RestartPolicy string `protobuf:"bytes,12,opt,name=restart_policy,json=restartPolicy,proto3" json:"restart_policy,omitempty"`
|
||||
// labels
|
||||
Labels string `protobuf:"bytes,12,opt,name=labels,proto3" json:"labels,omitempty"`
|
||||
Labels string `protobuf:"bytes,13,opt,name=labels,proto3" json:"labels,omitempty"`
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
RequestSource string `protobuf:"bytes,14,opt,name=requestSource,proto3" json:"requestSource,omitempty"`
|
||||
}
|
||||
|
||||
func (x *UpdatePodReq) Reset() {
|
||||
|
@ -777,6 +817,13 @@ func (x *UpdatePodReq) GetAccountName() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (x *UpdatePodReq) GetPcmId() string {
|
||||
if x != nil {
|
||||
return x.PcmId
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func (x *UpdatePodReq) GetPodId() string {
|
||||
if x != nil {
|
||||
return x.PodId
|
||||
|
@ -847,12 +894,19 @@ func (x *UpdatePodReq) GetLabels() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (x *UpdatePodReq) GetRequestSource() string {
|
||||
if x != nil {
|
||||
return x.RequestSource
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type UpdatePodResp struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
unknownFields protoimpl.UnknownFields
|
||||
|
||||
// 查询是否完成,如果为否-false,则可以将下面三个分页参数填入到请求中,继续查询
|
||||
// 更新是否完成
|
||||
Finished bool `protobuf:"varint,1,opt,name=finished,proto3" json:"finished,omitempty"`
|
||||
// 请求id,出现问题后提供给云厂商,排查问题
|
||||
RequestId string `protobuf:"bytes,2,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
|
||||
|
@ -1142,8 +1196,10 @@ type ListPodReq struct {
|
|||
|
||||
// cloud name
|
||||
Provider pbtenant.CloudProvider `protobuf:"varint,1,opt,name=provider,proto3,enum=pbtenant.CloudProvider" json:"provider,omitempty"`
|
||||
//
|
||||
//命名空间
|
||||
Namespace string `protobuf:"bytes,2,opt,name=namespace,proto3" json:"namespace,omitempty"`
|
||||
//请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体
|
||||
RequestSource string `protobuf:"bytes,3,opt,name=requestSource,proto3" json:"requestSource,omitempty"`
|
||||
}
|
||||
|
||||
func (x *ListPodReq) Reset() {
|
||||
|
@ -1192,6 +1248,13 @@ func (x *ListPodReq) GetNamespace() string {
|
|||
return ""
|
||||
}
|
||||
|
||||
func (x *ListPodReq) GetRequestSource() string {
|
||||
if x != nil {
|
||||
return x.RequestSource
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
type ListPodResp struct {
|
||||
state protoimpl.MessageState
|
||||
sizeCache protoimpl.SizeCache
|
||||
|
@ -1382,232 +1445,246 @@ var file_idl_pbpod_pod_proto_rawDesc = []byte{
|
|||
0x6c, 0x2f, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2f, 0x74, 0x65, 0x6e, 0x61, 0x6e,
|
||||
0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
|
||||
0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
|
||||
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xf3, 0x03, 0x0a, 0x0b, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x73,
|
||||
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8a, 0x04, 0x0a, 0x0b, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x73,
|
||||
0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
|
||||
0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61,
|
||||
0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
|
||||
0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63,
|
||||
0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a,
|
||||
0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70,
|
||||
0x6f, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
|
||||
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12,
|
||||
0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01,
|
||||
0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b,
|
||||
0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a,
|
||||
0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65,
|
||||
0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
|
||||
0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69,
|
||||
0x6e, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
|
||||
0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a,
|
||||
0x07, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x6f, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
|
||||
0x63, 0x70, 0x75, 0x50, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79,
|
||||
0x5f, 0x70, 0x6f, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x6f,
|
||||
0x72, 0x79, 0x50, 0x6f, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
|
||||
0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49,
|
||||
0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x15,
|
||||
0x0a, 0x06, 0x76, 0x70, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
|
||||
0x76, 0x70, 0x63, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61,
|
||||
0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70,
|
||||
0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0f, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x48, 0x0a, 0x0d, 0x43,
|
||||
0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73, 0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x0c,
|
||||
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x18, 0x01, 0x20, 0x03,
|
||||
0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
|
||||
0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x52, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50,
|
||||
0x6f, 0x64, 0x52, 0x65, 0x71, 0x22, 0x4b, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50,
|
||||
0x6f, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73,
|
||||
0x68, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73,
|
||||
0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x49, 0x64, 0x22, 0xbb, 0x03, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64,
|
||||
0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
|
||||
0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08,
|
||||
0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f,
|
||||
0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
|
||||
0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70,
|
||||
0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64,
|
||||
0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a,
|
||||
0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05,
|
||||
0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f,
|
||||
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6d,
|
||||
0x61, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
|
||||
0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e,
|
||||
0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70,
|
||||
0x75, 0x5f, 0x70, 0x6f, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x70, 0x75,
|
||||
0x50, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x6f,
|
||||
0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x50,
|
||||
0x6f, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67,
|
||||
0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73,
|
||||
0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1b,
|
||||
0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x76,
|
||||
0x70, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x70, 0x63,
|
||||
0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18,
|
||||
0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65,
|
||||
0x22, 0x7c, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73,
|
||||
0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20,
|
||||
0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a,
|
||||
0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06,
|
||||
0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f,
|
||||
0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
||||
0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xd3,
|
||||
0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x12,
|
||||
0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f,
|
||||
0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76,
|
||||
0x69, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f,
|
||||
0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x19,
|
||||
0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d,
|
||||
0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f,
|
||||
0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69,
|
||||
0x6f, 0x6e, 0x49, 0x64, 0x22, 0x7c, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f,
|
||||
0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65,
|
||||
0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65,
|
||||
0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64,
|
||||
0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61,
|
||||
0x6d, 0x65, 0x22, 0x9a, 0x03, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64,
|
||||
0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18,
|
||||
0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
|
||||
0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08,
|
||||
0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f,
|
||||
0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
|
||||
0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70,
|
||||
0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64,
|
||||
0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04,
|
||||
0x06, 0x70, 0x63, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70,
|
||||
0x63, 0x6d, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70,
|
||||
0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70,
|
||||
0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
|
||||
0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f,
|
||||
0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e,
|
||||
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65,
|
||||
0x72, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63,
|
||||
0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a,
|
||||
0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
||||
0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72,
|
||||
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x6f, 0x64, 0x18,
|
||||
0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x64, 0x12, 0x1d, 0x0a,
|
||||
0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x6f, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x64, 0x12, 0x2a, 0x0a, 0x11,
|
||||
0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
|
||||
0x79, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e,
|
||||
0x65, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62,
|
||||
0x6e, 0x65, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x70, 0x63, 0x5f, 0x69, 0x64, 0x18,
|
||||
0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x70, 0x63, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74,
|
||||
0x61, 0x74, 0x75, 0x73, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
|
||||
0x75, 0x73, 0x22, 0x48, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73,
|
||||
0x52, 0x65, 0x71, 0x12, 0x37, 0x0a, 0x0c, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64,
|
||||
0x52, 0x65, 0x71, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x62, 0x70, 0x6f,
|
||||
0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x52, 0x0c,
|
||||
0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x22, 0x4b, 0x0a, 0x0e,
|
||||
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a,
|
||||
0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09,
|
||||
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0xe1, 0x03, 0x0a, 0x0c, 0x43, 0x72,
|
||||
0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72,
|
||||
0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70,
|
||||
0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f,
|
||||
0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12,
|
||||
0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
||||
0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61,
|
||||
0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64,
|
||||
0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64,
|
||||
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49,
|
||||
0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69,
|
||||
0x6d, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74,
|
||||
0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f,
|
||||
0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x4e, 0x61, 0x6d,
|
||||
0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x6f, 0x64, 0x18, 0x08, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x06, 0x63, 0x70, 0x75, 0x50, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65,
|
||||
0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x6f, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
|
||||
0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x64, 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x63,
|
||||
0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 0x69, 0x64, 0x18, 0x0a,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x47, 0x72,
|
||||
0x6f, 0x75, 0x70, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74, 0x5f,
|
||||
0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x6e, 0x65, 0x74,
|
||||
0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x76, 0x70, 0x63, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x05, 0x76, 0x70, 0x63, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d,
|
||||
0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65,
|
||||
0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
|
||||
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x7c, 0x0a,
|
||||
0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a,
|
||||
0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08,
|
||||
0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
|
||||
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64,
|
||||
0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64,
|
||||
0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x90, 0x02, 0x0a, 0x0c,
|
||||
0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08,
|
||||
0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17,
|
||||
0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50,
|
||||
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
|
||||
0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d,
|
||||
0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
|
||||
0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x63, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x63, 0x6d, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x70,
|
||||
0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64,
|
||||
0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a,
|
||||
0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09,
|
||||
0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72,
|
||||
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
|
||||
0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x74,
|
||||
0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6d, 0x61, 0x67,
|
||||
0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74, 0x61,
|
||||
0x69, 0x6e, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x75, 0x5f,
|
||||
0x70, 0x6f, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x70, 0x75, 0x50, 0x6f,
|
||||
0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x6f, 0x64, 0x18,
|
||||
0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x50, 0x6f, 0x64,
|
||||
0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x70, 0x6f, 0x6c, 0x69,
|
||||
0x63, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72,
|
||||
0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c,
|
||||
0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x22,
|
||||
0x7c, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70,
|
||||
0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01,
|
||||
0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a,
|
||||
0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x70,
|
||||
0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64,
|
||||
0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xba, 0x02,
|
||||
0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52,
|
||||
0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01,
|
||||
0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e,
|
||||
0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70,
|
||||
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75,
|
||||
0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61,
|
||||
0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65,
|
||||
0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72,
|
||||
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f,
|
||||
0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65,
|
||||
0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f,
|
||||
0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12,
|
||||
0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06,
|
||||
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72,
|
||||
0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20,
|
||||
0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a,
|
||||
0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x22, 0xd3, 0x01, 0x0a, 0x11, 0x4c,
|
||||
0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70,
|
||||
0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12,
|
||||
0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
|
||||
0x63, 0x65, 0x52, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69,
|
||||
0x73, 0x68, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69,
|
||||
0x73, 0x68, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d,
|
||||
0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e,
|
||||
0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69,
|
||||
0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69,
|
||||
0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
|
||||
0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65,
|
||||
0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18,
|
||||
0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64,
|
||||
0x22, 0x5f, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x12, 0x33,
|
||||
0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
|
||||
0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75,
|
||||
0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69,
|
||||
0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65,
|
||||
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63,
|
||||
0x65, 0x22, 0x35, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70,
|
||||
0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12,
|
||||
0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
|
||||
0x63, 0x65, 0x52, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x22, 0x46, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50,
|
||||
0x6f, 0x64, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70,
|
||||
0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e,
|
||||
0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72,
|
||||
0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72,
|
||||
0x22, 0x3e, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e,
|
||||
0x52, 0x65, 0x73, 0x70, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18,
|
||||
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74,
|
||||
0x2e, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73,
|
||||
0x22, 0x0f, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65,
|
||||
0x71, 0x32, 0xda, 0x04, 0x0a, 0x0a, 0x50, 0x6f, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65,
|
||||
0x12, 0x5b, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73, 0x12, 0x14,
|
||||
0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64,
|
||||
0x73, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65,
|
||||
0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x20, 0x82, 0xd3, 0xe4,
|
||||
0x93, 0x02, 0x1a, 0x22, 0x15, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x63,
|
||||
0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x3a, 0x01, 0x2a, 0x12, 0x53, 0x0a,
|
||||
0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x70,
|
||||
0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x1a,
|
||||
0x14, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f,
|
||||
0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10, 0x2f,
|
||||
0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a,
|
||||
0x01, 0x2a, 0x12, 0x53, 0x0a, 0x09, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x12,
|
||||
0x13, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f,
|
||||
0x64, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x44, 0x65, 0x6c,
|
||||
0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93,
|
||||
0x02, 0x15, 0x22, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x64, 0x65,
|
||||
0x6c, 0x65, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x53, 0x0a, 0x09, 0x55, 0x70, 0x64, 0x61, 0x74,
|
||||
0x65, 0x50, 0x6f, 0x64, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x55, 0x70, 0x64,
|
||||
0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x70, 0x6f,
|
||||
0x64, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22,
|
||||
0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x1a, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70,
|
||||
0x6f, 0x64, 0x2f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x5c, 0x0a, 0x0d,
|
||||
0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x17, 0x2e,
|
||||
0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74,
|
||||
0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c,
|
||||
0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70,
|
||||
0x22, 0x18, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f,
|
||||
0x70, 0x6f, 0x64, 0x2f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x43, 0x0a, 0x07, 0x4c, 0x69,
|
||||
0x73, 0x74, 0x50, 0x6f, 0x64, 0x12, 0x11, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69,
|
||||
0x73, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64,
|
||||
0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x11, 0x82, 0xd3,
|
||||
0xe4, 0x93, 0x02, 0x0b, 0x12, 0x09, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x12,
|
||||
0x4d, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x41, 0x6c, 0x6c, 0x12, 0x14, 0x2e,
|
||||
0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x41, 0x6c, 0x6c,
|
||||
0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74,
|
||||
0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x15, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0f, 0x12,
|
||||
0x0d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x61, 0x6c, 0x6c, 0x42, 0x2d,
|
||||
0x5a, 0x2b, 0x67, 0x69, 0x74, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63, 0x6e,
|
||||
0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2f, 0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72,
|
||||
0x61, 0x6e, 0x73, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x62, 0x06, 0x70,
|
||||
0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
|
||||
0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x7c,
|
||||
0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12,
|
||||
0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28,
|
||||
0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72,
|
||||
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
|
||||
0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f,
|
||||
0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49,
|
||||
0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20,
|
||||
0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0xd7, 0x03, 0x0a,
|
||||
0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a,
|
||||
0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32,
|
||||
0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64,
|
||||
0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
|
||||
0x65, 0x72, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61,
|
||||
0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e,
|
||||
0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x63, 0x6d, 0x5f, 0x69, 0x64, 0x18,
|
||||
0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x63, 0x6d, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06,
|
||||
0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x70, 0x6f,
|
||||
0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
|
||||
0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c,
|
||||
0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
|
||||
0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x09,
|
||||
0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52,
|
||||
0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, 0x6e,
|
||||
0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x49, 0x6d, 0x61,
|
||||
0x67, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x65, 0x72, 0x5f,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x74,
|
||||
0x61, 0x69, 0x6e, 0x65, 0x72, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x70, 0x75,
|
||||
0x5f, 0x70, 0x6f, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x70, 0x75, 0x50,
|
||||
0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x5f, 0x70, 0x6f, 0x64,
|
||||
0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x65, 0x6d, 0x6f, 0x72, 0x79, 0x50, 0x6f,
|
||||
0x64, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x70, 0x6f, 0x6c,
|
||||
0x69, 0x63, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x73, 0x74, 0x61,
|
||||
0x72, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65,
|
||||
0x6c, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73,
|
||||
0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63,
|
||||
0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x7c, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
|
||||
0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73,
|
||||
0x68, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73,
|
||||
0x68, 0x65, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x69,
|
||||
0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
|
||||
0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01,
|
||||
0x28, 0x09, 0x52, 0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x70, 0x6f, 0x64,
|
||||
0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x6f, 0x64,
|
||||
0x4e, 0x61, 0x6d, 0x65, 0x22, 0xba, 0x02, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64,
|
||||
0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f,
|
||||
0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62,
|
||||
0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76,
|
||||
0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x21,
|
||||
0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
|
||||
0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x61, 0x6d,
|
||||
0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03,
|
||||
0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x1f,
|
||||
0x0a, 0x0b, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20,
|
||||
0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12,
|
||||
0x15, 0x0a, 0x06, 0x70, 0x6f, 0x64, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52,
|
||||
0x05, 0x70, 0x6f, 0x64, 0x49, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x6e,
|
||||
0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x70, 0x61, 0x67,
|
||||
0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
|
||||
0x73, 0x69, 0x7a, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
|
||||
0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x6b,
|
||||
0x65, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x65, 0x78, 0x74, 0x54, 0x6f,
|
||||
0x6b, 0x65, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65,
|
||||
0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63,
|
||||
0x65, 0x22, 0xd3, 0x01, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74,
|
||||
0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26, 0x0a, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x18,
|
||||
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x50, 0x6f,
|
||||
0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x12,
|
||||
0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
|
||||
0x08, 0x52, 0x08, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x70,
|
||||
0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
|
||||
0x52, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09,
|
||||
0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52,
|
||||
0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6e, 0x65, 0x78,
|
||||
0x74, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6e,
|
||||
0x65, 0x78, 0x74, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75,
|
||||
0x65, 0x73, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65,
|
||||
0x71, 0x75, 0x65, 0x73, 0x74, 0x49, 0x64, 0x22, 0x85, 0x01, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74,
|
||||
0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64,
|
||||
0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e,
|
||||
0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
|
||||
0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x12, 0x1c, 0x0a, 0x09, 0x6e,
|
||||
0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
|
||||
0x6e, 0x61, 0x6d, 0x65, 0x73, 0x70, 0x61, 0x63, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x72, 0x65, 0x71,
|
||||
0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
||||
0x52, 0x0d, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22,
|
||||
0x35, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x26,
|
||||
0x0a, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x70,
|
||||
0x62, 0x70, 0x6f, 0x64, 0x2e, 0x50, 0x6f, 0x64, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
|
||||
0x52, 0x04, 0x70, 0x6f, 0x64, 0x73, 0x22, 0x46, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x64,
|
||||
0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x33, 0x0a, 0x08, 0x70, 0x72, 0x6f,
|
||||
0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x17, 0x2e, 0x70, 0x62,
|
||||
0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76,
|
||||
0x69, 0x64, 0x65, 0x72, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x22, 0x3e,
|
||||
0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x65,
|
||||
0x73, 0x70, 0x12, 0x2a, 0x0a, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20,
|
||||
0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x2e, 0x52,
|
||||
0x65, 0x67, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x0f,
|
||||
0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x32,
|
||||
0xda, 0x04, 0x0a, 0x0a, 0x50, 0x6f, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x5b,
|
||||
0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73, 0x12, 0x14, 0x2e, 0x70,
|
||||
0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x73, 0x52,
|
||||
0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
|
||||
0x65, 0x50, 0x6f, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x22, 0x20, 0x82, 0xd3, 0xe4, 0x93, 0x02,
|
||||
0x1a, 0x22, 0x15, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x63, 0x72, 0x65,
|
||||
0x61, 0x74, 0x65, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x3a, 0x01, 0x2a, 0x12, 0x53, 0x0a, 0x09, 0x43,
|
||||
0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64,
|
||||
0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e,
|
||||
0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52,
|
||||
0x65, 0x73, 0x70, 0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15, 0x22, 0x10, 0x2f, 0x61, 0x70,
|
||||
0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a,
|
||||
0x12, 0x53, 0x0a, 0x09, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x12, 0x13, 0x2e,
|
||||
0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52,
|
||||
0x65, 0x71, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
|
||||
0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x1b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x15,
|
||||
0x22, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x64, 0x65, 0x6c, 0x65,
|
||||
0x74, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x53, 0x0a, 0x09, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50,
|
||||
0x6f, 0x64, 0x12, 0x13, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
|
||||
0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e,
|
||||
0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x1b, 0x82,
|
||||
0xd3, 0xe4, 0x93, 0x02, 0x15, 0x1a, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64,
|
||||
0x2f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x12, 0x5c, 0x0a, 0x0d, 0x4c, 0x69,
|
||||
0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x17, 0x2e, 0x70, 0x62,
|
||||
0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69,
|
||||
0x6c, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73,
|
||||
0x74, 0x50, 0x6f, 0x64, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x22, 0x18,
|
||||
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x12, 0x12, 0x10, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f,
|
||||
0x64, 0x2f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x43, 0x0a, 0x07, 0x4c, 0x69, 0x73, 0x74,
|
||||
0x50, 0x6f, 0x64, 0x12, 0x11, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74,
|
||||
0x50, 0x6f, 0x64, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c,
|
||||
0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x11, 0x82, 0xd3, 0xe4, 0x93,
|
||||
0x02, 0x0b, 0x12, 0x09, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x12, 0x4d, 0x0a,
|
||||
0x0a, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x41, 0x6c, 0x6c, 0x12, 0x14, 0x2e, 0x70, 0x62,
|
||||
0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x64, 0x41, 0x6c, 0x6c, 0x52, 0x65,
|
||||
0x71, 0x1a, 0x12, 0x2e, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f,
|
||||
0x64, 0x52, 0x65, 0x73, 0x70, 0x22, 0x15, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x0f, 0x12, 0x0d, 0x2f,
|
||||
0x61, 0x70, 0x69, 0x73, 0x2f, 0x70, 0x6f, 0x64, 0x2f, 0x61, 0x6c, 0x6c, 0x42, 0x2e, 0x5a, 0x2c,
|
||||
0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2d,
|
||||
0x6e, 0x75, 0x64, 0x74, 0x2f, 0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74, 0x72, 0x61,
|
||||
0x6e, 0x73, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x70, 0x62, 0x70, 0x6f, 0x64, 0x62, 0x06, 0x70, 0x72,
|
||||
0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
|
|
@ -269,12 +269,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/CreatePods")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/CreatePods", runtime.WithHTTPPathPattern("/apis/pod/createMulti"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_CreatePods_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_CreatePods_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -292,12 +293,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/CreatePod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/CreatePod", runtime.WithHTTPPathPattern("/apis/pod/create"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_CreatePod_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_CreatePod_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -315,12 +317,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/DeletePod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/DeletePod", runtime.WithHTTPPathPattern("/apis/pod/delete"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_DeletePod_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_DeletePod_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -338,12 +341,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/UpdatePod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/UpdatePod", runtime.WithHTTPPathPattern("/apis/pod/update"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_UpdatePod_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_UpdatePod_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -361,12 +365,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/ListPodDetail")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/ListPodDetail", runtime.WithHTTPPathPattern("/apis/pod/detail"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_ListPodDetail_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_ListPodDetail_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -384,12 +389,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/ListPod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/ListPod", runtime.WithHTTPPathPattern("/apis/pod"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_ListPod_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_ListPod_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -407,12 +413,13 @@ func RegisterPodServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux,
|
|||
var stream runtime.ServerTransportStream
|
||||
ctx = grpc.NewContextWithServerTransportStream(ctx, &stream)
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/ListPodAll")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/pbpod.PodService/ListPodAll", runtime.WithHTTPPathPattern("/apis/pod/all"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := local_request_PodService_ListPodAll_0(rctx, inboundMarshaler, server, req, pathParams)
|
||||
resp, md, err := local_request_PodService_ListPodAll_0(ctx, inboundMarshaler, server, req, pathParams)
|
||||
md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer())
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
|
@ -469,12 +476,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/CreatePods")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/CreatePods", runtime.WithHTTPPathPattern("/apis/pod/createMulti"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_CreatePods_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_CreatePods_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -489,12 +497,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/CreatePod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/CreatePod", runtime.WithHTTPPathPattern("/apis/pod/create"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_CreatePod_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_CreatePod_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -509,12 +518,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/DeletePod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/DeletePod", runtime.WithHTTPPathPattern("/apis/pod/delete"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_DeletePod_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_DeletePod_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -529,12 +539,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/UpdatePod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/UpdatePod", runtime.WithHTTPPathPattern("/apis/pod/update"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_UpdatePod_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_UpdatePod_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -549,12 +560,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/ListPodDetail")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/ListPodDetail", runtime.WithHTTPPathPattern("/apis/pod/detail"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_ListPodDetail_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_ListPodDetail_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -569,12 +581,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/ListPod")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/ListPod", runtime.WithHTTPPathPattern("/apis/pod"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_ListPod_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_ListPod_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
@ -589,12 +602,13 @@ func RegisterPodServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux,
|
|||
ctx, cancel := context.WithCancel(req.Context())
|
||||
defer cancel()
|
||||
inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req)
|
||||
rctx, err := runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/ListPodAll")
|
||||
var err error
|
||||
ctx, err = runtime.AnnotateContext(ctx, mux, req, "/pbpod.PodService/ListPodAll", runtime.WithHTTPPathPattern("/apis/pod/all"))
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
return
|
||||
}
|
||||
resp, md, err := request_PodService_ListPodAll_0(rctx, inboundMarshaler, client, req, pathParams)
|
||||
resp, md, err := request_PodService_ListPodAll_0(ctx, inboundMarshaler, client, req, pathParams)
|
||||
ctx = runtime.NewServerMetadataContext(ctx, md)
|
||||
if err != nil {
|
||||
runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err)
|
||||
|
|
|
@ -939,18 +939,18 @@ var file_idl_pbtenant_tenant_proto_rawDesc = []byte{
|
|||
0x10, 0x12, 0x12, 0x12, 0x0a, 0x0e, 0x61, 0x77, 0x73, 0x5f, 0x65, 0x75, 0x5f, 0x6e, 0x6f, 0x72,
|
||||
0x74, 0x68, 0x5f, 0x31, 0x10, 0x13, 0x12, 0x12, 0x0a, 0x0e, 0x61, 0x77, 0x73, 0x5f, 0x6d, 0x65,
|
||||
0x5f, 0x73, 0x6f, 0x75, 0x74, 0x68, 0x5f, 0x31, 0x10, 0x14, 0x12, 0x11, 0x0a, 0x0d, 0x61, 0x77,
|
||||
0x73, 0x5f, 0x73, 0x61, 0x5f, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x31, 0x10, 0x15, 0x32, 0x70, 0x0a,
|
||||
0x0d, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x5f,
|
||||
0x92, 0x41, 0x5c, 0x12, 0x1e, 0xe6, 0x89, 0x80, 0xe6, 0x9c, 0x89, 0xe4, 0xba, 0x91, 0xe7, 0xa7,
|
||||
0x73, 0x5f, 0x73, 0x61, 0x5f, 0x65, 0x61, 0x73, 0x74, 0x5f, 0x31, 0x10, 0x15, 0x32, 0x71, 0x0a,
|
||||
0x0d, 0x54, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x1a, 0x60,
|
||||
0x92, 0x41, 0x5d, 0x12, 0x1e, 0xe6, 0x89, 0x80, 0xe6, 0x9c, 0x89, 0xe4, 0xba, 0x91, 0xe7, 0xa7,
|
||||
0x9f, 0xe6, 0x88, 0xb7, 0xe7, 0x9a, 0x84, 0xe8, 0xae, 0xa4, 0xe8, 0xaf, 0x81, 0xe6, 0x9c, 0x8d,
|
||||
0xe5, 0x8a, 0xa1, 0x1a, 0x3a, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x20, 0x6f, 0x75, 0x74, 0x20,
|
||||
0x6d, 0x6f, 0x72, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x50, 0x43, 0x4d, 0x12, 0x1f,
|
||||
0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x67, 0x69, 0x74, 0x6c, 0x69, 0x6e, 0x6b, 0x2e,
|
||||
0x6f, 0x72, 0x67, 0x2e, 0x63, 0x6e, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2f, 0x50, 0x43, 0x4d, 0x42,
|
||||
0x30, 0x5a, 0x2e, 0x67, 0x69, 0x74, 0x6c, 0x69, 0x6e, 0x6b, 0x2e, 0x6f, 0x72, 0x67, 0x2e, 0x63,
|
||||
0x6e, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2f, 0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e, 0x5f, 0x74,
|
||||
0x72, 0x61, 0x6e, 0x73, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x70, 0x62, 0x74, 0x65, 0x6e, 0x61, 0x6e,
|
||||
0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
0xe5, 0x8a, 0xa1, 0x1a, 0x3b, 0x0a, 0x17, 0x46, 0x69, 0x6e, 0x64, 0x20, 0x6f, 0x75, 0x74, 0x20,
|
||||
0x6d, 0x6f, 0x72, 0x65, 0x20, 0x61, 0x62, 0x6f, 0x75, 0x74, 0x20, 0x50, 0x43, 0x4d, 0x12, 0x20,
|
||||
0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63,
|
||||
0x6f, 0x6d, 0x2f, 0x4a, 0x43, 0x43, 0x45, 0x2d, 0x6e, 0x75, 0x64, 0x74, 0x2f, 0x50, 0x43, 0x4d,
|
||||
0x42, 0x31, 0x5a, 0x2f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4a,
|
||||
0x43, 0x43, 0x45, 0x2d, 0x6e, 0x75, 0x64, 0x74, 0x2f, 0x50, 0x43, 0x4d, 0x2f, 0x6c, 0x61, 0x6e,
|
||||
0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x2f, 0x69, 0x64, 0x6c, 0x2f, 0x70, 0x62, 0x74, 0x65, 0x6e,
|
||||
0x61, 0x6e, 0x74, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
||||
}
|
||||
|
||||
var (
|
||||
|
|
|
@ -68,14 +68,11 @@
|
|||
"protobufAny": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"typeUrl": {
|
||||
"@type": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "byte"
|
||||
}
|
||||
}
|
||||
"additionalProperties": {}
|
||||
},
|
||||
"rpcStatus": {
|
||||
"type": "object",
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
"parameters": [
|
||||
{
|
||||
"name": "provider",
|
||||
"description": "云名称.\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"description": "云名称\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string",
|
||||
|
@ -232,7 +232,7 @@
|
|||
"parameters": [
|
||||
{
|
||||
"name": "provider",
|
||||
"description": "云名称.\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"description": "云名称\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string",
|
||||
|
@ -247,14 +247,14 @@
|
|||
},
|
||||
{
|
||||
"name": "accountName",
|
||||
"description": "账户名称,根据config.yaml中的配置,默认为第一个配置的账户.",
|
||||
"description": "账户名称,根据config.yaml中的配置,默认为第一个配置的账户",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"name": "regionId",
|
||||
"description": "区域Id,参考 tenant.proto 中的各个云的区域.",
|
||||
"description": "区域Id,参考 tenant.proto 中的各个云的区域",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -262,7 +262,7 @@
|
|||
},
|
||||
{
|
||||
"name": "pageNumber",
|
||||
"description": "分页相关参数,页码.",
|
||||
"description": "分页相关参数,页码",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -270,7 +270,7 @@
|
|||
},
|
||||
{
|
||||
"name": "pageSize",
|
||||
"description": "分页相关参数,每页数量.",
|
||||
"description": "分页相关参数,每页数量",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -278,14 +278,14 @@
|
|||
},
|
||||
{
|
||||
"name": "nextToken",
|
||||
"description": "分页相关参数,下一页的token.",
|
||||
"description": "分页相关参数,下一页的token",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"name": "namespace",
|
||||
"description": "--------harvester---------\nnamespace.",
|
||||
"description": "--------harvester---------\nnamespace",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
|
@ -985,14 +985,11 @@
|
|||
"protobufAny": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"typeUrl": {
|
||||
"@type": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "byte"
|
||||
}
|
||||
}
|
||||
"additionalProperties": {}
|
||||
},
|
||||
"rpcStatus": {
|
||||
"type": "object",
|
||||
|
|
|
@ -37,7 +37,7 @@
|
|||
"parameters": [
|
||||
{
|
||||
"name": "provider",
|
||||
"description": "cloud name.\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"description": "cloud name\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string",
|
||||
|
@ -52,6 +52,14 @@
|
|||
},
|
||||
{
|
||||
"name": "namespace",
|
||||
"description": "命名空间",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"name": "requestSource",
|
||||
"description": "请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
|
@ -205,7 +213,7 @@
|
|||
"parameters": [
|
||||
{
|
||||
"name": "provider",
|
||||
"description": "云名称.\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"description": "云名称\n\n - ali: 0 - 阿里云\n - tencent: 1 - 腾讯云\n - huawei: 2 - 华为云\n - k8s: 3 - K8S\n - harvester: 3 - Harvester",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string",
|
||||
|
@ -220,14 +228,14 @@
|
|||
},
|
||||
{
|
||||
"name": "accountName",
|
||||
"description": "账户名称,根据config.yaml中的配置,默认为第一个配置的账户.",
|
||||
"description": "账户名称,根据config.yaml中的配置,默认为第一个配置的账户",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"name": "regionId",
|
||||
"description": "区域Id,参考 tenant.proto 中的各个云的区域.",
|
||||
"description": "区域Id,参考 tenant.proto 中的各个云的区域",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -235,7 +243,7 @@
|
|||
},
|
||||
{
|
||||
"name": "regionName",
|
||||
"description": "区域名称,各云厂商自定义的region name.",
|
||||
"description": "区域名称,各云厂商自定义的region name",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -243,7 +251,7 @@
|
|||
},
|
||||
{
|
||||
"name": "podId",
|
||||
"description": "podID.",
|
||||
"description": "podID",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -251,7 +259,7 @@
|
|||
},
|
||||
{
|
||||
"name": "pageNumber",
|
||||
"description": "分页相关参数,页码.",
|
||||
"description": "分页相关参数,页码",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -259,7 +267,7 @@
|
|||
},
|
||||
{
|
||||
"name": "pageSize",
|
||||
"description": "分页相关参数,每页数量.",
|
||||
"description": "分页相关参数,每页数量",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "integer",
|
||||
|
@ -267,14 +275,14 @@
|
|||
},
|
||||
{
|
||||
"name": "nextToken",
|
||||
"description": "分页相关参数,下一页的token.",
|
||||
"description": "分页相关参数,下一页的token",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"name": "namespace",
|
||||
"description": "namespace.",
|
||||
"description": "namespace",
|
||||
"in": "query",
|
||||
"required": false,
|
||||
"type": "string"
|
||||
|
@ -375,6 +383,10 @@
|
|||
"namespace": {
|
||||
"type": "string",
|
||||
"title": "名空间"
|
||||
},
|
||||
"requestSource": {
|
||||
"type": "string",
|
||||
"title": "请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -438,13 +450,17 @@
|
|||
"type": "string",
|
||||
"title": "账号名称"
|
||||
},
|
||||
"pcmId": {
|
||||
"type": "string",
|
||||
"title": "pcm id"
|
||||
},
|
||||
"podId": {
|
||||
"type": "string",
|
||||
"title": "实例ID"
|
||||
"title": "podId"
|
||||
},
|
||||
"podName": {
|
||||
"type": "string",
|
||||
"title": "实例名称"
|
||||
"title": "podName"
|
||||
},
|
||||
"namespace": {
|
||||
"type": "string",
|
||||
|
@ -454,6 +470,10 @@
|
|||
"type": "integer",
|
||||
"format": "int32",
|
||||
"title": "地域,数据中心"
|
||||
},
|
||||
"requestSource": {
|
||||
"type": "string",
|
||||
"title": "请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -462,7 +482,7 @@
|
|||
"properties": {
|
||||
"finished": {
|
||||
"type": "boolean",
|
||||
"title": "查询是否完成,如果为否-false,则可以将下面三个分页参数填入到请求中,继续查询"
|
||||
"title": "删除是否完成"
|
||||
},
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
|
@ -535,6 +555,10 @@
|
|||
"type": "string",
|
||||
"title": "账号名称"
|
||||
},
|
||||
"pcmId": {
|
||||
"type": "string",
|
||||
"title": "pcm id"
|
||||
},
|
||||
"podId": {
|
||||
"type": "string",
|
||||
"title": "实例id"
|
||||
|
@ -601,13 +625,17 @@
|
|||
"type": "string",
|
||||
"title": "账号名称"
|
||||
},
|
||||
"pcmId": {
|
||||
"type": "string",
|
||||
"title": "pcm ID"
|
||||
},
|
||||
"podId": {
|
||||
"type": "string",
|
||||
"title": "实例ID"
|
||||
"title": "podId"
|
||||
},
|
||||
"podName": {
|
||||
"type": "string",
|
||||
"title": "实例名称"
|
||||
"title": "podName"
|
||||
},
|
||||
"namespace": {
|
||||
"type": "string",
|
||||
|
@ -641,6 +669,10 @@
|
|||
"labels": {
|
||||
"type": "string",
|
||||
"title": "labels"
|
||||
},
|
||||
"requestSource": {
|
||||
"type": "string",
|
||||
"title": "请求源,如果是从pcm sdk 过来的,则单独生成tenanters实体"
|
||||
}
|
||||
}
|
||||
},
|
||||
|
@ -649,7 +681,7 @@
|
|||
"properties": {
|
||||
"finished": {
|
||||
"type": "boolean",
|
||||
"title": "查询是否完成,如果为否-false,则可以将下面三个分页参数填入到请求中,继续查询"
|
||||
"title": "更新是否完成"
|
||||
},
|
||||
"requestId": {
|
||||
"type": "string",
|
||||
|
@ -681,14 +713,11 @@
|
|||
"protobufAny": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"typeUrl": {
|
||||
"@type": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "byte"
|
||||
}
|
||||
}
|
||||
"additionalProperties": {}
|
||||
},
|
||||
"rpcStatus": {
|
||||
"type": "object",
|
||||
|
|
|
@ -15,14 +15,11 @@
|
|||
"protobufAny": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"typeUrl": {
|
||||
"@type": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"value": {
|
||||
"type": "string",
|
||||
"format": "byte"
|
||||
}
|
||||
}
|
||||
"additionalProperties": {}
|
||||
},
|
||||
"rpcStatus": {
|
||||
"type": "object",
|
||||
|
|
Loading…
Reference in New Issue