in eci-20180808/src/eci_20180808.cpp [168:402]
CreateContainerGroupResponse Alibabacloud_Eci20180808::Client::createContainerGroupWithOptions(shared_ptr<CreateContainerGroupRequest> request, shared_ptr<Darabonba_Util::RuntimeOptions> runtime) {
Darabonba_Util::Client::validateModel(request);
shared_ptr<map<string, boost::any>> query = make_shared<map<string, boost::any>>(map<string, boost::any>());
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestAcrRegistryInfo>>(request->acrRegistryInfo)) {
query->insert(pair<string, vector<CreateContainerGroupRequestAcrRegistryInfo>>("AcrRegistryInfo", *request->acrRegistryInfo));
}
if (!Darabonba_Util::Client::isUnset<long>(request->activeDeadlineSeconds)) {
query->insert(pair<string, long>("ActiveDeadlineSeconds", *request->activeDeadlineSeconds));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->autoCreateEip)) {
query->insert(pair<string, bool>("AutoCreateEip", *request->autoCreateEip));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->autoMatchImageCache)) {
query->insert(pair<string, bool>("AutoMatchImageCache", *request->autoMatchImageCache));
}
if (!Darabonba_Util::Client::isUnset<string>(request->clientToken)) {
query->insert(pair<string, string>("ClientToken", *request->clientToken));
}
if (!Darabonba_Util::Client::isUnset<vector<string>>(request->computeCategory)) {
query->insert(pair<string, vector<string>>("ComputeCategory", *request->computeCategory));
}
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestContainer>>(request->container)) {
query->insert(pair<string, vector<CreateContainerGroupRequestContainer>>("Container", *request->container));
}
if (!Darabonba_Util::Client::isUnset<string>(request->containerGroupName)) {
query->insert(pair<string, string>("ContainerGroupName", *request->containerGroupName));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->containerResourceView)) {
query->insert(pair<string, bool>("ContainerResourceView", *request->containerResourceView));
}
if (!Darabonba_Util::Client::isUnset<string>(request->corePattern)) {
query->insert(pair<string, string>("CorePattern", *request->corePattern));
}
if (!Darabonba_Util::Client::isUnset<double>(request->cpu)) {
query->insert(pair<string, double>("Cpu", *request->cpu));
}
if (!Darabonba_Util::Client::isUnset<string>(request->cpuArchitecture)) {
query->insert(pair<string, string>("CpuArchitecture", *request->cpuArchitecture));
}
if (!Darabonba_Util::Client::isUnset<long>(request->cpuOptionsCore)) {
query->insert(pair<string, long>("CpuOptionsCore", *request->cpuOptionsCore));
}
if (!Darabonba_Util::Client::isUnset<string>(request->cpuOptionsNuma)) {
query->insert(pair<string, string>("CpuOptionsNuma", *request->cpuOptionsNuma));
}
if (!Darabonba_Util::Client::isUnset<long>(request->cpuOptionsThreadsPerCore)) {
query->insert(pair<string, long>("CpuOptionsThreadsPerCore", *request->cpuOptionsThreadsPerCore));
}
if (!Darabonba_Util::Client::isUnset<string>(request->dataCacheBucket)) {
query->insert(pair<string, string>("DataCacheBucket", *request->dataCacheBucket));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->dataCacheBurstingEnabled)) {
query->insert(pair<string, bool>("DataCacheBurstingEnabled", *request->dataCacheBurstingEnabled));
}
if (!Darabonba_Util::Client::isUnset<string>(request->dataCachePL)) {
query->insert(pair<string, string>("DataCachePL", *request->dataCachePL));
}
if (!Darabonba_Util::Client::isUnset<long>(request->dataCacheProvisionedIops)) {
query->insert(pair<string, long>("DataCacheProvisionedIops", *request->dataCacheProvisionedIops));
}
if (!Darabonba_Util::Client::isUnset<string>(request->dnsPolicy)) {
query->insert(pair<string, string>("DnsPolicy", *request->dnsPolicy));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->dryRun)) {
query->insert(pair<string, bool>("DryRun", *request->dryRun));
}
if (!Darabonba_Util::Client::isUnset<long>(request->egressBandwidth)) {
query->insert(pair<string, long>("EgressBandwidth", *request->egressBandwidth));
}
if (!Darabonba_Util::Client::isUnset<long>(request->eipBandwidth)) {
query->insert(pair<string, long>("EipBandwidth", *request->eipBandwidth));
}
if (!Darabonba_Util::Client::isUnset<string>(request->eipCommonBandwidthPackage)) {
query->insert(pair<string, string>("EipCommonBandwidthPackage", *request->eipCommonBandwidthPackage));
}
if (!Darabonba_Util::Client::isUnset<string>(request->eipISP)) {
query->insert(pair<string, string>("EipISP", *request->eipISP));
}
if (!Darabonba_Util::Client::isUnset<string>(request->eipInstanceId)) {
query->insert(pair<string, string>("EipInstanceId", *request->eipInstanceId));
}
if (!Darabonba_Util::Client::isUnset<long>(request->ephemeralStorage)) {
query->insert(pair<string, long>("EphemeralStorage", *request->ephemeralStorage));
}
if (!Darabonba_Util::Client::isUnset<string>(request->fixedIp)) {
query->insert(pair<string, string>("FixedIp", *request->fixedIp));
}
if (!Darabonba_Util::Client::isUnset<long>(request->fixedIpRetainHour)) {
query->insert(pair<string, long>("FixedIpRetainHour", *request->fixedIpRetainHour));
}
if (!Darabonba_Util::Client::isUnset<string>(request->gpuDriverVersion)) {
query->insert(pair<string, string>("GpuDriverVersion", *request->gpuDriverVersion));
}
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestHostAliase>>(request->hostAliase)) {
query->insert(pair<string, vector<CreateContainerGroupRequestHostAliase>>("HostAliase", *request->hostAliase));
}
if (!Darabonba_Util::Client::isUnset<string>(request->hostName)) {
query->insert(pair<string, string>("HostName", *request->hostName));
}
if (!Darabonba_Util::Client::isUnset<string>(request->imageAccelerateMode)) {
query->insert(pair<string, string>("ImageAccelerateMode", *request->imageAccelerateMode));
}
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestImageRegistryCredential>>(request->imageRegistryCredential)) {
query->insert(pair<string, vector<CreateContainerGroupRequestImageRegistryCredential>>("ImageRegistryCredential", *request->imageRegistryCredential));
}
if (!Darabonba_Util::Client::isUnset<string>(request->imageSnapshotId)) {
query->insert(pair<string, string>("ImageSnapshotId", *request->imageSnapshotId));
}
if (!Darabonba_Util::Client::isUnset<long>(request->ingressBandwidth)) {
query->insert(pair<string, long>("IngressBandwidth", *request->ingressBandwidth));
}
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestInitContainer>>(request->initContainer)) {
query->insert(pair<string, vector<CreateContainerGroupRequestInitContainer>>("InitContainer", *request->initContainer));
}
if (!Darabonba_Util::Client::isUnset<string>(request->insecureRegistry)) {
query->insert(pair<string, string>("InsecureRegistry", *request->insecureRegistry));
}
if (!Darabonba_Util::Client::isUnset<string>(request->instanceType)) {
query->insert(pair<string, string>("InstanceType", *request->instanceType));
}
if (!Darabonba_Util::Client::isUnset<long>(request->ipv6AddressCount)) {
query->insert(pair<string, long>("Ipv6AddressCount", *request->ipv6AddressCount));
}
if (!Darabonba_Util::Client::isUnset<string>(request->ipv6GatewayBandwidth)) {
query->insert(pair<string, string>("Ipv6GatewayBandwidth", *request->ipv6GatewayBandwidth));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->ipv6GatewayBandwidthEnable)) {
query->insert(pair<string, bool>("Ipv6GatewayBandwidthEnable", *request->ipv6GatewayBandwidthEnable));
}
if (!Darabonba_Util::Client::isUnset<double>(request->memory)) {
query->insert(pair<string, double>("Memory", *request->memory));
}
if (!Darabonba_Util::Client::isUnset<vector<string>>(request->ntpServer)) {
query->insert(pair<string, vector<string>>("NtpServer", *request->ntpServer));
}
if (!Darabonba_Util::Client::isUnset<string>(request->osType)) {
query->insert(pair<string, string>("OsType", *request->osType));
}
if (!Darabonba_Util::Client::isUnset<CreateContainerGroupRequestOverheadReservationOption>(request->overheadReservationOption)) {
query->insert(pair<string, CreateContainerGroupRequestOverheadReservationOption>("OverheadReservationOption", *request->overheadReservationOption));
}
if (!Darabonba_Util::Client::isUnset<string>(request->ownerAccount)) {
query->insert(pair<string, string>("OwnerAccount", *request->ownerAccount));
}
if (!Darabonba_Util::Client::isUnset<long>(request->ownerId)) {
query->insert(pair<string, long>("OwnerId", *request->ownerId));
}
if (!Darabonba_Util::Client::isUnset<string>(request->plainHttpRegistry)) {
query->insert(pair<string, string>("PlainHttpRegistry", *request->plainHttpRegistry));
}
if (!Darabonba_Util::Client::isUnset<string>(request->privateIpAddress)) {
query->insert(pair<string, string>("PrivateIpAddress", *request->privateIpAddress));
}
if (!Darabonba_Util::Client::isUnset<string>(request->ramRoleName)) {
query->insert(pair<string, string>("RamRoleName", *request->ramRoleName));
}
if (!Darabonba_Util::Client::isUnset<string>(request->regionId)) {
query->insert(pair<string, string>("RegionId", *request->regionId));
}
if (!Darabonba_Util::Client::isUnset<string>(request->regionId)) {
query->insert(pair<string, string>("RegionId", *request->regionId));
}
if (!Darabonba_Util::Client::isUnset<string>(request->resourceGroupId)) {
query->insert(pair<string, string>("ResourceGroupId", *request->resourceGroupId));
}
if (!Darabonba_Util::Client::isUnset<string>(request->resourceOwnerAccount)) {
query->insert(pair<string, string>("ResourceOwnerAccount", *request->resourceOwnerAccount));
}
if (!Darabonba_Util::Client::isUnset<long>(request->resourceOwnerId)) {
query->insert(pair<string, long>("ResourceOwnerId", *request->resourceOwnerId));
}
if (!Darabonba_Util::Client::isUnset<string>(request->restartPolicy)) {
query->insert(pair<string, string>("RestartPolicy", *request->restartPolicy));
}
if (!Darabonba_Util::Client::isUnset<string>(request->scheduleStrategy)) {
query->insert(pair<string, string>("ScheduleStrategy", *request->scheduleStrategy));
}
if (!Darabonba_Util::Client::isUnset<string>(request->securityGroupId)) {
query->insert(pair<string, string>("SecurityGroupId", *request->securityGroupId));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->shareProcessNamespace)) {
query->insert(pair<string, bool>("ShareProcessNamespace", *request->shareProcessNamespace));
}
if (!Darabonba_Util::Client::isUnset<long>(request->spotDuration)) {
query->insert(pair<string, long>("SpotDuration", *request->spotDuration));
}
if (!Darabonba_Util::Client::isUnset<double>(request->spotPriceLimit)) {
query->insert(pair<string, double>("SpotPriceLimit", *request->spotPriceLimit));
}
if (!Darabonba_Util::Client::isUnset<string>(request->spotStrategy)) {
query->insert(pair<string, string>("SpotStrategy", *request->spotStrategy));
}
if (!Darabonba_Util::Client::isUnset<bool>(request->strictSpot)) {
query->insert(pair<string, bool>("StrictSpot", *request->strictSpot));
}
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestTag>>(request->tag)) {
query->insert(pair<string, vector<CreateContainerGroupRequestTag>>("Tag", *request->tag));
}
if (!Darabonba_Util::Client::isUnset<long>(request->terminationGracePeriodSeconds)) {
query->insert(pair<string, long>("TerminationGracePeriodSeconds", *request->terminationGracePeriodSeconds));
}
if (!Darabonba_Util::Client::isUnset<string>(request->vSwitchId)) {
query->insert(pair<string, string>("VSwitchId", *request->vSwitchId));
}
if (!Darabonba_Util::Client::isUnset<vector<CreateContainerGroupRequestVolume>>(request->volume)) {
query->insert(pair<string, vector<CreateContainerGroupRequestVolume>>("Volume", *request->volume));
}
if (!Darabonba_Util::Client::isUnset<string>(request->zoneId)) {
query->insert(pair<string, string>("ZoneId", *request->zoneId));
}
if (!Darabonba_Util::Client::isUnset<CreateContainerGroupRequestDnsConfig>(request->dnsConfig)) {
query->insert(pair<string, CreateContainerGroupRequestDnsConfig>("DnsConfig", *request->dnsConfig));
}
if (!Darabonba_Util::Client::isUnset<CreateContainerGroupRequestHostSecurityContext>(request->hostSecurityContext)) {
query->insert(pair<string, CreateContainerGroupRequestHostSecurityContext>("HostSecurityContext", *request->hostSecurityContext));
}
if (!Darabonba_Util::Client::isUnset<CreateContainerGroupRequestSecurityContext>(request->securityContext)) {
query->insert(pair<string, CreateContainerGroupRequestSecurityContext>("SecurityContext", *request->securityContext));
}
shared_ptr<Alibabacloud_OpenApi::OpenApiRequest> req = make_shared<Alibabacloud_OpenApi::OpenApiRequest>(map<string, boost::any>({
{"query", boost::any(Alibabacloud_OpenApiUtil::Client::query(query))}
}));
shared_ptr<Alibabacloud_OpenApi::Params> params = make_shared<Alibabacloud_OpenApi::Params>(map<string, boost::any>({
{"action", boost::any(string("CreateContainerGroup"))},
{"version", boost::any(string("2018-08-08"))},
{"protocol", boost::any(string("HTTPS"))},
{"pathname", boost::any(string("/"))},
{"method", boost::any(string("POST"))},
{"authType", boost::any(string("AK"))},
{"style", boost::any(string("RPC"))},
{"reqBodyType", boost::any(string("formData"))},
{"bodyType", boost::any(string("json"))}
}));
return CreateContainerGroupResponse(callApi(params, req, runtime));
}