volcengine.apig.ApigRoute
Explore with Pulumi AI
Provides a resource to manage apig route
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as volcengine from "@pulumi/volcengine";
import * as volcengine from "@volcengine/pulumi";
const fooZones = volcengine.ecs.getZones({});
const fooVpc = new volcengine.vpc.Vpc("fooVpc", {
vpcName: "acc-test-vpc",
cidrBlock: "172.16.0.0/16",
});
const foo1 = new volcengine.vpc.Subnet("foo1", {
subnetName: "acc-test-subnet",
cidrBlock: "172.16.0.0/24",
zoneId: fooZones.then(fooZones => fooZones.zones?.[0]?.id),
vpcId: fooVpc.id,
});
const foo2 = new volcengine.vpc.Subnet("foo2", {
subnetName: "acc-test-subnet",
cidrBlock: "172.16.1.0/24",
zoneId: fooZones.then(fooZones => fooZones.zones?.[1]?.id),
vpcId: fooVpc.id,
});
const fooApigGateway = new volcengine.apig.ApigGateway("fooApigGateway", {
type: "standard",
comments: "acc-test",
projectName: "default",
tags: [{
key: "k1",
value: "v1",
}],
networkSpec: {
vpcId: fooVpc.id,
subnetIds: [
foo1.id,
foo2.id,
],
},
resourceSpec: {
replicas: 2,
instanceSpecCode: "1c2g",
clbSpecCode: "small_1",
publicNetworkBillingType: "bandwidth",
publicNetworkBandwidth: 1,
networkType: {
enablePublicNetwork: true,
enablePrivateNetwork: true,
},
},
logSpec: {
enable: true,
projectId: "d3cb87c0-faeb-4074-b1ee-9bd747865a76",
topicId: "d339482e-d86d-4bd8-a9bb-f270417f00a1",
},
monitorSpec: {
enable: true,
workspaceId: "4ed1caf3-279d-4c5f-8301-87ea38e92ffc",
},
});
const fooApigGatewayService = new volcengine.apig.ApigGatewayService("fooApigGatewayService", {
gatewayId: fooApigGateway.id,
serviceName: "acc-test-apig-service",
comments: "acc-test",
protocols: [
"HTTP",
"HTTPS",
],
authSpec: {
enable: false,
},
});
const foo_fixed_ip = new volcengine.apig.ApigUpstream("foo-fixed-ip", {
gatewayId: fooApigGateway.id,
comments: "acc-test",
resourceType: "Console",
protocol: "HTTP",
loadBalancerSettings: {
lbPolicy: "ConsistentHashLB",
consistentHashLb: {
hashKey: "HTTPCookie",
httpCookie: {
name: "test",
path: "/",
ttl: 300,
},
},
},
tlsSettings: {
tlsMode: "SIMPLE",
sni: "test",
},
circuitBreakingSettings: {
enable: false,
consecutiveErrors: 5,
interval: 10000,
baseEjectionTime: 30000,
maxEjectionPercent: 20,
minHealthPercent: 60,
},
sourceType: "FixedIP",
upstreamSpec: {
fixedIpLists: [
{
ip: "172.16.0.10",
port: 8080,
},
{
ip: "172.16.0.20",
port: 8090,
},
{
ip: "172.16.0.30",
port: 8099,
},
],
},
});
const fooApigRoute = new volcengine.apig.ApigRoute("fooApigRoute", {
serviceId: fooApigGatewayService.id,
resourceType: "Console",
priority: 2,
enable: true,
upstreamLists: [{
upstreamId: foo_fixed_ip.id,
weight: 100,
}],
matchRule: {
path: {
matchType: "Prefix",
matchContent: "/test",
},
methods: [
"GET",
"POST",
],
queryStrings: [{
key: "test-key",
value: {
matchType: "Exact",
matchContent: "test-value",
},
}],
headers: [{
key: "test-header",
value: {
matchType: "Regex",
matchContent: "test-value",
},
}],
},
advancedSetting: {
timeoutSetting: {
enable: false,
timeout: 10,
},
corsPolicySetting: {
enable: false,
},
urlRewriteSetting: {
enable: true,
urlRewrite: "/test",
},
retryPolicySetting: {
enable: true,
attempts: 5,
perTryTimeout: 1000,
retryOns: [
"5xx",
"reset",
],
httpCodes: [
"500",
"502",
"503",
"504",
],
},
headerOperations: [
{
operation: "add",
key: "test-header-req",
value: "test-value",
directionType: "request",
},
{
operation: "set",
key: "test-header-resp",
value: "test-value",
directionType: "response",
},
],
mirrorPolicies: [{
upstream: {
upstreamId: foo_fixed_ip.id,
type: "fixed_ip",
},
percent: {
value: 50,
},
}],
},
});
import pulumi
import pulumi_volcengine as volcengine
foo_zones = volcengine.ecs.get_zones()
foo_vpc = volcengine.vpc.Vpc("fooVpc",
vpc_name="acc-test-vpc",
cidr_block="172.16.0.0/16")
foo1 = volcengine.vpc.Subnet("foo1",
subnet_name="acc-test-subnet",
cidr_block="172.16.0.0/24",
zone_id=foo_zones.zones[0].id,
vpc_id=foo_vpc.id)
foo2 = volcengine.vpc.Subnet("foo2",
subnet_name="acc-test-subnet",
cidr_block="172.16.1.0/24",
zone_id=foo_zones.zones[1].id,
vpc_id=foo_vpc.id)
foo_apig_gateway = volcengine.apig.ApigGateway("fooApigGateway",
type="standard",
comments="acc-test",
project_name="default",
tags=[volcengine.apig.ApigGatewayTagArgs(
key="k1",
value="v1",
)],
network_spec=volcengine.apig.ApigGatewayNetworkSpecArgs(
vpc_id=foo_vpc.id,
subnet_ids=[
foo1.id,
foo2.id,
],
),
resource_spec=volcengine.apig.ApigGatewayResourceSpecArgs(
replicas=2,
instance_spec_code="1c2g",
clb_spec_code="small_1",
public_network_billing_type="bandwidth",
public_network_bandwidth=1,
network_type=volcengine.apig.ApigGatewayResourceSpecNetworkTypeArgs(
enable_public_network=True,
enable_private_network=True,
),
),
log_spec=volcengine.apig.ApigGatewayLogSpecArgs(
enable=True,
project_id="d3cb87c0-faeb-4074-b1ee-9bd747865a76",
topic_id="d339482e-d86d-4bd8-a9bb-f270417f00a1",
),
monitor_spec=volcengine.apig.ApigGatewayMonitorSpecArgs(
enable=True,
workspace_id="4ed1caf3-279d-4c5f-8301-87ea38e92ffc",
))
foo_apig_gateway_service = volcengine.apig.ApigGatewayService("fooApigGatewayService",
gateway_id=foo_apig_gateway.id,
service_name="acc-test-apig-service",
comments="acc-test",
protocols=[
"HTTP",
"HTTPS",
],
auth_spec=volcengine.apig.ApigGatewayServiceAuthSpecArgs(
enable=False,
))
foo_fixed_ip = volcengine.apig.ApigUpstream("foo-fixed-ip",
gateway_id=foo_apig_gateway.id,
comments="acc-test",
resource_type="Console",
protocol="HTTP",
load_balancer_settings=volcengine.apig.ApigUpstreamLoadBalancerSettingsArgs(
lb_policy="ConsistentHashLB",
consistent_hash_lb=volcengine.apig.ApigUpstreamLoadBalancerSettingsConsistentHashLbArgs(
hash_key="HTTPCookie",
http_cookie=volcengine.apig.ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookieArgs(
name="test",
path="/",
ttl=300,
),
),
),
tls_settings=volcengine.apig.ApigUpstreamTlsSettingsArgs(
tls_mode="SIMPLE",
sni="test",
),
circuit_breaking_settings=volcengine.apig.ApigUpstreamCircuitBreakingSettingsArgs(
enable=False,
consecutive_errors=5,
interval=10000,
base_ejection_time=30000,
max_ejection_percent=20,
min_health_percent=60,
),
source_type="FixedIP",
upstream_spec=volcengine.apig.ApigUpstreamUpstreamSpecArgs(
fixed_ip_lists=[
volcengine.apig.ApigUpstreamUpstreamSpecFixedIpListArgs(
ip="172.16.0.10",
port=8080,
),
volcengine.apig.ApigUpstreamUpstreamSpecFixedIpListArgs(
ip="172.16.0.20",
port=8090,
),
volcengine.apig.ApigUpstreamUpstreamSpecFixedIpListArgs(
ip="172.16.0.30",
port=8099,
),
],
))
foo_apig_route = volcengine.apig.ApigRoute("fooApigRoute",
service_id=foo_apig_gateway_service.id,
resource_type="Console",
priority=2,
enable=True,
upstream_lists=[volcengine.apig.ApigRouteUpstreamListArgs(
upstream_id=foo_fixed_ip.id,
weight=100,
)],
match_rule=volcengine.apig.ApigRouteMatchRuleArgs(
path=volcengine.apig.ApigRouteMatchRulePathArgs(
match_type="Prefix",
match_content="/test",
),
methods=[
"GET",
"POST",
],
query_strings=[volcengine.apig.ApigRouteMatchRuleQueryStringArgs(
key="test-key",
value=volcengine.apig.ApigRouteMatchRuleQueryStringValueArgs(
match_type="Exact",
match_content="test-value",
),
)],
headers=[volcengine.apig.ApigRouteMatchRuleHeaderArgs(
key="test-header",
value=volcengine.apig.ApigRouteMatchRuleHeaderValueArgs(
match_type="Regex",
match_content="test-value",
),
)],
),
advanced_setting=volcengine.apig.ApigRouteAdvancedSettingArgs(
timeout_setting=volcengine.apig.ApigRouteAdvancedSettingTimeoutSettingArgs(
enable=False,
timeout=10,
),
cors_policy_setting=volcengine.apig.ApigRouteAdvancedSettingCorsPolicySettingArgs(
enable=False,
),
url_rewrite_setting=volcengine.apig.ApigRouteAdvancedSettingUrlRewriteSettingArgs(
enable=True,
url_rewrite="/test",
),
retry_policy_setting=volcengine.apig.ApigRouteAdvancedSettingRetryPolicySettingArgs(
enable=True,
attempts=5,
per_try_timeout=1000,
retry_ons=[
"5xx",
"reset",
],
http_codes=[
"500",
"502",
"503",
"504",
],
),
header_operations=[
volcengine.apig.ApigRouteAdvancedSettingHeaderOperationArgs(
operation="add",
key="test-header-req",
value="test-value",
direction_type="request",
),
volcengine.apig.ApigRouteAdvancedSettingHeaderOperationArgs(
operation="set",
key="test-header-resp",
value="test-value",
direction_type="response",
),
],
mirror_policies=[volcengine.apig.ApigRouteAdvancedSettingMirrorPolicyArgs(
upstream=volcengine.apig.ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs(
upstream_id=foo_fixed_ip.id,
type="fixed_ip",
),
percent=volcengine.apig.ApigRouteAdvancedSettingMirrorPolicyPercentArgs(
value=50,
),
)],
))
package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/apig"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/ecs"
"github.com/volcengine/pulumi-volcengine/sdk/go/volcengine/vpc"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
fooZones, err := ecs.GetZones(ctx, nil, nil)
if err != nil {
return err
}
fooVpc, err := vpc.NewVpc(ctx, "fooVpc", &vpc.VpcArgs{
VpcName: pulumi.String("acc-test-vpc"),
CidrBlock: pulumi.String("172.16.0.0/16"),
})
if err != nil {
return err
}
foo1, err := vpc.NewSubnet(ctx, "foo1", &vpc.SubnetArgs{
SubnetName: pulumi.String("acc-test-subnet"),
CidrBlock: pulumi.String("172.16.0.0/24"),
ZoneId: pulumi.String(fooZones.Zones[0].Id),
VpcId: fooVpc.ID(),
})
if err != nil {
return err
}
foo2, err := vpc.NewSubnet(ctx, "foo2", &vpc.SubnetArgs{
SubnetName: pulumi.String("acc-test-subnet"),
CidrBlock: pulumi.String("172.16.1.0/24"),
ZoneId: pulumi.String(fooZones.Zones[1].Id),
VpcId: fooVpc.ID(),
})
if err != nil {
return err
}
fooApigGateway, err := apig.NewApigGateway(ctx, "fooApigGateway", &apig.ApigGatewayArgs{
Type: pulumi.String("standard"),
Comments: pulumi.String("acc-test"),
ProjectName: pulumi.String("default"),
Tags: apig.ApigGatewayTagArray{
&apig.ApigGatewayTagArgs{
Key: pulumi.String("k1"),
Value: pulumi.String("v1"),
},
},
NetworkSpec: &apig.ApigGatewayNetworkSpecArgs{
VpcId: fooVpc.ID(),
SubnetIds: pulumi.StringArray{
foo1.ID(),
foo2.ID(),
},
},
ResourceSpec: &apig.ApigGatewayResourceSpecArgs{
Replicas: pulumi.Int(2),
InstanceSpecCode: pulumi.String("1c2g"),
ClbSpecCode: pulumi.String("small_1"),
PublicNetworkBillingType: pulumi.String("bandwidth"),
PublicNetworkBandwidth: pulumi.Int(1),
NetworkType: &apig.ApigGatewayResourceSpecNetworkTypeArgs{
EnablePublicNetwork: pulumi.Bool(true),
EnablePrivateNetwork: pulumi.Bool(true),
},
},
LogSpec: &apig.ApigGatewayLogSpecArgs{
Enable: pulumi.Bool(true),
ProjectId: pulumi.String("d3cb87c0-faeb-4074-b1ee-9bd747865a76"),
TopicId: pulumi.String("d339482e-d86d-4bd8-a9bb-f270417f00a1"),
},
MonitorSpec: &apig.ApigGatewayMonitorSpecArgs{
Enable: pulumi.Bool(true),
WorkspaceId: pulumi.String("4ed1caf3-279d-4c5f-8301-87ea38e92ffc"),
},
})
if err != nil {
return err
}
fooApigGatewayService, err := apig.NewApigGatewayService(ctx, "fooApigGatewayService", &apig.ApigGatewayServiceArgs{
GatewayId: fooApigGateway.ID(),
ServiceName: pulumi.String("acc-test-apig-service"),
Comments: pulumi.String("acc-test"),
Protocols: pulumi.StringArray{
pulumi.String("HTTP"),
pulumi.String("HTTPS"),
},
AuthSpec: &apig.ApigGatewayServiceAuthSpecArgs{
Enable: pulumi.Bool(false),
},
})
if err != nil {
return err
}
_, err = apig.NewApigUpstream(ctx, "foo-fixed-ip", &apig.ApigUpstreamArgs{
GatewayId: fooApigGateway.ID(),
Comments: pulumi.String("acc-test"),
ResourceType: pulumi.String("Console"),
Protocol: pulumi.String("HTTP"),
LoadBalancerSettings: &apig.ApigUpstreamLoadBalancerSettingsArgs{
LbPolicy: pulumi.String("ConsistentHashLB"),
ConsistentHashLb: &apig.ApigUpstreamLoadBalancerSettingsConsistentHashLbArgs{
HashKey: pulumi.String("HTTPCookie"),
HttpCookie: &apig.ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookieArgs{
Name: pulumi.String("test"),
Path: pulumi.String("/"),
Ttl: pulumi.Int(300),
},
},
},
TlsSettings: &apig.ApigUpstreamTlsSettingsArgs{
TlsMode: pulumi.String("SIMPLE"),
Sni: pulumi.String("test"),
},
CircuitBreakingSettings: &apig.ApigUpstreamCircuitBreakingSettingsArgs{
Enable: pulumi.Bool(false),
ConsecutiveErrors: pulumi.Int(5),
Interval: pulumi.Int(10000),
BaseEjectionTime: pulumi.Int(30000),
MaxEjectionPercent: pulumi.Int(20),
MinHealthPercent: pulumi.Int(60),
},
SourceType: pulumi.String("FixedIP"),
UpstreamSpec: &apig.ApigUpstreamUpstreamSpecArgs{
FixedIpLists: apig.ApigUpstreamUpstreamSpecFixedIpListArray{
&apig.ApigUpstreamUpstreamSpecFixedIpListArgs{
Ip: pulumi.String("172.16.0.10"),
Port: pulumi.Int(8080),
},
&apig.ApigUpstreamUpstreamSpecFixedIpListArgs{
Ip: pulumi.String("172.16.0.20"),
Port: pulumi.Int(8090),
},
&apig.ApigUpstreamUpstreamSpecFixedIpListArgs{
Ip: pulumi.String("172.16.0.30"),
Port: pulumi.Int(8099),
},
},
},
})
if err != nil {
return err
}
_, err = apig.NewApigRoute(ctx, "fooApigRoute", &apig.ApigRouteArgs{
ServiceId: fooApigGatewayService.ID(),
ResourceType: pulumi.String("Console"),
Priority: pulumi.Int(2),
Enable: pulumi.Bool(true),
UpstreamLists: apig.ApigRouteUpstreamListArray{
&apig.ApigRouteUpstreamListArgs{
UpstreamId: foo_fixed_ip.ID(),
Weight: pulumi.Int(100),
},
},
MatchRule: &apig.ApigRouteMatchRuleArgs{
Path: &apig.ApigRouteMatchRulePathArgs{
MatchType: pulumi.String("Prefix"),
MatchContent: pulumi.String("/test"),
},
Methods: pulumi.StringArray{
pulumi.String("GET"),
pulumi.String("POST"),
},
QueryStrings: apig.ApigRouteMatchRuleQueryStringArray{
&apig.ApigRouteMatchRuleQueryStringArgs{
Key: pulumi.String("test-key"),
Value: &apig.ApigRouteMatchRuleQueryStringValueArgs{
MatchType: pulumi.String("Exact"),
MatchContent: pulumi.String("test-value"),
},
},
},
Headers: apig.ApigRouteMatchRuleHeaderArray{
&apig.ApigRouteMatchRuleHeaderArgs{
Key: pulumi.String("test-header"),
Value: &apig.ApigRouteMatchRuleHeaderValueArgs{
MatchType: pulumi.String("Regex"),
MatchContent: pulumi.String("test-value"),
},
},
},
},
AdvancedSetting: &apig.ApigRouteAdvancedSettingArgs{
TimeoutSetting: &apig.ApigRouteAdvancedSettingTimeoutSettingArgs{
Enable: pulumi.Bool(false),
Timeout: pulumi.Int(10),
},
CorsPolicySetting: &apig.ApigRouteAdvancedSettingCorsPolicySettingArgs{
Enable: pulumi.Bool(false),
},
UrlRewriteSetting: &apig.ApigRouteAdvancedSettingUrlRewriteSettingArgs{
Enable: pulumi.Bool(true),
UrlRewrite: pulumi.String("/test"),
},
RetryPolicySetting: &apig.ApigRouteAdvancedSettingRetryPolicySettingArgs{
Enable: pulumi.Bool(true),
Attempts: pulumi.Int(5),
PerTryTimeout: pulumi.Int(1000),
RetryOns: pulumi.StringArray{
pulumi.String("5xx"),
pulumi.String("reset"),
},
HttpCodes: pulumi.StringArray{
pulumi.String("500"),
pulumi.String("502"),
pulumi.String("503"),
pulumi.String("504"),
},
},
HeaderOperations: apig.ApigRouteAdvancedSettingHeaderOperationArray{
&apig.ApigRouteAdvancedSettingHeaderOperationArgs{
Operation: pulumi.String("add"),
Key: pulumi.String("test-header-req"),
Value: pulumi.String("test-value"),
DirectionType: pulumi.String("request"),
},
&apig.ApigRouteAdvancedSettingHeaderOperationArgs{
Operation: pulumi.String("set"),
Key: pulumi.String("test-header-resp"),
Value: pulumi.String("test-value"),
DirectionType: pulumi.String("response"),
},
},
MirrorPolicies: apig.ApigRouteAdvancedSettingMirrorPolicyArray{
&apig.ApigRouteAdvancedSettingMirrorPolicyArgs{
Upstream: &apig.ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs{
UpstreamId: foo_fixed_ip.ID(),
Type: pulumi.String("fixed_ip"),
},
Percent: &apig.ApigRouteAdvancedSettingMirrorPolicyPercentArgs{
Value: pulumi.Int(50),
},
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Volcengine = Pulumi.Volcengine;
return await Deployment.RunAsync(() =>
{
var fooZones = Volcengine.Ecs.GetZones.Invoke();
var fooVpc = new Volcengine.Vpc.Vpc("fooVpc", new()
{
VpcName = "acc-test-vpc",
CidrBlock = "172.16.0.0/16",
});
var foo1 = new Volcengine.Vpc.Subnet("foo1", new()
{
SubnetName = "acc-test-subnet",
CidrBlock = "172.16.0.0/24",
ZoneId = fooZones.Apply(getZonesResult => getZonesResult.Zones[0]?.Id),
VpcId = fooVpc.Id,
});
var foo2 = new Volcengine.Vpc.Subnet("foo2", new()
{
SubnetName = "acc-test-subnet",
CidrBlock = "172.16.1.0/24",
ZoneId = fooZones.Apply(getZonesResult => getZonesResult.Zones[1]?.Id),
VpcId = fooVpc.Id,
});
var fooApigGateway = new Volcengine.Apig.ApigGateway("fooApigGateway", new()
{
Type = "standard",
Comments = "acc-test",
ProjectName = "default",
Tags = new[]
{
new Volcengine.Apig.Inputs.ApigGatewayTagArgs
{
Key = "k1",
Value = "v1",
},
},
NetworkSpec = new Volcengine.Apig.Inputs.ApigGatewayNetworkSpecArgs
{
VpcId = fooVpc.Id,
SubnetIds = new[]
{
foo1.Id,
foo2.Id,
},
},
ResourceSpec = new Volcengine.Apig.Inputs.ApigGatewayResourceSpecArgs
{
Replicas = 2,
InstanceSpecCode = "1c2g",
ClbSpecCode = "small_1",
PublicNetworkBillingType = "bandwidth",
PublicNetworkBandwidth = 1,
NetworkType = new Volcengine.Apig.Inputs.ApigGatewayResourceSpecNetworkTypeArgs
{
EnablePublicNetwork = true,
EnablePrivateNetwork = true,
},
},
LogSpec = new Volcengine.Apig.Inputs.ApigGatewayLogSpecArgs
{
Enable = true,
ProjectId = "d3cb87c0-faeb-4074-b1ee-9bd747865a76",
TopicId = "d339482e-d86d-4bd8-a9bb-f270417f00a1",
},
MonitorSpec = new Volcengine.Apig.Inputs.ApigGatewayMonitorSpecArgs
{
Enable = true,
WorkspaceId = "4ed1caf3-279d-4c5f-8301-87ea38e92ffc",
},
});
var fooApigGatewayService = new Volcengine.Apig.ApigGatewayService("fooApigGatewayService", new()
{
GatewayId = fooApigGateway.Id,
ServiceName = "acc-test-apig-service",
Comments = "acc-test",
Protocols = new[]
{
"HTTP",
"HTTPS",
},
AuthSpec = new Volcengine.Apig.Inputs.ApigGatewayServiceAuthSpecArgs
{
Enable = false,
},
});
var foo_fixed_ip = new Volcengine.Apig.ApigUpstream("foo-fixed-ip", new()
{
GatewayId = fooApigGateway.Id,
Comments = "acc-test",
ResourceType = "Console",
Protocol = "HTTP",
LoadBalancerSettings = new Volcengine.Apig.Inputs.ApigUpstreamLoadBalancerSettingsArgs
{
LbPolicy = "ConsistentHashLB",
ConsistentHashLb = new Volcengine.Apig.Inputs.ApigUpstreamLoadBalancerSettingsConsistentHashLbArgs
{
HashKey = "HTTPCookie",
HttpCookie = new Volcengine.Apig.Inputs.ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookieArgs
{
Name = "test",
Path = "/",
Ttl = 300,
},
},
},
TlsSettings = new Volcengine.Apig.Inputs.ApigUpstreamTlsSettingsArgs
{
TlsMode = "SIMPLE",
Sni = "test",
},
CircuitBreakingSettings = new Volcengine.Apig.Inputs.ApigUpstreamCircuitBreakingSettingsArgs
{
Enable = false,
ConsecutiveErrors = 5,
Interval = 10000,
BaseEjectionTime = 30000,
MaxEjectionPercent = 20,
MinHealthPercent = 60,
},
SourceType = "FixedIP",
UpstreamSpec = new Volcengine.Apig.Inputs.ApigUpstreamUpstreamSpecArgs
{
FixedIpLists = new[]
{
new Volcengine.Apig.Inputs.ApigUpstreamUpstreamSpecFixedIpListArgs
{
Ip = "172.16.0.10",
Port = 8080,
},
new Volcengine.Apig.Inputs.ApigUpstreamUpstreamSpecFixedIpListArgs
{
Ip = "172.16.0.20",
Port = 8090,
},
new Volcengine.Apig.Inputs.ApigUpstreamUpstreamSpecFixedIpListArgs
{
Ip = "172.16.0.30",
Port = 8099,
},
},
},
});
var fooApigRoute = new Volcengine.Apig.ApigRoute("fooApigRoute", new()
{
ServiceId = fooApigGatewayService.Id,
ResourceType = "Console",
Priority = 2,
Enable = true,
UpstreamLists = new[]
{
new Volcengine.Apig.Inputs.ApigRouteUpstreamListArgs
{
UpstreamId = foo_fixed_ip.Id,
Weight = 100,
},
},
MatchRule = new Volcengine.Apig.Inputs.ApigRouteMatchRuleArgs
{
Path = new Volcengine.Apig.Inputs.ApigRouteMatchRulePathArgs
{
MatchType = "Prefix",
MatchContent = "/test",
},
Methods = new[]
{
"GET",
"POST",
},
QueryStrings = new[]
{
new Volcengine.Apig.Inputs.ApigRouteMatchRuleQueryStringArgs
{
Key = "test-key",
Value = new Volcengine.Apig.Inputs.ApigRouteMatchRuleQueryStringValueArgs
{
MatchType = "Exact",
MatchContent = "test-value",
},
},
},
Headers = new[]
{
new Volcengine.Apig.Inputs.ApigRouteMatchRuleHeaderArgs
{
Key = "test-header",
Value = new Volcengine.Apig.Inputs.ApigRouteMatchRuleHeaderValueArgs
{
MatchType = "Regex",
MatchContent = "test-value",
},
},
},
},
AdvancedSetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingArgs
{
TimeoutSetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingTimeoutSettingArgs
{
Enable = false,
Timeout = 10,
},
CorsPolicySetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingCorsPolicySettingArgs
{
Enable = false,
},
UrlRewriteSetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingUrlRewriteSettingArgs
{
Enable = true,
UrlRewrite = "/test",
},
RetryPolicySetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingRetryPolicySettingArgs
{
Enable = true,
Attempts = 5,
PerTryTimeout = 1000,
RetryOns = new[]
{
"5xx",
"reset",
},
HttpCodes = new[]
{
"500",
"502",
"503",
"504",
},
},
HeaderOperations = new[]
{
new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingHeaderOperationArgs
{
Operation = "add",
Key = "test-header-req",
Value = "test-value",
DirectionType = "request",
},
new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingHeaderOperationArgs
{
Operation = "set",
Key = "test-header-resp",
Value = "test-value",
DirectionType = "response",
},
},
MirrorPolicies = new[]
{
new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingMirrorPolicyArgs
{
Upstream = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs
{
UpstreamId = foo_fixed_ip.Id,
Type = "fixed_ip",
},
Percent = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingMirrorPolicyPercentArgs
{
Value = 50,
},
},
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.volcengine.ecs.EcsFunctions;
import com.pulumi.volcengine.ecs.inputs.GetZonesArgs;
import com.pulumi.volcengine.vpc.Vpc;
import com.pulumi.volcengine.vpc.VpcArgs;
import com.pulumi.volcengine.vpc.Subnet;
import com.pulumi.volcengine.vpc.SubnetArgs;
import com.pulumi.volcengine.apig.ApigGateway;
import com.pulumi.volcengine.apig.ApigGatewayArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayTagArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayNetworkSpecArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayResourceSpecArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayResourceSpecNetworkTypeArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayLogSpecArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayMonitorSpecArgs;
import com.pulumi.volcengine.apig.ApigGatewayService;
import com.pulumi.volcengine.apig.ApigGatewayServiceArgs;
import com.pulumi.volcengine.apig.inputs.ApigGatewayServiceAuthSpecArgs;
import com.pulumi.volcengine.apig.ApigUpstream;
import com.pulumi.volcengine.apig.ApigUpstreamArgs;
import com.pulumi.volcengine.apig.inputs.ApigUpstreamLoadBalancerSettingsArgs;
import com.pulumi.volcengine.apig.inputs.ApigUpstreamLoadBalancerSettingsConsistentHashLbArgs;
import com.pulumi.volcengine.apig.inputs.ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookieArgs;
import com.pulumi.volcengine.apig.inputs.ApigUpstreamTlsSettingsArgs;
import com.pulumi.volcengine.apig.inputs.ApigUpstreamCircuitBreakingSettingsArgs;
import com.pulumi.volcengine.apig.inputs.ApigUpstreamUpstreamSpecArgs;
import com.pulumi.volcengine.apig.ApigRoute;
import com.pulumi.volcengine.apig.ApigRouteArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteUpstreamListArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteMatchRuleArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteMatchRulePathArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteAdvancedSettingArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteAdvancedSettingTimeoutSettingArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteAdvancedSettingCorsPolicySettingArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteAdvancedSettingUrlRewriteSettingArgs;
import com.pulumi.volcengine.apig.inputs.ApigRouteAdvancedSettingRetryPolicySettingArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var fooZones = EcsFunctions.getZones();
var fooVpc = new Vpc("fooVpc", VpcArgs.builder()
.vpcName("acc-test-vpc")
.cidrBlock("172.16.0.0/16")
.build());
var foo1 = new Subnet("foo1", SubnetArgs.builder()
.subnetName("acc-test-subnet")
.cidrBlock("172.16.0.0/24")
.zoneId(fooZones.applyValue(getZonesResult -> getZonesResult.zones()[0].id()))
.vpcId(fooVpc.id())
.build());
var foo2 = new Subnet("foo2", SubnetArgs.builder()
.subnetName("acc-test-subnet")
.cidrBlock("172.16.1.0/24")
.zoneId(fooZones.applyValue(getZonesResult -> getZonesResult.zones()[1].id()))
.vpcId(fooVpc.id())
.build());
var fooApigGateway = new ApigGateway("fooApigGateway", ApigGatewayArgs.builder()
.type("standard")
.comments("acc-test")
.projectName("default")
.tags(ApigGatewayTagArgs.builder()
.key("k1")
.value("v1")
.build())
.networkSpec(ApigGatewayNetworkSpecArgs.builder()
.vpcId(fooVpc.id())
.subnetIds(
foo1.id(),
foo2.id())
.build())
.resourceSpec(ApigGatewayResourceSpecArgs.builder()
.replicas(2)
.instanceSpecCode("1c2g")
.clbSpecCode("small_1")
.publicNetworkBillingType("bandwidth")
.publicNetworkBandwidth(1)
.networkType(ApigGatewayResourceSpecNetworkTypeArgs.builder()
.enablePublicNetwork(true)
.enablePrivateNetwork(true)
.build())
.build())
.logSpec(ApigGatewayLogSpecArgs.builder()
.enable(true)
.projectId("d3cb87c0-faeb-4074-b1ee-9bd747865a76")
.topicId("d339482e-d86d-4bd8-a9bb-f270417f00a1")
.build())
.monitorSpec(ApigGatewayMonitorSpecArgs.builder()
.enable(true)
.workspaceId("4ed1caf3-279d-4c5f-8301-87ea38e92ffc")
.build())
.build());
var fooApigGatewayService = new ApigGatewayService("fooApigGatewayService", ApigGatewayServiceArgs.builder()
.gatewayId(fooApigGateway.id())
.serviceName("acc-test-apig-service")
.comments("acc-test")
.protocols(
"HTTP",
"HTTPS")
.authSpec(ApigGatewayServiceAuthSpecArgs.builder()
.enable(false)
.build())
.build());
var foo_fixed_ip = new ApigUpstream("foo-fixed-ip", ApigUpstreamArgs.builder()
.gatewayId(fooApigGateway.id())
.comments("acc-test")
.resourceType("Console")
.protocol("HTTP")
.loadBalancerSettings(ApigUpstreamLoadBalancerSettingsArgs.builder()
.lbPolicy("ConsistentHashLB")
.consistentHashLb(ApigUpstreamLoadBalancerSettingsConsistentHashLbArgs.builder()
.hashKey("HTTPCookie")
.httpCookie(ApigUpstreamLoadBalancerSettingsConsistentHashLbHttpCookieArgs.builder()
.name("test")
.path("/")
.ttl(300)
.build())
.build())
.build())
.tlsSettings(ApigUpstreamTlsSettingsArgs.builder()
.tlsMode("SIMPLE")
.sni("test")
.build())
.circuitBreakingSettings(ApigUpstreamCircuitBreakingSettingsArgs.builder()
.enable(false)
.consecutiveErrors(5)
.interval(10000)
.baseEjectionTime(30000)
.maxEjectionPercent(20)
.minHealthPercent(60)
.build())
.sourceType("FixedIP")
.upstreamSpec(ApigUpstreamUpstreamSpecArgs.builder()
.fixedIpLists(
ApigUpstreamUpstreamSpecFixedIpListArgs.builder()
.ip("172.16.0.10")
.port(8080)
.build(),
ApigUpstreamUpstreamSpecFixedIpListArgs.builder()
.ip("172.16.0.20")
.port(8090)
.build(),
ApigUpstreamUpstreamSpecFixedIpListArgs.builder()
.ip("172.16.0.30")
.port(8099)
.build())
.build())
.build());
var fooApigRoute = new ApigRoute("fooApigRoute", ApigRouteArgs.builder()
.serviceId(fooApigGatewayService.id())
.resourceType("Console")
.priority(2)
.enable(true)
.upstreamLists(ApigRouteUpstreamListArgs.builder()
.upstreamId(foo_fixed_ip.id())
.weight(100)
.build())
.matchRule(ApigRouteMatchRuleArgs.builder()
.path(ApigRouteMatchRulePathArgs.builder()
.matchType("Prefix")
.matchContent("/test")
.build())
.methods(
"GET",
"POST")
.queryStrings(ApigRouteMatchRuleQueryStringArgs.builder()
.key("test-key")
.value(ApigRouteMatchRuleQueryStringValueArgs.builder()
.matchType("Exact")
.matchContent("test-value")
.build())
.build())
.headers(ApigRouteMatchRuleHeaderArgs.builder()
.key("test-header")
.value(ApigRouteMatchRuleHeaderValueArgs.builder()
.matchType("Regex")
.matchContent("test-value")
.build())
.build())
.build())
.advancedSetting(ApigRouteAdvancedSettingArgs.builder()
.timeoutSetting(ApigRouteAdvancedSettingTimeoutSettingArgs.builder()
.enable(false)
.timeout(10)
.build())
.corsPolicySetting(ApigRouteAdvancedSettingCorsPolicySettingArgs.builder()
.enable(false)
.build())
.urlRewriteSetting(ApigRouteAdvancedSettingUrlRewriteSettingArgs.builder()
.enable(true)
.urlRewrite("/test")
.build())
.retryPolicySetting(ApigRouteAdvancedSettingRetryPolicySettingArgs.builder()
.enable(true)
.attempts(5)
.perTryTimeout(1000)
.retryOns(
"5xx",
"reset")
.httpCodes(
"500",
"502",
"503",
"504")
.build())
.headerOperations(
ApigRouteAdvancedSettingHeaderOperationArgs.builder()
.operation("add")
.key("test-header-req")
.value("test-value")
.directionType("request")
.build(),
ApigRouteAdvancedSettingHeaderOperationArgs.builder()
.operation("set")
.key("test-header-resp")
.value("test-value")
.directionType("response")
.build())
.mirrorPolicies(ApigRouteAdvancedSettingMirrorPolicyArgs.builder()
.upstream(ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs.builder()
.upstreamId(foo_fixed_ip.id())
.type("fixed_ip")
.build())
.percent(ApigRouteAdvancedSettingMirrorPolicyPercentArgs.builder()
.value(50)
.build())
.build())
.build())
.build());
}
}
resources:
fooVpc:
type: volcengine:vpc:Vpc
properties:
vpcName: acc-test-vpc
cidrBlock: 172.16.0.0/16
foo1:
type: volcengine:vpc:Subnet
properties:
subnetName: acc-test-subnet
cidrBlock: 172.16.0.0/24
zoneId: ${fooZones.zones[0].id}
vpcId: ${fooVpc.id}
foo2:
type: volcengine:vpc:Subnet
properties:
subnetName: acc-test-subnet
cidrBlock: 172.16.1.0/24
zoneId: ${fooZones.zones[1].id}
vpcId: ${fooVpc.id}
fooApigGateway:
type: volcengine:apig:ApigGateway
properties:
type: standard
comments: acc-test
projectName: default
tags:
- key: k1
value: v1
networkSpec:
vpcId: ${fooVpc.id}
subnetIds:
- ${foo1.id}
- ${foo2.id}
resourceSpec:
replicas: 2
instanceSpecCode: 1c2g
clbSpecCode: small_1
publicNetworkBillingType: bandwidth
publicNetworkBandwidth: 1
networkType:
enablePublicNetwork: true
enablePrivateNetwork: true
logSpec:
enable: true
projectId: d3cb87c0-faeb-4074-b1ee-9bd747865a76
topicId: d339482e-d86d-4bd8-a9bb-f270417f00a1
monitorSpec:
enable: true
workspaceId: 4ed1caf3-279d-4c5f-8301-87ea38e92ffc
fooApigGatewayService:
type: volcengine:apig:ApigGatewayService
properties:
gatewayId: ${fooApigGateway.id}
serviceName: acc-test-apig-service
comments: acc-test
protocols:
- HTTP
- HTTPS
authSpec:
enable: false
foo-fixed-ip:
type: volcengine:apig:ApigUpstream
properties:
gatewayId: ${fooApigGateway.id}
comments: acc-test
resourceType: Console
protocol: HTTP
loadBalancerSettings:
lbPolicy: ConsistentHashLB
consistentHashLb:
hashKey: HTTPCookie
httpCookie:
name: test
path: /
ttl: 300
tlsSettings:
tlsMode: SIMPLE
sni: test
circuitBreakingSettings:
enable: false
consecutiveErrors: 5
interval: 10000
baseEjectionTime: 30000
maxEjectionPercent: 20
minHealthPercent: 60
sourceType: FixedIP
upstreamSpec:
fixedIpLists:
- ip: 172.16.0.10
port: 8080
- ip: 172.16.0.20
port: 8090
- ip: 172.16.0.30
port: 8099
fooApigRoute:
type: volcengine:apig:ApigRoute
properties:
serviceId: ${fooApigGatewayService.id}
resourceType: Console
priority: 2
enable: true
upstreamLists:
- upstreamId: ${["foo-fixed-ip"].id}
weight: 100
matchRule:
path:
matchType: Prefix
matchContent: /test
methods:
- GET
- POST
queryStrings:
- key: test-key
value:
matchType: Exact
matchContent: test-value
headers:
- key: test-header
value:
matchType: Regex
matchContent: test-value
advancedSetting:
timeoutSetting:
enable: false
timeout: 10
corsPolicySetting:
enable: false
urlRewriteSetting:
enable: true
urlRewrite: /test
retryPolicySetting:
enable: true
attempts: 5
perTryTimeout: 1000
retryOns:
- 5xx
- reset
httpCodes:
- '500'
- '502'
- '503'
- '504'
headerOperations:
- operation: add
key: test-header-req
value: test-value
directionType: request
- operation: set
key: test-header-resp
value: test-value
directionType: response
mirrorPolicies:
- upstream:
upstreamId: ${["foo-fixed-ip"].id}
type: fixed_ip
percent:
value: 50
variables:
fooZones:
fn::invoke:
Function: volcengine:ecs:getZones
Arguments: {}
Create ApigRoute Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ApigRoute(name: string, args: ApigRouteArgs, opts?: CustomResourceOptions);
@overload
def ApigRoute(resource_name: str,
args: ApigRouteArgs,
opts: Optional[ResourceOptions] = None)
@overload
def ApigRoute(resource_name: str,
opts: Optional[ResourceOptions] = None,
match_rule: Optional[ApigRouteMatchRuleArgs] = None,
service_id: Optional[str] = None,
upstream_lists: Optional[Sequence[ApigRouteUpstreamListArgs]] = None,
advanced_setting: Optional[ApigRouteAdvancedSettingArgs] = None,
enable: Optional[bool] = None,
name: Optional[str] = None,
priority: Optional[int] = None,
resource_type: Optional[str] = None)
func NewApigRoute(ctx *Context, name string, args ApigRouteArgs, opts ...ResourceOption) (*ApigRoute, error)
public ApigRoute(string name, ApigRouteArgs args, CustomResourceOptions? opts = null)
public ApigRoute(String name, ApigRouteArgs args)
public ApigRoute(String name, ApigRouteArgs args, CustomResourceOptions options)
type: volcengine:apig:ApigRoute
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ApigRouteArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ApigRouteArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ApigRouteArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ApigRouteArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ApigRouteArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var apigRouteResource = new Volcengine.Apig.ApigRoute("apigRouteResource", new()
{
MatchRule = new Volcengine.Apig.Inputs.ApigRouteMatchRuleArgs
{
Path = new Volcengine.Apig.Inputs.ApigRouteMatchRulePathArgs
{
MatchContent = "string",
MatchType = "string",
},
Headers = new[]
{
new Volcengine.Apig.Inputs.ApigRouteMatchRuleHeaderArgs
{
Key = "string",
Value = new Volcengine.Apig.Inputs.ApigRouteMatchRuleHeaderValueArgs
{
MatchContent = "string",
MatchType = "string",
},
},
},
Methods = new[]
{
"string",
},
QueryStrings = new[]
{
new Volcengine.Apig.Inputs.ApigRouteMatchRuleQueryStringArgs
{
Key = "string",
Value = new Volcengine.Apig.Inputs.ApigRouteMatchRuleQueryStringValueArgs
{
MatchContent = "string",
MatchType = "string",
},
},
},
},
ServiceId = "string",
UpstreamLists = new[]
{
new Volcengine.Apig.Inputs.ApigRouteUpstreamListArgs
{
UpstreamId = "string",
Weight = 0,
AiProviderSettings = new Volcengine.Apig.Inputs.ApigRouteUpstreamListAiProviderSettingsArgs
{
Model = "string",
TargetPath = "string",
},
Version = "string",
},
},
AdvancedSetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingArgs
{
CorsPolicySetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingCorsPolicySettingArgs
{
Enable = false,
},
HeaderOperations = new[]
{
new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingHeaderOperationArgs
{
Key = "string",
Operation = "string",
DirectionType = "string",
Value = "string",
},
},
MirrorPolicies = new[]
{
new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingMirrorPolicyArgs
{
Upstream = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs
{
Type = "string",
UpstreamId = "string",
Version = "string",
},
Percent = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingMirrorPolicyPercentArgs
{
Value = 0,
},
},
},
RetryPolicySetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingRetryPolicySettingArgs
{
Attempts = 0,
Enable = false,
HttpCodes = new[]
{
"string",
},
PerTryTimeout = 0,
RetryOns = new[]
{
"string",
},
},
TimeoutSetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingTimeoutSettingArgs
{
Enable = false,
Timeout = 0,
},
UrlRewriteSetting = new Volcengine.Apig.Inputs.ApigRouteAdvancedSettingUrlRewriteSettingArgs
{
Enable = false,
UrlRewrite = "string",
},
},
Enable = false,
Name = "string",
Priority = 0,
ResourceType = "string",
});
example, err := apig.NewApigRoute(ctx, "apigRouteResource", &apig.ApigRouteArgs{
MatchRule: &apig.ApigRouteMatchRuleArgs{
Path: &apig.ApigRouteMatchRulePathArgs{
MatchContent: pulumi.String("string"),
MatchType: pulumi.String("string"),
},
Headers: apig.ApigRouteMatchRuleHeaderArray{
&apig.ApigRouteMatchRuleHeaderArgs{
Key: pulumi.String("string"),
Value: &apig.ApigRouteMatchRuleHeaderValueArgs{
MatchContent: pulumi.String("string"),
MatchType: pulumi.String("string"),
},
},
},
Methods: pulumi.StringArray{
pulumi.String("string"),
},
QueryStrings: apig.ApigRouteMatchRuleQueryStringArray{
&apig.ApigRouteMatchRuleQueryStringArgs{
Key: pulumi.String("string"),
Value: &apig.ApigRouteMatchRuleQueryStringValueArgs{
MatchContent: pulumi.String("string"),
MatchType: pulumi.String("string"),
},
},
},
},
ServiceId: pulumi.String("string"),
UpstreamLists: apig.ApigRouteUpstreamListArray{
&apig.ApigRouteUpstreamListArgs{
UpstreamId: pulumi.String("string"),
Weight: pulumi.Int(0),
AiProviderSettings: &apig.ApigRouteUpstreamListAiProviderSettingsArgs{
Model: pulumi.String("string"),
TargetPath: pulumi.String("string"),
},
Version: pulumi.String("string"),
},
},
AdvancedSetting: &apig.ApigRouteAdvancedSettingArgs{
CorsPolicySetting: &apig.ApigRouteAdvancedSettingCorsPolicySettingArgs{
Enable: pulumi.Bool(false),
},
HeaderOperations: apig.ApigRouteAdvancedSettingHeaderOperationArray{
&apig.ApigRouteAdvancedSettingHeaderOperationArgs{
Key: pulumi.String("string"),
Operation: pulumi.String("string"),
DirectionType: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
MirrorPolicies: apig.ApigRouteAdvancedSettingMirrorPolicyArray{
&apig.ApigRouteAdvancedSettingMirrorPolicyArgs{
Upstream: &apig.ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs{
Type: pulumi.String("string"),
UpstreamId: pulumi.String("string"),
Version: pulumi.String("string"),
},
Percent: &apig.ApigRouteAdvancedSettingMirrorPolicyPercentArgs{
Value: pulumi.Int(0),
},
},
},
RetryPolicySetting: &apig.ApigRouteAdvancedSettingRetryPolicySettingArgs{
Attempts: pulumi.Int(0),
Enable: pulumi.Bool(false),
HttpCodes: pulumi.StringArray{
pulumi.String("string"),
},
PerTryTimeout: pulumi.Int(0),
RetryOns: pulumi.StringArray{
pulumi.String("string"),
},
},
TimeoutSetting: &apig.ApigRouteAdvancedSettingTimeoutSettingArgs{
Enable: pulumi.Bool(false),
Timeout: pulumi.Int(0),
},
UrlRewriteSetting: &apig.ApigRouteAdvancedSettingUrlRewriteSettingArgs{
Enable: pulumi.Bool(false),
UrlRewrite: pulumi.String("string"),
},
},
Enable: pulumi.Bool(false),
Name: pulumi.String("string"),
Priority: pulumi.Int(0),
ResourceType: pulumi.String("string"),
})
var apigRouteResource = new ApigRoute("apigRouteResource", ApigRouteArgs.builder()
.matchRule(ApigRouteMatchRuleArgs.builder()
.path(ApigRouteMatchRulePathArgs.builder()
.matchContent("string")
.matchType("string")
.build())
.headers(ApigRouteMatchRuleHeaderArgs.builder()
.key("string")
.value(ApigRouteMatchRuleHeaderValueArgs.builder()
.matchContent("string")
.matchType("string")
.build())
.build())
.methods("string")
.queryStrings(ApigRouteMatchRuleQueryStringArgs.builder()
.key("string")
.value(ApigRouteMatchRuleQueryStringValueArgs.builder()
.matchContent("string")
.matchType("string")
.build())
.build())
.build())
.serviceId("string")
.upstreamLists(ApigRouteUpstreamListArgs.builder()
.upstreamId("string")
.weight(0)
.aiProviderSettings(ApigRouteUpstreamListAiProviderSettingsArgs.builder()
.model("string")
.targetPath("string")
.build())
.version("string")
.build())
.advancedSetting(ApigRouteAdvancedSettingArgs.builder()
.corsPolicySetting(ApigRouteAdvancedSettingCorsPolicySettingArgs.builder()
.enable(false)
.build())
.headerOperations(ApigRouteAdvancedSettingHeaderOperationArgs.builder()
.key("string")
.operation("string")
.directionType("string")
.value("string")
.build())
.mirrorPolicies(ApigRouteAdvancedSettingMirrorPolicyArgs.builder()
.upstream(ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs.builder()
.type("string")
.upstreamId("string")
.version("string")
.build())
.percent(ApigRouteAdvancedSettingMirrorPolicyPercentArgs.builder()
.value(0)
.build())
.build())
.retryPolicySetting(ApigRouteAdvancedSettingRetryPolicySettingArgs.builder()
.attempts(0)
.enable(false)
.httpCodes("string")
.perTryTimeout(0)
.retryOns("string")
.build())
.timeoutSetting(ApigRouteAdvancedSettingTimeoutSettingArgs.builder()
.enable(false)
.timeout(0)
.build())
.urlRewriteSetting(ApigRouteAdvancedSettingUrlRewriteSettingArgs.builder()
.enable(false)
.urlRewrite("string")
.build())
.build())
.enable(false)
.name("string")
.priority(0)
.resourceType("string")
.build());
apig_route_resource = volcengine.apig.ApigRoute("apigRouteResource",
match_rule={
"path": {
"match_content": "string",
"match_type": "string",
},
"headers": [{
"key": "string",
"value": {
"match_content": "string",
"match_type": "string",
},
}],
"methods": ["string"],
"query_strings": [{
"key": "string",
"value": {
"match_content": "string",
"match_type": "string",
},
}],
},
service_id="string",
upstream_lists=[{
"upstream_id": "string",
"weight": 0,
"ai_provider_settings": {
"model": "string",
"target_path": "string",
},
"version": "string",
}],
advanced_setting={
"cors_policy_setting": {
"enable": False,
},
"header_operations": [{
"key": "string",
"operation": "string",
"direction_type": "string",
"value": "string",
}],
"mirror_policies": [{
"upstream": {
"type": "string",
"upstream_id": "string",
"version": "string",
},
"percent": {
"value": 0,
},
}],
"retry_policy_setting": {
"attempts": 0,
"enable": False,
"http_codes": ["string"],
"per_try_timeout": 0,
"retry_ons": ["string"],
},
"timeout_setting": {
"enable": False,
"timeout": 0,
},
"url_rewrite_setting": {
"enable": False,
"url_rewrite": "string",
},
},
enable=False,
name="string",
priority=0,
resource_type="string")
const apigRouteResource = new volcengine.apig.ApigRoute("apigRouteResource", {
matchRule: {
path: {
matchContent: "string",
matchType: "string",
},
headers: [{
key: "string",
value: {
matchContent: "string",
matchType: "string",
},
}],
methods: ["string"],
queryStrings: [{
key: "string",
value: {
matchContent: "string",
matchType: "string",
},
}],
},
serviceId: "string",
upstreamLists: [{
upstreamId: "string",
weight: 0,
aiProviderSettings: {
model: "string",
targetPath: "string",
},
version: "string",
}],
advancedSetting: {
corsPolicySetting: {
enable: false,
},
headerOperations: [{
key: "string",
operation: "string",
directionType: "string",
value: "string",
}],
mirrorPolicies: [{
upstream: {
type: "string",
upstreamId: "string",
version: "string",
},
percent: {
value: 0,
},
}],
retryPolicySetting: {
attempts: 0,
enable: false,
httpCodes: ["string"],
perTryTimeout: 0,
retryOns: ["string"],
},
timeoutSetting: {
enable: false,
timeout: 0,
},
urlRewriteSetting: {
enable: false,
urlRewrite: "string",
},
},
enable: false,
name: "string",
priority: 0,
resourceType: "string",
});
type: volcengine:apig:ApigRoute
properties:
advancedSetting:
corsPolicySetting:
enable: false
headerOperations:
- directionType: string
key: string
operation: string
value: string
mirrorPolicies:
- percent:
value: 0
upstream:
type: string
upstreamId: string
version: string
retryPolicySetting:
attempts: 0
enable: false
httpCodes:
- string
perTryTimeout: 0
retryOns:
- string
timeoutSetting:
enable: false
timeout: 0
urlRewriteSetting:
enable: false
urlRewrite: string
enable: false
matchRule:
headers:
- key: string
value:
matchContent: string
matchType: string
methods:
- string
path:
matchContent: string
matchType: string
queryStrings:
- key: string
value:
matchContent: string
matchType: string
name: string
priority: 0
resourceType: string
serviceId: string
upstreamLists:
- aiProviderSettings:
model: string
targetPath: string
upstreamId: string
version: string
weight: 0
ApigRoute Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The ApigRoute resource accepts the following input properties:
- Match
Rule ApigRoute Match Rule - The match rule of the api gateway route.
- Service
Id string - The service id of the apig route.
- Upstream
Lists List<ApigRoute Upstream List> - The upstream list of the api gateway route.
- Advanced
Setting ApigRoute Advanced Setting - The advanced setting of the api gateway route.
- Enable bool
- Whether the apig route is enabled. Default is
false
. - Name string
- The name of the apig route.
- Priority int
- The priority of the apig route. Valid values: 0~100.
- Resource
Type string - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
.
- Match
Rule ApigRoute Match Rule Args - The match rule of the api gateway route.
- Service
Id string - The service id of the apig route.
- Upstream
Lists []ApigRoute Upstream List Args - The upstream list of the api gateway route.
- Advanced
Setting ApigRoute Advanced Setting Args - The advanced setting of the api gateway route.
- Enable bool
- Whether the apig route is enabled. Default is
false
. - Name string
- The name of the apig route.
- Priority int
- The priority of the apig route. Valid values: 0~100.
- Resource
Type string - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
.
- match
Rule ApigRoute Match Rule - The match rule of the api gateway route.
- service
Id String - The service id of the apig route.
- upstream
Lists List<ApigRoute Upstream List> - The upstream list of the api gateway route.
- advanced
Setting ApigRoute Advanced Setting - The advanced setting of the api gateway route.
- enable Boolean
- Whether the apig route is enabled. Default is
false
. - name String
- The name of the apig route.
- priority Integer
- The priority of the apig route. Valid values: 0~100.
- resource
Type String - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
.
- match
Rule ApigRoute Match Rule - The match rule of the api gateway route.
- service
Id string - The service id of the apig route.
- upstream
Lists ApigRoute Upstream List[] - The upstream list of the api gateway route.
- advanced
Setting ApigRoute Advanced Setting - The advanced setting of the api gateway route.
- enable boolean
- Whether the apig route is enabled. Default is
false
. - name string
- The name of the apig route.
- priority number
- The priority of the apig route. Valid values: 0~100.
- resource
Type string - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
.
- match_
rule ApigRoute Match Rule Args - The match rule of the api gateway route.
- service_
id str - The service id of the apig route.
- upstream_
lists Sequence[ApigRoute Upstream List Args] - The upstream list of the api gateway route.
- advanced_
setting ApigRoute Advanced Setting Args - The advanced setting of the api gateway route.
- enable bool
- Whether the apig route is enabled. Default is
false
. - name str
- The name of the apig route.
- priority int
- The priority of the apig route. Valid values: 0~100.
- resource_
type str - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
.
- match
Rule Property Map - The match rule of the api gateway route.
- service
Id String - The service id of the apig route.
- upstream
Lists List<Property Map> - The upstream list of the api gateway route.
- advanced
Setting Property Map - The advanced setting of the api gateway route.
- enable Boolean
- Whether the apig route is enabled. Default is
false
. - name String
- The name of the apig route.
- priority Number
- The priority of the apig route. Valid values: 0~100.
- resource
Type String - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
.
Outputs
All input properties are implicitly available as output properties. Additionally, the ApigRoute resource produces the following output properties:
- Create
Time string - The create time of the api gateway route.
- Custom
Domains List<ApigRoute Custom Domain> - The custom domains of the api gateway route.
- Domains
List<Apig
Route Domain> - The domains of the api gateway route.
- Id string
- The provider-assigned unique ID for this managed resource.
- Reason string
- The reason of the api gateway route.
- Status string
- The status of the api gateway route.
- Update
Time string - The update time of the api gateway route.
- Create
Time string - The create time of the api gateway route.
- Custom
Domains []ApigRoute Custom Domain - The custom domains of the api gateway route.
- Domains
[]Apig
Route Domain - The domains of the api gateway route.
- Id string
- The provider-assigned unique ID for this managed resource.
- Reason string
- The reason of the api gateway route.
- Status string
- The status of the api gateway route.
- Update
Time string - The update time of the api gateway route.
- create
Time String - The create time of the api gateway route.
- custom
Domains List<ApigRoute Custom Domain> - The custom domains of the api gateway route.
- domains
List<Apig
Route Domain> - The domains of the api gateway route.
- id String
- The provider-assigned unique ID for this managed resource.
- reason String
- The reason of the api gateway route.
- status String
- The status of the api gateway route.
- update
Time String - The update time of the api gateway route.
- create
Time string - The create time of the api gateway route.
- custom
Domains ApigRoute Custom Domain[] - The custom domains of the api gateway route.
- domains
Apig
Route Domain[] - The domains of the api gateway route.
- id string
- The provider-assigned unique ID for this managed resource.
- reason string
- The reason of the api gateway route.
- status string
- The status of the api gateway route.
- update
Time string - The update time of the api gateway route.
- create_
time str - The create time of the api gateway route.
- custom_
domains Sequence[ApigRoute Custom Domain] - The custom domains of the api gateway route.
- domains
Sequence[Apig
Route Domain] - The domains of the api gateway route.
- id str
- The provider-assigned unique ID for this managed resource.
- reason str
- The reason of the api gateway route.
- status str
- The status of the api gateway route.
- update_
time str - The update time of the api gateway route.
- create
Time String - The create time of the api gateway route.
- custom
Domains List<Property Map> - The custom domains of the api gateway route.
- domains List<Property Map>
- The domains of the api gateway route.
- id String
- The provider-assigned unique ID for this managed resource.
- reason String
- The reason of the api gateway route.
- status String
- The status of the api gateway route.
- update
Time String - The update time of the api gateway route.
Look up Existing ApigRoute Resource
Get an existing ApigRoute resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: ApigRouteState, opts?: CustomResourceOptions): ApigRoute
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
advanced_setting: Optional[ApigRouteAdvancedSettingArgs] = None,
create_time: Optional[str] = None,
custom_domains: Optional[Sequence[ApigRouteCustomDomainArgs]] = None,
domains: Optional[Sequence[ApigRouteDomainArgs]] = None,
enable: Optional[bool] = None,
match_rule: Optional[ApigRouteMatchRuleArgs] = None,
name: Optional[str] = None,
priority: Optional[int] = None,
reason: Optional[str] = None,
resource_type: Optional[str] = None,
service_id: Optional[str] = None,
status: Optional[str] = None,
update_time: Optional[str] = None,
upstream_lists: Optional[Sequence[ApigRouteUpstreamListArgs]] = None) -> ApigRoute
func GetApigRoute(ctx *Context, name string, id IDInput, state *ApigRouteState, opts ...ResourceOption) (*ApigRoute, error)
public static ApigRoute Get(string name, Input<string> id, ApigRouteState? state, CustomResourceOptions? opts = null)
public static ApigRoute get(String name, Output<String> id, ApigRouteState state, CustomResourceOptions options)
resources: _: type: volcengine:apig:ApigRoute get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Advanced
Setting ApigRoute Advanced Setting - The advanced setting of the api gateway route.
- Create
Time string - The create time of the api gateway route.
- Custom
Domains List<ApigRoute Custom Domain> - The custom domains of the api gateway route.
- Domains
List<Apig
Route Domain> - The domains of the api gateway route.
- Enable bool
- Whether the apig route is enabled. Default is
false
. - Match
Rule ApigRoute Match Rule - The match rule of the api gateway route.
- Name string
- The name of the apig route.
- Priority int
- The priority of the apig route. Valid values: 0~100.
- Reason string
- The reason of the api gateway route.
- Resource
Type string - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
. - Service
Id string - The service id of the apig route.
- Status string
- The status of the api gateway route.
- Update
Time string - The update time of the api gateway route.
- Upstream
Lists List<ApigRoute Upstream List> - The upstream list of the api gateway route.
- Advanced
Setting ApigRoute Advanced Setting Args - The advanced setting of the api gateway route.
- Create
Time string - The create time of the api gateway route.
- Custom
Domains []ApigRoute Custom Domain Args - The custom domains of the api gateway route.
- Domains
[]Apig
Route Domain Args - The domains of the api gateway route.
- Enable bool
- Whether the apig route is enabled. Default is
false
. - Match
Rule ApigRoute Match Rule Args - The match rule of the api gateway route.
- Name string
- The name of the apig route.
- Priority int
- The priority of the apig route. Valid values: 0~100.
- Reason string
- The reason of the api gateway route.
- Resource
Type string - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
. - Service
Id string - The service id of the apig route.
- Status string
- The status of the api gateway route.
- Update
Time string - The update time of the api gateway route.
- Upstream
Lists []ApigRoute Upstream List Args - The upstream list of the api gateway route.
- advanced
Setting ApigRoute Advanced Setting - The advanced setting of the api gateway route.
- create
Time String - The create time of the api gateway route.
- custom
Domains List<ApigRoute Custom Domain> - The custom domains of the api gateway route.
- domains
List<Apig
Route Domain> - The domains of the api gateway route.
- enable Boolean
- Whether the apig route is enabled. Default is
false
. - match
Rule ApigRoute Match Rule - The match rule of the api gateway route.
- name String
- The name of the apig route.
- priority Integer
- The priority of the apig route. Valid values: 0~100.
- reason String
- The reason of the api gateway route.
- resource
Type String - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
. - service
Id String - The service id of the apig route.
- status String
- The status of the api gateway route.
- update
Time String - The update time of the api gateway route.
- upstream
Lists List<ApigRoute Upstream List> - The upstream list of the api gateway route.
- advanced
Setting ApigRoute Advanced Setting - The advanced setting of the api gateway route.
- create
Time string - The create time of the api gateway route.
- custom
Domains ApigRoute Custom Domain[] - The custom domains of the api gateway route.
- domains
Apig
Route Domain[] - The domains of the api gateway route.
- enable boolean
- Whether the apig route is enabled. Default is
false
. - match
Rule ApigRoute Match Rule - The match rule of the api gateway route.
- name string
- The name of the apig route.
- priority number
- The priority of the apig route. Valid values: 0~100.
- reason string
- The reason of the api gateway route.
- resource
Type string - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
. - service
Id string - The service id of the apig route.
- status string
- The status of the api gateway route.
- update
Time string - The update time of the api gateway route.
- upstream
Lists ApigRoute Upstream List[] - The upstream list of the api gateway route.
- advanced_
setting ApigRoute Advanced Setting Args - The advanced setting of the api gateway route.
- create_
time str - The create time of the api gateway route.
- custom_
domains Sequence[ApigRoute Custom Domain Args] - The custom domains of the api gateway route.
- domains
Sequence[Apig
Route Domain Args] - The domains of the api gateway route.
- enable bool
- Whether the apig route is enabled. Default is
false
. - match_
rule ApigRoute Match Rule Args - The match rule of the api gateway route.
- name str
- The name of the apig route.
- priority int
- The priority of the apig route. Valid values: 0~100.
- reason str
- The reason of the api gateway route.
- resource_
type str - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
. - service_
id str - The service id of the apig route.
- status str
- The status of the api gateway route.
- update_
time str - The update time of the api gateway route.
- upstream_
lists Sequence[ApigRoute Upstream List Args] - The upstream list of the api gateway route.
- advanced
Setting Property Map - The advanced setting of the api gateway route.
- create
Time String - The create time of the api gateway route.
- custom
Domains List<Property Map> - The custom domains of the api gateway route.
- domains List<Property Map>
- The domains of the api gateway route.
- enable Boolean
- Whether the apig route is enabled. Default is
false
. - match
Rule Property Map - The match rule of the api gateway route.
- name String
- The name of the apig route.
- priority Number
- The priority of the apig route. Valid values: 0~100.
- reason String
- The reason of the api gateway route.
- resource
Type String - The resource type of the apig route. Valid values:
Console
,Ingress
Default isConsole
. - service
Id String - The service id of the apig route.
- status String
- The status of the api gateway route.
- update
Time String - The update time of the api gateway route.
- upstream
Lists List<Property Map> - The upstream list of the api gateway route.
Supporting Types
ApigRouteAdvancedSetting, ApigRouteAdvancedSettingArgs
- Cors
Policy ApigSetting Route Advanced Setting Cors Policy Setting - The cors policy setting of the api gateway route.
- Header
Operations List<ApigRoute Advanced Setting Header Operation> - The header operations of the api gateway route.
- Mirror
Policies List<ApigRoute Advanced Setting Mirror Policy> - The mirror policies of the api gateway route.
- Retry
Policy ApigSetting Route Advanced Setting Retry Policy Setting - The retry policy setting of the api gateway route.
- Timeout
Setting ApigRoute Advanced Setting Timeout Setting - The timeout setting of the api gateway route.
- Url
Rewrite ApigSetting Route Advanced Setting Url Rewrite Setting - The url rewrite setting of the api gateway route.
- Cors
Policy ApigSetting Route Advanced Setting Cors Policy Setting - The cors policy setting of the api gateway route.
- Header
Operations []ApigRoute Advanced Setting Header Operation - The header operations of the api gateway route.
- Mirror
Policies []ApigRoute Advanced Setting Mirror Policy - The mirror policies of the api gateway route.
- Retry
Policy ApigSetting Route Advanced Setting Retry Policy Setting - The retry policy setting of the api gateway route.
- Timeout
Setting ApigRoute Advanced Setting Timeout Setting - The timeout setting of the api gateway route.
- Url
Rewrite ApigSetting Route Advanced Setting Url Rewrite Setting - The url rewrite setting of the api gateway route.
- cors
Policy ApigSetting Route Advanced Setting Cors Policy Setting - The cors policy setting of the api gateway route.
- header
Operations List<ApigRoute Advanced Setting Header Operation> - The header operations of the api gateway route.
- mirror
Policies List<ApigRoute Advanced Setting Mirror Policy> - The mirror policies of the api gateway route.
- retry
Policy ApigSetting Route Advanced Setting Retry Policy Setting - The retry policy setting of the api gateway route.
- timeout
Setting ApigRoute Advanced Setting Timeout Setting - The timeout setting of the api gateway route.
- url
Rewrite ApigSetting Route Advanced Setting Url Rewrite Setting - The url rewrite setting of the api gateway route.
- cors
Policy ApigSetting Route Advanced Setting Cors Policy Setting - The cors policy setting of the api gateway route.
- header
Operations ApigRoute Advanced Setting Header Operation[] - The header operations of the api gateway route.
- mirror
Policies ApigRoute Advanced Setting Mirror Policy[] - The mirror policies of the api gateway route.
- retry
Policy ApigSetting Route Advanced Setting Retry Policy Setting - The retry policy setting of the api gateway route.
- timeout
Setting ApigRoute Advanced Setting Timeout Setting - The timeout setting of the api gateway route.
- url
Rewrite ApigSetting Route Advanced Setting Url Rewrite Setting - The url rewrite setting of the api gateway route.
- cors_
policy_ Apigsetting Route Advanced Setting Cors Policy Setting - The cors policy setting of the api gateway route.
- header_
operations Sequence[ApigRoute Advanced Setting Header Operation] - The header operations of the api gateway route.
- mirror_
policies Sequence[ApigRoute Advanced Setting Mirror Policy] - The mirror policies of the api gateway route.
- retry_
policy_ Apigsetting Route Advanced Setting Retry Policy Setting - The retry policy setting of the api gateway route.
- timeout_
setting ApigRoute Advanced Setting Timeout Setting - The timeout setting of the api gateway route.
- url_
rewrite_ Apigsetting Route Advanced Setting Url Rewrite Setting - The url rewrite setting of the api gateway route.
- cors
Policy Property MapSetting - The cors policy setting of the api gateway route.
- header
Operations List<Property Map> - The header operations of the api gateway route.
- mirror
Policies List<Property Map> - The mirror policies of the api gateway route.
- retry
Policy Property MapSetting - The retry policy setting of the api gateway route.
- timeout
Setting Property Map - The timeout setting of the api gateway route.
- url
Rewrite Property MapSetting - The url rewrite setting of the api gateway route.
ApigRouteAdvancedSettingCorsPolicySetting, ApigRouteAdvancedSettingCorsPolicySettingArgs
- Enable bool
- Whether the cors policy setting is enabled.
- Enable bool
- Whether the cors policy setting is enabled.
- enable Boolean
- Whether the cors policy setting is enabled.
- enable boolean
- Whether the cors policy setting is enabled.
- enable bool
- Whether the cors policy setting is enabled.
- enable Boolean
- Whether the cors policy setting is enabled.
ApigRouteAdvancedSettingHeaderOperation, ApigRouteAdvancedSettingHeaderOperationArgs
- Key string
- The key of the header.
- Operation string
- The operation of the header. Valid values:
set
,add
,remove
. - Direction
Type string - The direction type of the header. Valid values:
request
,response
. - Value string
- The value of the header.
- Key string
- The key of the header.
- Operation string
- The operation of the header. Valid values:
set
,add
,remove
. - Direction
Type string - The direction type of the header. Valid values:
request
,response
. - Value string
- The value of the header.
- key String
- The key of the header.
- operation String
- The operation of the header. Valid values:
set
,add
,remove
. - direction
Type String - The direction type of the header. Valid values:
request
,response
. - value String
- The value of the header.
- key string
- The key of the header.
- operation string
- The operation of the header. Valid values:
set
,add
,remove
. - direction
Type string - The direction type of the header. Valid values:
request
,response
. - value string
- The value of the header.
- key str
- The key of the header.
- operation str
- The operation of the header. Valid values:
set
,add
,remove
. - direction_
type str - The direction type of the header. Valid values:
request
,response
. - value str
- The value of the header.
- key String
- The key of the header.
- operation String
- The operation of the header. Valid values:
set
,add
,remove
. - direction
Type String - The direction type of the header. Valid values:
request
,response
. - value String
- The value of the header.
ApigRouteAdvancedSettingMirrorPolicy, ApigRouteAdvancedSettingMirrorPolicyArgs
- Upstream
Apig
Route Advanced Setting Mirror Policy Upstream - The upstream of the mirror policy.
- Percent
Apig
Route Advanced Setting Mirror Policy Percent - The percent of the mirror policy.
- Upstream
Apig
Route Advanced Setting Mirror Policy Upstream - The upstream of the mirror policy.
- Percent
Apig
Route Advanced Setting Mirror Policy Percent - The percent of the mirror policy.
- upstream
Apig
Route Advanced Setting Mirror Policy Upstream - The upstream of the mirror policy.
- percent
Apig
Route Advanced Setting Mirror Policy Percent - The percent of the mirror policy.
- upstream
Apig
Route Advanced Setting Mirror Policy Upstream - The upstream of the mirror policy.
- percent
Apig
Route Advanced Setting Mirror Policy Percent - The percent of the mirror policy.
- upstream
Apig
Route Advanced Setting Mirror Policy Upstream - The upstream of the mirror policy.
- percent
Apig
Route Advanced Setting Mirror Policy Percent - The percent of the mirror policy.
- upstream Property Map
- The upstream of the mirror policy.
- percent Property Map
- The percent of the mirror policy.
ApigRouteAdvancedSettingMirrorPolicyPercent, ApigRouteAdvancedSettingMirrorPolicyPercentArgs
- Value int
- The percent value of the mirror policy.
- Value int
- The percent value of the mirror policy.
- value Integer
- The percent value of the mirror policy.
- value number
- The percent value of the mirror policy.
- value int
- The percent value of the mirror policy.
- value Number
- The percent value of the mirror policy.
ApigRouteAdvancedSettingMirrorPolicyUpstream, ApigRouteAdvancedSettingMirrorPolicyUpstreamArgs
- Type string
- The type of the api gateway upstream.
- Upstream
Id string - The id of the api gateway upstream.
- Version string
- The version of the api gateway upstream.
- Type string
- The type of the api gateway upstream.
- Upstream
Id string - The id of the api gateway upstream.
- Version string
- The version of the api gateway upstream.
- type String
- The type of the api gateway upstream.
- upstream
Id String - The id of the api gateway upstream.
- version String
- The version of the api gateway upstream.
- type string
- The type of the api gateway upstream.
- upstream
Id string - The id of the api gateway upstream.
- version string
- The version of the api gateway upstream.
- type str
- The type of the api gateway upstream.
- upstream_
id str - The id of the api gateway upstream.
- version str
- The version of the api gateway upstream.
- type String
- The type of the api gateway upstream.
- upstream
Id String - The id of the api gateway upstream.
- version String
- The version of the api gateway upstream.
ApigRouteAdvancedSettingRetryPolicySetting, ApigRouteAdvancedSettingRetryPolicySettingArgs
- Attempts int
- The attempts of the api gateway route.
- Enable bool
- Whether the retry policy setting is enabled.
- Http
Codes List<string> - The http codes of the api gateway route.
- Per
Try intTimeout - The per try timeout of the api gateway route.
- Retry
Ons List<string> - The retry on of the api gateway route. Valid values:
5xx
,reset
,connect-failure
,refused-stream
,cancelled
,deadline-exceeded
,internal
,resource-exhausted
,unavailable
.
- Attempts int
- The attempts of the api gateway route.
- Enable bool
- Whether the retry policy setting is enabled.
- Http
Codes []string - The http codes of the api gateway route.
- Per
Try intTimeout - The per try timeout of the api gateway route.
- Retry
Ons []string - The retry on of the api gateway route. Valid values:
5xx
,reset
,connect-failure
,refused-stream
,cancelled
,deadline-exceeded
,internal
,resource-exhausted
,unavailable
.
- attempts Integer
- The attempts of the api gateway route.
- enable Boolean
- Whether the retry policy setting is enabled.
- http
Codes List<String> - The http codes of the api gateway route.
- per
Try IntegerTimeout - The per try timeout of the api gateway route.
- retry
Ons List<String> - The retry on of the api gateway route. Valid values:
5xx
,reset
,connect-failure
,refused-stream
,cancelled
,deadline-exceeded
,internal
,resource-exhausted
,unavailable
.
- attempts number
- The attempts of the api gateway route.
- enable boolean
- Whether the retry policy setting is enabled.
- http
Codes string[] - The http codes of the api gateway route.
- per
Try numberTimeout - The per try timeout of the api gateway route.
- retry
Ons string[] - The retry on of the api gateway route. Valid values:
5xx
,reset
,connect-failure
,refused-stream
,cancelled
,deadline-exceeded
,internal
,resource-exhausted
,unavailable
.
- attempts int
- The attempts of the api gateway route.
- enable bool
- Whether the retry policy setting is enabled.
- http_
codes Sequence[str] - The http codes of the api gateway route.
- per_
try_ inttimeout - The per try timeout of the api gateway route.
- retry_
ons Sequence[str] - The retry on of the api gateway route. Valid values:
5xx
,reset
,connect-failure
,refused-stream
,cancelled
,deadline-exceeded
,internal
,resource-exhausted
,unavailable
.
- attempts Number
- The attempts of the api gateway route.
- enable Boolean
- Whether the retry policy setting is enabled.
- http
Codes List<String> - The http codes of the api gateway route.
- per
Try NumberTimeout - The per try timeout of the api gateway route.
- retry
Ons List<String> - The retry on of the api gateway route. Valid values:
5xx
,reset
,connect-failure
,refused-stream
,cancelled
,deadline-exceeded
,internal
,resource-exhausted
,unavailable
.
ApigRouteAdvancedSettingTimeoutSetting, ApigRouteAdvancedSettingTimeoutSettingArgs
ApigRouteAdvancedSettingUrlRewriteSetting, ApigRouteAdvancedSettingUrlRewriteSettingArgs
- Enable bool
- Whether the url rewrite setting is enabled.
- Url
Rewrite string - The url rewrite path of the api gateway route.
- Enable bool
- Whether the url rewrite setting is enabled.
- Url
Rewrite string - The url rewrite path of the api gateway route.
- enable Boolean
- Whether the url rewrite setting is enabled.
- url
Rewrite String - The url rewrite path of the api gateway route.
- enable boolean
- Whether the url rewrite setting is enabled.
- url
Rewrite string - The url rewrite path of the api gateway route.
- enable bool
- Whether the url rewrite setting is enabled.
- url_
rewrite str - The url rewrite path of the api gateway route.
- enable Boolean
- Whether the url rewrite setting is enabled.
- url
Rewrite String - The url rewrite path of the api gateway route.
ApigRouteCustomDomain, ApigRouteCustomDomainArgs
ApigRouteDomain, ApigRouteDomainArgs
ApigRouteMatchRule, ApigRouteMatchRuleArgs
- Path
Apig
Route Match Rule Path - The path of the api gateway route.
- Headers
List<Apig
Route Match Rule Header> - The header of the api gateway route.
- Methods List<string>
- The method of the api gateway route. Valid values:
GET
,POST
,PUT
,DELETE
,HEAD
,OPTIONS
,CONNECT
. - Query
Strings List<ApigRoute Match Rule Query String> - The query string of the api gateway route.
- Path
Apig
Route Match Rule Path - The path of the api gateway route.
- Headers
[]Apig
Route Match Rule Header - The header of the api gateway route.
- Methods []string
- The method of the api gateway route. Valid values:
GET
,POST
,PUT
,DELETE
,HEAD
,OPTIONS
,CONNECT
. - Query
Strings []ApigRoute Match Rule Query String - The query string of the api gateway route.
- path
Apig
Route Match Rule Path - The path of the api gateway route.
- headers
List<Apig
Route Match Rule Header> - The header of the api gateway route.
- methods List<String>
- The method of the api gateway route. Valid values:
GET
,POST
,PUT
,DELETE
,HEAD
,OPTIONS
,CONNECT
. - query
Strings List<ApigRoute Match Rule Query String> - The query string of the api gateway route.
- path
Apig
Route Match Rule Path - The path of the api gateway route.
- headers
Apig
Route Match Rule Header[] - The header of the api gateway route.
- methods string[]
- The method of the api gateway route. Valid values:
GET
,POST
,PUT
,DELETE
,HEAD
,OPTIONS
,CONNECT
. - query
Strings ApigRoute Match Rule Query String[] - The query string of the api gateway route.
- path
Apig
Route Match Rule Path - The path of the api gateway route.
- headers
Sequence[Apig
Route Match Rule Header] - The header of the api gateway route.
- methods Sequence[str]
- The method of the api gateway route. Valid values:
GET
,POST
,PUT
,DELETE
,HEAD
,OPTIONS
,CONNECT
. - query_
strings Sequence[ApigRoute Match Rule Query String] - The query string of the api gateway route.
- path Property Map
- The path of the api gateway route.
- headers List<Property Map>
- The header of the api gateway route.
- methods List<String>
- The method of the api gateway route. Valid values:
GET
,POST
,PUT
,DELETE
,HEAD
,OPTIONS
,CONNECT
. - query
Strings List<Property Map> - The query string of the api gateway route.
ApigRouteMatchRuleHeader, ApigRouteMatchRuleHeaderArgs
- Key string
- The key of the header.
- Value
Apig
Route Match Rule Header Value - The path of the api gateway route.
- Key string
- The key of the header.
- Value
Apig
Route Match Rule Header Value - The path of the api gateway route.
- key String
- The key of the header.
- value
Apig
Route Match Rule Header Value - The path of the api gateway route.
- key string
- The key of the header.
- value
Apig
Route Match Rule Header Value - The path of the api gateway route.
- key str
- The key of the header.
- value
Apig
Route Match Rule Header Value - The path of the api gateway route.
- key String
- The key of the header.
- value Property Map
- The path of the api gateway route.
ApigRouteMatchRuleHeaderValue, ApigRouteMatchRuleHeaderValueArgs
- Match
Content string - The match content of the api gateway route.
- Match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- Match
Content string - The match content of the api gateway route.
- Match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content String - The match content of the api gateway route.
- match
Type String - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content string - The match content of the api gateway route.
- match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match_
content str - The match content of the api gateway route.
- match_
type str - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content String - The match content of the api gateway route.
- match
Type String - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
ApigRouteMatchRulePath, ApigRouteMatchRulePathArgs
- Match
Content string - The match content of the api gateway route.
- Match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- Match
Content string - The match content of the api gateway route.
- Match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content String - The match content of the api gateway route.
- match
Type String - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content string - The match content of the api gateway route.
- match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match_
content str - The match content of the api gateway route.
- match_
type str - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content String - The match content of the api gateway route.
- match
Type String - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
ApigRouteMatchRuleQueryString, ApigRouteMatchRuleQueryStringArgs
- Key string
- The key of the query string.
- Value
Apig
Route Match Rule Query String Value - The path of the api gateway route.
- Key string
- The key of the query string.
- Value
Apig
Route Match Rule Query String Value - The path of the api gateway route.
- key String
- The key of the query string.
- value
Apig
Route Match Rule Query String Value - The path of the api gateway route.
- key string
- The key of the query string.
- value
Apig
Route Match Rule Query String Value - The path of the api gateway route.
- key str
- The key of the query string.
- value
Apig
Route Match Rule Query String Value - The path of the api gateway route.
- key String
- The key of the query string.
- value Property Map
- The path of the api gateway route.
ApigRouteMatchRuleQueryStringValue, ApigRouteMatchRuleQueryStringValueArgs
- Match
Content string - The match content of the api gateway route.
- Match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- Match
Content string - The match content of the api gateway route.
- Match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content String - The match content of the api gateway route.
- match
Type String - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content string - The match content of the api gateway route.
- match
Type string - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match_
content str - The match content of the api gateway route.
- match_
type str - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
- match
Content String - The match content of the api gateway route.
- match
Type String - The match type of the api gateway route. Valid values:
Prefix
,Exact
,Regex
.
ApigRouteUpstreamList, ApigRouteUpstreamListArgs
- Upstream
Id string - The id of the api gateway upstream.
- Weight int
- The weight of the api gateway upstream. Valid values: 0~10000.
- Ai
Provider ApigSettings Route Upstream List Ai Provider Settings - The ai provider settings of the api gateway route.
- Version string
- The version of the api gateway upstream.
- Upstream
Id string - The id of the api gateway upstream.
- Weight int
- The weight of the api gateway upstream. Valid values: 0~10000.
- Ai
Provider ApigSettings Route Upstream List Ai Provider Settings - The ai provider settings of the api gateway route.
- Version string
- The version of the api gateway upstream.
- upstream
Id String - The id of the api gateway upstream.
- weight Integer
- The weight of the api gateway upstream. Valid values: 0~10000.
- ai
Provider ApigSettings Route Upstream List Ai Provider Settings - The ai provider settings of the api gateway route.
- version String
- The version of the api gateway upstream.
- upstream
Id string - The id of the api gateway upstream.
- weight number
- The weight of the api gateway upstream. Valid values: 0~10000.
- ai
Provider ApigSettings Route Upstream List Ai Provider Settings - The ai provider settings of the api gateway route.
- version string
- The version of the api gateway upstream.
- upstream_
id str - The id of the api gateway upstream.
- weight int
- The weight of the api gateway upstream. Valid values: 0~10000.
- ai_
provider_ Apigsettings Route Upstream List Ai Provider Settings - The ai provider settings of the api gateway route.
- version str
- The version of the api gateway upstream.
- upstream
Id String - The id of the api gateway upstream.
- weight Number
- The weight of the api gateway upstream. Valid values: 0~10000.
- ai
Provider Property MapSettings - The ai provider settings of the api gateway route.
- version String
- The version of the api gateway upstream.
ApigRouteUpstreamListAiProviderSettings, ApigRouteUpstreamListAiProviderSettingsArgs
- Model string
- The model of the ai provider.
- Target
Path string - The target path of the ai provider.
- Model string
- The model of the ai provider.
- Target
Path string - The target path of the ai provider.
- model String
- The model of the ai provider.
- target
Path String - The target path of the ai provider.
- model string
- The model of the ai provider.
- target
Path string - The target path of the ai provider.
- model str
- The model of the ai provider.
- target_
path str - The target path of the ai provider.
- model String
- The model of the ai provider.
- target
Path String - The target path of the ai provider.
Import
ApigRoute can be imported using the id, e.g.
$ pulumi import volcengine:apig/apigRoute:ApigRoute default resource_id
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- volcengine volcengine/pulumi-volcengine
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
volcengine
Terraform Provider.