UNPKG

@volcengine/pulumi

Version:

A Pulumi package for creating and managing volcengine cloud resources.

1,674 lines 407 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; export interface ProviderAssumeRole { /** * The session name to use when making the AssumeRole call. */ assumeRoleSessionName: pulumi.Input<string>; /** * The TRN of the role to assume. */ assumeRoleTrn: pulumi.Input<string>; /** * The duration of the session when making the AssumeRole call. Its value ranges from 900 to 43200(seconds), and default is 3600 seconds. */ durationSeconds: pulumi.Input<number>; /** * A more restrictive policy when making the AssumeRole call. */ policy?: pulumi.Input<string>; } export interface ProviderAssumeRoleWithOidc { /** * The duration of the session when making the AssumeRole call. Its value ranges from 900 to 43200(seconds), and default is 3600 seconds. */ durationSeconds: pulumi.Input<number>; /** * The OIDC token to use when making the AssumeRole call. */ oidcToken: pulumi.Input<string>; /** * A more restrictive policy when making the AssumeRole call. */ policy?: pulumi.Input<string>; /** * The session name to use when making the AssumeRole call. */ roleSessionName: pulumi.Input<string>; /** * The TRN of the role to assume, in the format `trn:iam:${AccountId}:role/${RoleName}`. */ roleTrn: pulumi.Input<string>; } export declare namespace alb { interface AclAclEntry { /** * The description of the AclEntry. */ description?: pulumi.Input<string>; /** * The content of the AclEntry. */ entry: pulumi.Input<string>; } interface AclTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface AclsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface AclsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface AlbEipBillingConfig { /** * The peek bandwidth of the EIP which automatically assigned to the Alb. Unit: Mbps. */ bandwidth: pulumi.Input<number>; /** * The billing type of the EIP which automatically assigned to the Alb. Valid values: `PostPaidByBandwidth`, `PostPaidByTraffic`. */ eipBillingType: pulumi.Input<string>; /** * The ISP of the EIP which automatically associated to the Alb, the value can be `BGP`. */ isp: pulumi.Input<string>; } interface AlbGlobalAccelerator { /** * The global accelerator id. */ acceleratorId?: pulumi.Input<string>; /** * The global accelerator listener id. */ acceleratorListenerId?: pulumi.Input<string>; /** * The global accelerator endpoint group id. */ endpointGroupId?: pulumi.Input<string>; /** * The traffic distribution weight of the endpoint. The value range is: 1 - 100. */ weight?: pulumi.Input<number>; } interface AlbIpv6EipBillingConfig { /** * The peek bandwidth of the Ipv6 EIP which automatically assigned to the Alb. Unit: Mbps. */ bandwidth: pulumi.Input<number>; /** * The billing type of the Tpv6 EIP which automatically assigned to the Alb. Valid values: `PostPaidByBandwidth`, `PostPaidByTraffic`. */ billingType: pulumi.Input<string>; /** * The ISP of the Ipv6 EIP which automatically associated to the Alb, the value can be `BGP`. */ isp: pulumi.Input<string>; } interface AlbTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface AlbZoneMapping { /** * The IP address information of the Alb in this availability zone. */ loadBalancerAddresses?: pulumi.Input<pulumi.Input<inputs.alb.AlbZoneMappingLoadBalancerAddress>[]>; /** * The subnet id of the Alb in this availability zone. */ subnetId?: pulumi.Input<string>; /** * The availability zone id of the Alb. */ zoneId?: pulumi.Input<string>; } interface AlbZoneMappingLoadBalancerAddress { /** * The Eip address of the Alb in this availability zone. */ eipAddress?: pulumi.Input<string>; /** * The Eip id of alb instance in this availability zone. */ eipId?: pulumi.Input<string>; /** * The Eni address of the Alb in this availability zone. */ eniAddress?: pulumi.Input<string>; /** * The Eni id of the Alb in this availability zone. */ eniId?: pulumi.Input<string>; /** * The Eni Ipv6 address of the Alb in this availability zone. */ eniIpv6Address?: pulumi.Input<string>; /** * The Ipv6 Eip id of alb instance in this availability zone. */ ipv6EipId?: pulumi.Input<string>; } interface AlbsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface AlbsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface AllCertificatesTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface AllCertificatesTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface CertificateTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface CertificatesTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface CertificatesTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface CustomizedCfgTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface CustomizedCfgsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface CustomizedCfgsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetAclsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetAclsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetAlbsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetAlbsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetAllCertificatesTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetAllCertificatesTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetCertificatesTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetCertificatesTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetCustomizedCfgsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetCustomizedCfgsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetHealthCheckTemplatesTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetHealthCheckTemplatesTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetListenersTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetListenersTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetServerGroupsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetServerGroupsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface HealthCheckTemplateTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface HealthCheckTemplatesTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface HealthCheckTemplatesTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface ListenerDomainExtension { /** * The server certificate ID used by the domain name. Valid when the certificateSource is `certCenter`. */ certCenterCertificateId?: pulumi.Input<string>; /** * The server certificate ID used by the domain name. Valid when the certificateSource is `alb`. */ certificateId?: pulumi.Input<string>; /** * The source of the certificate. Valid values: `alb`, `certCenter`. */ certificateSource?: pulumi.Input<string>; /** * The domain name. */ domain?: pulumi.Input<string>; /** * The extended domain ID, required only for deletion and modification. */ domainExtensionId?: pulumi.Input<string>; /** * The server certificate ID used by the domain name. Valid when the certificate source is `pcaLeaf`. */ pcaLeafCertificateId?: pulumi.Input<string>; } interface ListenerTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface ListenersTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface ListenersTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface RuleRedirectConfig { /** * The redirect domain, only support exact domain name. */ redirectDomain?: pulumi.Input<string>; /** * The redirect http code, support 301(default), 302, 307, 308. */ redirectHttpCode?: pulumi.Input<string>; /** * The redirect port. */ redirectPort?: pulumi.Input<string>; /** * The redirect protocol, support HTTP, HTTPS(default). */ redirectProtocol?: pulumi.Input<string>; /** * The redirect URI. */ redirectUri?: pulumi.Input<string>; } interface RuleRewriteConfig { /** * Rewrite path. */ rewritePath: pulumi.Input<string>; } interface RuleRuleAction { /** * Fixed response configuration for fixed response type rule. */ fixedResponseConfig?: pulumi.Input<inputs.alb.RuleRuleActionFixedResponseConfig>; /** * Forward group configuration for ForwardGroup type action. */ forwardGroupConfig?: pulumi.Input<inputs.alb.RuleRuleActionForwardGroupConfig>; /** * Redirect configuration for Redirect type action. */ redirectConfig?: pulumi.Input<inputs.alb.RuleRuleActionRedirectConfig>; /** * Rewrite configuration for Rewrite type action. */ rewriteConfig?: pulumi.Input<inputs.alb.RuleRuleActionRewriteConfig>; /** * Traffic limit configuration for TrafficLimit type action. */ trafficLimitConfig?: pulumi.Input<inputs.alb.RuleRuleActionTrafficLimitConfig>; /** * The type of rule action. Valid values: ForwardGroup, Redirect, Rewrite, TrafficLimit. */ type?: pulumi.Input<string>; } interface RuleRuleActionFixedResponseConfig { /** * The content type of the fixed response. */ contentType?: pulumi.Input<string>; /** * The response body of the fixed response. */ responseBody?: pulumi.Input<string>; /** * The fixed response HTTP status code. */ responseCode?: pulumi.Input<string>; /** * The fixed response message. */ responseMessage?: pulumi.Input<string>; } interface RuleRuleActionForwardGroupConfig { /** * The config of group session stickiness. */ serverGroupStickySession?: pulumi.Input<inputs.alb.RuleRuleActionForwardGroupConfigServerGroupStickySession>; /** * The server group tuples. */ serverGroupTuples?: pulumi.Input<pulumi.Input<inputs.alb.RuleRuleActionForwardGroupConfigServerGroupTuple>[]>; } interface RuleRuleActionForwardGroupConfigServerGroupStickySession { /** * Whether to enable sticky session stickiness. Valid values are 'on' and 'off'. */ enabled?: pulumi.Input<string>; /** * The sticky session timeout, in seconds. */ timeout?: pulumi.Input<number>; } interface RuleRuleActionForwardGroupConfigServerGroupTuple { /** * The server group ID. The priority of this parameter is higher than that of `serverGroupId`. */ serverGroupId?: pulumi.Input<string>; /** * The weight of the server group. */ weight?: pulumi.Input<number>; } interface RuleRuleActionRedirectConfig { /** * The domain name to which the request was redirected. */ host?: pulumi.Input<string>; /** * The redirect HTTP code. */ httpCode?: pulumi.Input<string>; /** * The path to which the request was redirected. */ path?: pulumi.Input<string>; /** * The redirect port. */ port?: pulumi.Input<string>; /** * The redirect protocol. */ protocol?: pulumi.Input<string>; } interface RuleRuleActionRewriteConfig { /** * The rewrite path. */ path?: pulumi.Input<string>; } interface RuleRuleActionTrafficLimitConfig { /** * The QPS limit. */ qps?: pulumi.Input<number>; } interface RuleRuleCondition { /** * Header configuration for Header type condition. */ headerConfig?: pulumi.Input<inputs.alb.RuleRuleConditionHeaderConfig>; /** * Host configuration for Host type condition. */ hostConfig?: pulumi.Input<inputs.alb.RuleRuleConditionHostConfig>; /** * Method configuration for Method type condition. */ methodConfig?: pulumi.Input<inputs.alb.RuleRuleConditionMethodConfig>; /** * Path configuration for Path type condition. */ pathConfig?: pulumi.Input<inputs.alb.RuleRuleConditionPathConfig>; /** * Query string configuration for QueryString type condition. */ queryStringConfig?: pulumi.Input<inputs.alb.RuleRuleConditionQueryStringConfig>; /** * The type of rule condition. Valid values: Host, Path, Header, Method, QueryString. */ type?: pulumi.Input<string>; } interface RuleRuleConditionHeaderConfig { /** * The header key. */ key: pulumi.Input<string>; /** * The list of header values. */ values: pulumi.Input<pulumi.Input<string>[]>; } interface RuleRuleConditionHostConfig { /** * The list of domain names. */ values: pulumi.Input<pulumi.Input<string>[]>; } interface RuleRuleConditionMethodConfig { /** * The values of the method. Vaild values: HEAD,GET,POST,OPTIONS,PUT,PATCH,DELETE. */ values: pulumi.Input<pulumi.Input<string>[]>; } interface RuleRuleConditionPathConfig { /** * The list of absolute paths. */ values?: pulumi.Input<pulumi.Input<string>[]>; } interface RuleRuleConditionQueryStringConfig { /** * The list of query string values. */ values?: pulumi.Input<pulumi.Input<inputs.alb.RuleRuleConditionQueryStringConfigValue>[]>; } interface RuleRuleConditionQueryStringConfigValue { /** * The query string key. */ key?: pulumi.Input<string>; /** * The query string value. */ value?: pulumi.Input<string>; } interface RuleServerGroupTuple { /** * The server group ID. The priority of this parameter is higher than that of `serverGroupId`. */ serverGroupId: pulumi.Input<string>; /** * The weight of the server group. */ weight?: pulumi.Input<number>; } interface ServerGroupHealthCheck { /** * The domain of health check. */ domain?: pulumi.Input<string>; /** * The enable status of health check function. Valid values: `on`, `off`. Default is `on`. */ enabled?: pulumi.Input<string>; /** * The healthy threshold of health check. Valid value range in 2~10. Default is 3. */ healthyThreshold?: pulumi.Input<number>; /** * The normal http status code of health check, the value can be `http2xx`, `http3xx`, `http4xx` or `http5xx`. Default is `http_2xx,http_3xx`. */ httpCode?: pulumi.Input<string>; /** * The http version of health check. Valid values: `HTTP1.0`, `HTTP1.1`. Default is `HTTP1.0`. */ httpVersion?: pulumi.Input<string>; /** * The interval executing health check. Unit: second. Valid value range in 1~300. Default is 2. */ interval?: pulumi.Input<number>; /** * The method of health check. Valid values: `GET` or `HEAD`. Default is `HEAD`. */ method?: pulumi.Input<string>; /** * The port of health check. When the value is 0, it means use the backend server port for health check. Valid value range in 0~65535. */ port?: pulumi.Input<number>; /** * The protocol of health check. Valid values: `HTTP`, `TCP`. Default is `HTTP`. */ protocol?: pulumi.Input<string>; /** * The response timeout of health check. Unit: second. Valid value range in 1~60. Default is 2. */ timeout?: pulumi.Input<number>; /** * The unhealthy threshold of health check. Valid value range in 2~10. Default is 3. */ unhealthyThreshold?: pulumi.Input<number>; /** * The uri of health check. */ uri?: pulumi.Input<string>; } interface ServerGroupStickySessionConfig { /** * The cookie name of the sticky session. This field is required when the value of the `stickySessionType` is `server`. */ cookie?: pulumi.Input<string>; /** * The cookie timeout of the sticky session. Unit: second. Valid value range in 1~86400. Default is 1000. This field is required when the value of the `stickySessionType` is `insert`. */ cookieTimeout?: pulumi.Input<number>; /** * The enable status of sticky session. Valid values: `on`, `off`. Default is `off`. */ stickySessionEnabled?: pulumi.Input<string>; /** * The cookie handle type of the sticky session. Valid values: `insert`, `server`. Default is `insert`. This field is required when the value of the `stickySessionEnabled` is `on`. */ stickySessionType?: pulumi.Input<string>; } interface ServerGroupTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface ServerGroupsTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface ServerGroupsTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } } export declare namespace apig { interface ApigGatewayBackendSpec { /** * Whether the api gateway support vke flannel cni. */ isVkeWithFlannelCniSupported: pulumi.Input<boolean>; /** * The vke pod cidr of the api gateway. */ vkePodCidr: pulumi.Input<string>; } interface ApigGatewayLogSpec { /** * Whether the api gateway enable tls log. */ enable: pulumi.Input<boolean>; /** * The project id of the tls. This field is required when `enable` is true. */ projectId?: pulumi.Input<string>; /** * The topic id of the tls. */ topicId?: pulumi.Input<string>; } interface ApigGatewayMonitorSpec { /** * Whether the api gateway enable monitor. */ enable: pulumi.Input<boolean>; /** * The workspace id of the monitor. This field is required when `enable` is true. */ workspaceId?: pulumi.Input<string>; } interface ApigGatewayNetworkSpec { /** * The subnet ids of the network spec. */ subnetIds: pulumi.Input<pulumi.Input<string>[]>; /** * The vpc id of the network spec. */ vpcId: pulumi.Input<string>; } interface ApigGatewayResourceSpec { /** * The clb spec code of the resource spec. Valid values: `small1`, `small2`, `medium1`, `medium2`, `large1`, `large2`. */ clbSpecCode?: pulumi.Input<string>; /** * The instance spec code of the resource spec. Valid values: `1c2g`, `2c4g`, `4c8g`, `8c16g`. */ instanceSpecCode: pulumi.Input<string>; /** * The network type of the resource spec. The default values for both `enablePublicNetwork` and `enablePrivateNetwork` are true. */ networkType?: pulumi.Input<inputs.apig.ApigGatewayResourceSpecNetworkType>; /** * The public network bandwidth of the resource spec. */ publicNetworkBandwidth?: pulumi.Input<number>; /** * The public network billing type of the resource spec. Valid values: `traffic`, `bandwidth`. */ publicNetworkBillingType?: pulumi.Input<string>; /** * The replicas of the resource spec. */ replicas: pulumi.Input<number>; } interface ApigGatewayResourceSpecNetworkType { /** * Whether the api gateway enable private network. */ enablePrivateNetwork: pulumi.Input<boolean>; /** * Whether the api gateway enable public network. */ enablePublicNetwork: pulumi.Input<boolean>; } interface ApigGatewayServiceAuthSpec { /** * Whether the api gateway service enable auth. */ enable: pulumi.Input<boolean>; } interface ApigGatewayTag { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface ApigRouteAdvancedSetting { /** * The cors policy setting of the api gateway route. */ corsPolicySetting?: pulumi.Input<inputs.apig.ApigRouteAdvancedSettingCorsPolicySetting>; /** * The header operations of the api gateway route. */ headerOperations?: pulumi.Input<pulumi.Input<inputs.apig.ApigRouteAdvancedSettingHeaderOperation>[]>; /** * The mirror policies of the api gateway route. */ mirrorPolicies?: pulumi.Input<pulumi.Input<inputs.apig.ApigRouteAdvancedSettingMirrorPolicy>[]>; /** * The retry policy setting of the api gateway route. */ retryPolicySetting?: pulumi.Input<inputs.apig.ApigRouteAdvancedSettingRetryPolicySetting>; /** * The timeout setting of the api gateway route. */ timeoutSetting?: pulumi.Input<inputs.apig.ApigRouteAdvancedSettingTimeoutSetting>; /** * The url rewrite setting of the api gateway route. */ urlRewriteSetting?: pulumi.Input<inputs.apig.ApigRouteAdvancedSettingUrlRewriteSetting>; } interface ApigRouteAdvancedSettingCorsPolicySetting { /** * Whether the cors policy setting is enabled. */ enable?: pulumi.Input<boolean>; } interface ApigRouteAdvancedSettingHeaderOperation { /** * The direction type of the header. Valid values: `request`, `response`. */ directionType?: pulumi.Input<string>; /** * The key of the header. */ key: pulumi.Input<string>; /** * The operation of the header. Valid values: `set`, `add`, `remove`. */ operation: pulumi.Input<string>; /** * The value of the header. */ value?: pulumi.Input<string>; } interface ApigRouteAdvancedSettingMirrorPolicy { /** * The percent of the mirror policy. */ percent?: pulumi.Input<inputs.apig.ApigRouteAdvancedSettingMirrorPolicyPercent>; /** * The upstream of the mirror policy. */ upstream: pulumi.Input<inputs.apig.ApigRouteAdvancedSettingMirrorPolicyUpstream>; } interface ApigRouteAdvancedSettingMirrorPolicyPercent { /** * The percent value of the mirror policy. */ value: pulumi.Input<number>; } interface ApigRouteAdvancedSettingMirrorPolicyUpstream { /** * The type of the api gateway upstream. */ type: pulumi.Input<string>; /** * The id of the api gateway upstream. */ upstreamId: pulumi.Input<string>; /** * The version of the api gateway upstream. */ version?: pulumi.Input<string>; } interface ApigRouteAdvancedSettingRetryPolicySetting { /** * The attempts of the api gateway route. */ attempts?: pulumi.Input<number>; /** * Whether the retry policy setting is enabled. */ enable?: pulumi.Input<boolean>; /** * The http codes of the api gateway route. */ httpCodes?: pulumi.Input<pulumi.Input<string>[]>; /** * The per try timeout of the api gateway route. */ perTryTimeout?: pulumi.Input<number>; /** * The retry on of the api gateway route. Valid values: `5xx`, `reset`, `connect-failure`, `refused-stream`, `cancelled`, `deadline-exceeded`, `internal`, `resource-exhausted`, `unavailable`. */ retryOns?: pulumi.Input<pulumi.Input<string>[]>; } interface ApigRouteAdvancedSettingTimeoutSetting { /** * Whether the timeout setting is enabled. */ enable?: pulumi.Input<boolean>; /** * The timeout of the api gateway route. Unit: s. */ timeout?: pulumi.Input<number>; } interface ApigRouteAdvancedSettingUrlRewriteSetting { /** * Whether the url rewrite setting is enabled. */ enable?: pulumi.Input<boolean>; /** * The url rewrite path of the api gateway route. */ urlRewrite?: pulumi.Input<string>; } interface ApigRouteCustomDomain { /** * The domain of the api gateway route. */ domain?: pulumi.Input<string>; /** * The id of the custom domain. */ id?: pulumi.Input<string>; } interface ApigRouteDomain { /** * The domain of the api gateway route. */ domain?: pulumi.Input<string>; /** * The type of the domain. */ type?: pulumi.Input<string>; } interface ApigRouteMatchRule { /** * The header of the api gateway route. */ headers?: pulumi.Input<pulumi.Input<inputs.apig.ApigRouteMatchRuleHeader>[]>; /** * The method of the api gateway route. Valid values: `GET`, `POST`, `PUT`, `DELETE`, `HEAD`, `OPTIONS`, `CONNECT`. */ methods?: pulumi.Input<pulumi.Input<string>[]>; /** * The path of the api gateway route. */ path: pulumi.Input<inputs.apig.ApigRouteMatchRulePath>; /** * The query string of the api gateway route. */ queryStrings?: pulumi.Input<pulumi.Input<inputs.apig.ApigRouteMatchRuleQueryString>[]>; } interface ApigRouteMatchRuleHeader { /** * The key of the header. */ key: pulumi.Input<string>; /** * The path of the api gateway route. */ value: pulumi.Input<inputs.apig.ApigRouteMatchRuleHeaderValue>; } interface ApigRouteMatchRuleHeaderValue { /** * The match content of the api gateway route. */ matchContent: pulumi.Input<string>; /** * The match type of the api gateway route. Valid values: `Prefix`, `Exact`, `Regex`. */ matchType: pulumi.Input<string>; } interface ApigRouteMatchRulePath { /** * The match content of the api gateway route. */ matchContent: pulumi.Input<string>; /** * The match type of the api gateway route. Valid values: `Prefix`, `Exact`, `Regex`. */ matchType: pulumi.Input<string>; } interface ApigRouteMatchRuleQueryString { /** * The key of the query string. */ key: pulumi.Input<string>; /** * The path of the api gateway route. */ value: pulumi.Input<inputs.apig.ApigRouteMatchRuleQueryStringValue>; } interface ApigRouteMatchRuleQueryStringValue { /** * The match content of the api gateway route. */ matchContent: pulumi.Input<string>; /** * The match type of the api gateway route. Valid values: `Prefix`, `Exact`, `Regex`. */ matchType: pulumi.Input<string>; } interface ApigRouteUpstreamList { /** * The ai provider settings of the api gateway route. */ aiProviderSettings?: pulumi.Input<inputs.apig.ApigRouteUpstreamListAiProviderSettings>; /** * The id of the api gateway upstream. */ upstreamId: pulumi.Input<string>; /** * The version of the api gateway upstream. */ version?: pulumi.Input<string>; /** * The weight of the api gateway upstream. Valid values: 0~10000. */ weight: pulumi.Input<number>; } interface ApigRouteUpstreamListAiProviderSettings { /** * The model of the ai provider. */ model: pulumi.Input<string>; /** * The target path of the ai provider. */ targetPath: pulumi.Input<string>; } interface ApigUpstreamCircuitBreakingSettings { /** * The base ejection time of circuit breaking. Unit: ms. Default is 10s. */ baseEjectionTime?: pulumi.Input<number>; /** * The consecutive errors of circuit breaking. Default is 5. */ consecutiveErrors?: pulumi.Input<number>; /** * Whether the circuit breaking is enabled. */ enable: pulumi.Input<boolean>; /** * The interval of circuit breaking. Unit: ms. Default is 10s. */ interval?: pulumi.Input<number>; /** * The max ejection percent of circuit breaking. Default is 20%. */ maxEjectionPercent?: pulumi.Input<number>; /** * The min health percent of circuit breaking. Default is 60%. */ minHealthPercent?: pulumi.Input<number>; } interface ApigUpstreamLoadBalancerSettings { /** * The consistent hash lb of apig upstream. */ consistentHashLb?: pulumi.Input<inputs.apig.ApigUpstreamLoadBalancerSettingsConsistentHashLb>; /** * The load balancer policy of apig upstream. Valid values: `SimpleLB`, `ConsistentHashLB`. */ lbPolicy: pulumi.Input<string>; /** * The simple load balancer of apig upstream. Valid values: `ROUND_ROBIN`, `LEAST_CONN`, `RANDOM`. */ simpleLb?: pulumi.Input<string>; /** * The warmup duration of apig upstream lb. This field is valid when the simpleLb is `ROUND_ROBIN` or `LEAST_CONN`. */ warmupDuration?: pulumi.Input<number>; } interface ApigUpstreamLoadBalancerSettingsConsistentHashLb { /** * The hash key of apig upstream consistent hash lb. Valid values: `HTTPCookie`, `HttpHeaderName`, `HttpQueryParameterName`, `UseSourceIp`. */ hashKey: pulumi.Input<string>; /** * The http cookie of apig upstream consistent hash lb. */ httpCookie?: pulumi.Input<inputs.apig.ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookie>; /** * The http header name of apig upstream consistent hash lb. */ httpHeaderName?: pulumi.Input<string>; /** * The http query parameter name of apig upstream consistent hash lb. */ httpQueryParameterName?: pulumi.Input<string>; /** * The use source ip of apig upstream consistent hash lb. */ useSourceIp?: pulumi.Input<boolean>; } interface ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookie { /** * The name of apig upstream consistent hash lb http cookie. */ name: pulumi.Input<string>; /** * The path of apig upstream consistent hash lb http cookie. */ path: pulumi.Input<string>; /** * The ttl of apig upstream consistent hash lb http cookie. */ ttl: pulumi.Input<number>; } interface ApigUpstreamSourceIngressSetting { /** * Whether to enable all ingress classes. */ enableAllIngressClasses?: pulumi.Input<boolean>; /** * Whether to enable all namespaces. */ enableAllNamespaces?: pulumi.Input<boolean>; /** * Whether to enable ingress. */ enableIngress?: pulumi.Input<boolean>; /** * Whether to enable ingress without ingress class. */ enableIngressWithoutIngressClass?: pulumi.Input<boolean>; /** * The ingress classes of ingress settings. */ ingressClasses?: pulumi.Input<pulumi.Input<string>[]>; /** * The update status of ingress settings. */ updateStatus?: pulumi.Input<boolean>; /** * The watch namespaces of ingress settings. */ watchNamespaces?: pulumi.Input<pulumi.Input<string>[]>; } interface ApigUpstreamSourceSourceSpec { /** * The k8s source of apig upstream source. */ k8sSource?: pulumi.Input<inputs.apig.ApigUpstreamSourceSourceSpecK8sSource>; /** * The nacos source of apig upstream source. */ nacosSource?: pulumi.Input<inputs.apig.ApigUpstreamSourceSourceSpecNacosSource>; } interface ApigUpstreamSourceSourceSpecK8sSource { /** * The cluster id of k8s source. */ clusterId: pulumi.Input<string>; /** * The cluster type of k8s source. */ clusterType?: pulumi.Input<string>; } interface ApigUpstreamSourceSourceSpecNacosSource { /** * The address of nacos source. */ address?: pulumi.Input<string>; /** * The auth config of nacos source. */ authConfig?: pulumi.Input<inputs.apig.ApigUpstreamSourceSourceSpecNacosSourceAuthConfig>; /** * The context path of nacos source. */ contextPath?: pulumi.Input<string>; /** * The grpc port of nacos source. */ grpcPort?: pulumi.Input<number>; /** * The http port of nacos source. */ httpPort?: pulumi.Input<number>; /** * The nacos id of nacos source. */ nacosId: pulumi.Input<string>; /** * The nacos name of nacos source. */ nacosName?: pulumi.Input<string>; } interface ApigUpstreamSourceSourceSpecNacosSourceAuthConfig { /** * The basic auth config of nacos source. */ basic?: pulumi.Input<inputs.apig.ApigUpstreamSourceSourceSpecNacosSourceAuthConfigBasic>; } interface ApigUpstreamSourceSourceSpecNacosSourceAuthConfigBasic { /** * The password of basic auth config of nacos source. */ password: pulumi.Input<string>; /** * The username of basic auth config of nacos source. */ username: pulumi.Input<string>; } interface ApigUpstreamTlsSettings { /** * The sni of apig upstream tls setting. */ sni?: pulumi.Input<string>; /** * The tls mode of apig upstream tls setting. Valid values: `DISABLE`, `SIMPLE`. */ tlsMode: pulumi.Input<string>; } interface ApigUpstreamUpstreamSpec { /** * The ai provider of apig upstream. */ aiProvider?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecAiProvider>; /** * The domain of apig upstream. */ domain?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecDomain>; /** * The ecs list of apig upstream. */ ecsLists?: pulumi.Input<pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecEcsList>[]>; /** * The fixed ip list of apig upstream. */ fixedIpLists?: pulumi.Input<pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecFixedIpList>[]>; /** * The k8s service of apig upstream. */ k8sService?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecK8sService>; /** * The nacos service of apig upstream. */ nacosService?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecNacosService>; /** * The vefaas of apig upstream. */ veFaas?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecVeFaas>; /** * The mlp of apig upstream. */ veMlp?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecVeMlp>; } interface ApigUpstreamUpstreamSpecAiProvider { /** * The base url of ai provider. */ baseUrl: pulumi.Input<string>; /** * The custom body params of ai provider. */ customBodyParams?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The custom header params of ai provider. */ customHeaderParams?: pulumi.Input<{ [key: string]: pulumi.Input<string>; }>; /** * The custom model service of ai provider. */ customModelService?: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecAiProviderCustomModelService>; /** * The name of ai provider. */ name: pulumi.Input<string>; /** * The token of ai provider. */ token: pulumi.Input<string>; } interface ApigUpstreamUpstreamSpecAiProviderCustomModelService { /** * The name of custom model service. */ name: pulumi.Input<string>; /** * The namespace of custom model service. */ namespace: pulumi.Input<string>; /** * The port of custom model service. */ port: pulumi.Input<number>; } interface ApigUpstreamUpstreamSpecDomain { /** * The domain list of apig upstream. */ domainList: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecDomainDomainList>; /** * The protocol of apig upstream. Valid values: `HTTP`, `HTTPS`. */ protocol?: pulumi.Input<string>; } interface ApigUpstreamUpstreamSpecDomainDomainList { /** * The domain of apig upstream. */ domain: pulumi.Input<string>; /** * The port of domain. Default is 80 for HTTP, 443 for HTTPS. */ port?: pulumi.Input<number>; } interface ApigUpstreamUpstreamSpecEcsList { /** * The instance id of ecs. */ ecsId: pulumi.Input<string>; /** * The ip of ecs. */ ip: pulumi.Input<string>; /** * The port of ecs. */ port: pulumi.Input<number>; } interface ApigUpstreamUpstreamSpecFixedIpList { /** * The ip of apig upstream. */ ip: pulumi.Input<string>; /** * The port of apig upstream. */ port: pulumi.Input<number>; } interface ApigUpstreamUpstreamSpecK8sService { /** * The name of k8s service. */ name: pulumi.Input<string>; /** * The namespace of k8s service. */ namespace: pulumi.Input<string>; /** * The port of k8s service. */ port: pulumi.Input<number>; } interface ApigUpstreamUpstreamSpecNacosService { /** * The group of nacos service. */ group: pulumi.Input<string>; /** * The namespace of nacos service. */ namespace: pulumi.Input<string>; /** * The namespace id of nacos service. */ namespaceId?: pulumi.Input<string>; /** * The service of nacos service. */ service: pulumi.Input<string>; /** * The upstream source id. */ upstreamSourceId: pulumi.Input<string>; } interface ApigUpstreamUpstreamSpecVeFaas { /** * The function id of vefaas. */ functionId: pulumi.Input<string>; } interface ApigUpstreamUpstreamSpecVeMlp { /** * The k8s service of mlp. */ k8sService: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecVeMlpK8sService>; /** * The service discover type of mlp. */ serviceDiscoverType: pulumi.Input<string>; /** * The service id of mlp. */ serviceId: pulumi.Input<string>; /** * The service name of mlp. */ serviceName?: pulumi.Input<string>; /** * The service url of mlp. */ serviceUrl?: pulumi.Input<string>; /** * The upstream source id. */ upstreamSourceId?: pulumi.Input<string>; } interface ApigUpstreamUpstreamSpecVeMlpK8sService { /** * The cluster info of k8s service. */ clusterInfo: pulumi.Input<inputs.apig.ApigUpstreamUpstreamSpecVeMlpK8sServiceClusterInfo>; /** * The name of k8s service. */ name: pulumi.Input<string>; /** * The namespace of k8s service. */ namespace: pulumi.Input<string>; /** * The port of k8s service. */ port: pulumi.Input<number>; } interface ApigUpstreamUpstreamSpecVeMlpK8sServiceClusterInfo { /** * The account id of k8s service. */ accountId: pulumi.Input<number>; /** * The cluster name of k8s service. */ clusterName: pulumi.Input<string>; } interface ApigUpstreamVersionDetail { /** * The labels of apig upstream version. */ labels?: pulumi.Input<pulumi.Input<inputs.apig.ApigUpstreamVersionDetailLabel>[]>; /** * The name of the apig upstream. */ name?: pulumi.Input<string>; /** * The update time of apig upstream version. */ updateTime?: pulumi.Input<string>; } interface ApigUpstreamVersionDetailLabel { /** * The key of apig upstream version label. */ key?: pulumi.Input<string>; /** * The value of apig upstream version label. */ value?: pulumi.Input<string>; } interface ApigUpstreamVersionUpstreamVersion { /** * The labels of apig upstream version. */ labels?: pulumi.Input<pulumi.Input<inputs.apig.ApigUpstreamVersionUpstreamVersionLabel>[]>; /** * The name of apig upstream version. */ name: pulumi.Input<string>; /** * The update time of apig upstream version. */ updateTime?: pulumi.Input<string>; } interface ApigUpstreamVersionUpstreamVersionLabel { /** * The key of apig upstream version label. */ key: pulumi.Input<string>; /** * The value of apig upstream version label. */ value: pulumi.Input<string>; } interface GatewaysTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GatewaysTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } interface GetGatewaysTag { /** * The Key of Tags. */ key: string; /** * The Value of Tags. */ value: string; } interface GetGatewaysTagArgs { /** * The Key of Tags. */ key: pulumi.Input<string>; /** * The Value of Tags. */ value: pulumi.Input<string>; } } export declare namespace autoscaling { interface ScalingConfigurationTag { /** * The Key of Tags. */ key: pulumi.Input<string>;