getVpcCenTrFirewalls

This data source provides Cloud Firewall Vpc Cen Tr Firewall available to the user.What is Vpc Cen Tr Firewall

NOTE: Available since v1.243.0.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "terraform-example";
const description = config.get("description") || "Created by Terraform";
const firewallName = config.get("firewallName") || "tf-example";
const trAttachmentMasterCidr = config.get("trAttachmentMasterCidr") || "192.168.3.192/26";
const firewallSubnetCidr = config.get("firewallSubnetCidr") || "192.168.3.0/25";
const region = config.get("region") || "cn-hangzhou";
const trAttachmentSlaveCidr = config.get("trAttachmentSlaveCidr") || "192.168.3.128/26";
const firewallVpcCidr = config.get("firewallVpcCidr") || "192.168.3.0/24";
const zone1 = config.get("zone1") || "cn-hangzhou-h";
const firewallNameUpdate = config.get("firewallNameUpdate") || "tf-example-1";
const zone2 = config.get("zone2") || "cn-hangzhou-i";
const cen = new alicloud.cen.Instance("cen", {
description: "terraform example",
cenInstanceName: "Cen_Terraform_example01",
});
const tr = new alicloud.cen.TransitRouter("tr", {
supportMulticast: false,
transitRouterName: "CEN_TR_Terraform",
transitRouterDescription: "tr-created-by-terraform",
cenId: cen.id,
});
const vpc1 = new alicloud.vpc.Network("vpc1", {
description: "created by terraform",
cidrBlock: "192.168.1.0/24",
vpcName: "vpc1-Terraform",
});
const vpc1vsw1 = new alicloud.vpc.Switch("vpc1vsw1", {
cidrBlock: "192.168.1.0/25",
vswitchName: "vpc1-vsw1",
vpcId: vpc1.id,
zoneId: zone1,
});
const vpc1vsw2 = new alicloud.vpc.Switch("vpc1vsw2", {
vpcId: vpc1.id,
cidrBlock: "192.168.1.128/26",
vswitchName: "vpc1-vsw2",
zoneId: zone2,
});
const vpc2 = new alicloud.vpc.Network("vpc2", {
description: "created by terraform",
cidrBlock: "192.168.2.0/24",
vpcName: "vpc2-Terraform",
});
const vpc2vsw1 = new alicloud.vpc.Switch("vpc2vsw1", {
cidrBlock: "192.168.2.0/25",
vswitchName: "vpc2-vsw1",
vpcId: vpc2.id,
zoneId: zone1,
});
const vpc2vsw2 = new alicloud.vpc.Switch("vpc2vsw2", {
cidrBlock: "192.168.2.128/26",
vswitchName: "vpc2-vsw2",
vpcId: vpc2.id,
zoneId: zone2,
});
const tr_vpc1 = new alicloud.cen.TransitRouterVpcAttachment("tr-vpc1", {
autoPublishRouteEnabled: false,
zoneMappings: [
{
vswitchId: vpc1vsw1.id,
zoneId: vpc1vsw1.zoneId,
},
{
zoneId: vpc1vsw2.zoneId,
vswitchId: vpc1vsw2.id,
},
],
vpcId: vpc1.id,
cenId: cen.id,
});
const tr_vpc2 = new alicloud.cen.TransitRouterVpcAttachment("tr-vpc2", {
autoPublishRouteEnabled: false,
vpcId: vpc2.id,
zoneMappings: [
{
vswitchId: vpc2vsw1.id,
zoneId: vpc2vsw1.zoneId,
},
{
vswitchId: vpc2vsw2.id,
zoneId: vpc2vsw2.zoneId,
},
],
cenId: cen.id,
});
const defaultVpcCenTrFirewall = new alicloud.cloudfirewall.VpcCenTrFirewall("default", {
firewallDescription: "VpcCenTrFirewall created by terraform",
regionNo: region,
routeMode: "managed",
cenId: cen.id,
firewallVpcCidr: firewallVpcCidr,
transitRouterId: tr.transitRouterId,
trAttachmentMasterCidr: trAttachmentMasterCidr,
firewallName: firewallName,
firewallSubnetCidr: firewallSubnetCidr,
trAttachmentSlaveCidr: trAttachmentSlaveCidr,
});
const _default = alicloud.cloudfirewall.getVpcCenTrFirewallsOutput({
ids: [defaultVpcCenTrFirewall.id],
cenId: cen.id,
firewallName: firewallName,
regionNo: region,
routeMode: "managed",
transitRouterId: tr.transitRouterId,
});
export const alicloudCloudFirewallVpcCenTrFirewallExampleId = _default.apply(_default => _default.firewalls?.[0]?.id);
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform-example"
description = config.get("description")
if description is None:
description = "Created by Terraform"
firewall_name = config.get("firewallName")
if firewall_name is None:
firewall_name = "tf-example"
tr_attachment_master_cidr = config.get("trAttachmentMasterCidr")
if tr_attachment_master_cidr is None:
tr_attachment_master_cidr = "192.168.3.192/26"
firewall_subnet_cidr = config.get("firewallSubnetCidr")
if firewall_subnet_cidr is None:
firewall_subnet_cidr = "192.168.3.0/25"
region = config.get("region")
if region is None:
region = "cn-hangzhou"
tr_attachment_slave_cidr = config.get("trAttachmentSlaveCidr")
if tr_attachment_slave_cidr is None:
tr_attachment_slave_cidr = "192.168.3.128/26"
firewall_vpc_cidr = config.get("firewallVpcCidr")
if firewall_vpc_cidr is None:
firewall_vpc_cidr = "192.168.3.0/24"
zone1 = config.get("zone1")
if zone1 is None:
zone1 = "cn-hangzhou-h"
firewall_name_update = config.get("firewallNameUpdate")
if firewall_name_update is None:
firewall_name_update = "tf-example-1"
zone2 = config.get("zone2")
if zone2 is None:
zone2 = "cn-hangzhou-i"
cen = alicloud.cen.Instance("cen",
description="terraform example",
cen_instance_name="Cen_Terraform_example01")
tr = alicloud.cen.TransitRouter("tr",
support_multicast=False,
transit_router_name="CEN_TR_Terraform",
transit_router_description="tr-created-by-terraform",
cen_id=cen.id)
vpc1 = alicloud.vpc.Network("vpc1",
description="created by terraform",
cidr_block="192.168.1.0/24",
vpc_name="vpc1-Terraform")
vpc1vsw1 = alicloud.vpc.Switch("vpc1vsw1",
cidr_block="192.168.1.0/25",
vswitch_name="vpc1-vsw1",
vpc_id=vpc1.id,
zone_id=zone1)
vpc1vsw2 = alicloud.vpc.Switch("vpc1vsw2",
vpc_id=vpc1.id,
cidr_block="192.168.1.128/26",
vswitch_name="vpc1-vsw2",
zone_id=zone2)
vpc2 = alicloud.vpc.Network("vpc2",
description="created by terraform",
cidr_block="192.168.2.0/24",
vpc_name="vpc2-Terraform")
vpc2vsw1 = alicloud.vpc.Switch("vpc2vsw1",
cidr_block="192.168.2.0/25",
vswitch_name="vpc2-vsw1",
vpc_id=vpc2.id,
zone_id=zone1)
vpc2vsw2 = alicloud.vpc.Switch("vpc2vsw2",
cidr_block="192.168.2.128/26",
vswitch_name="vpc2-vsw2",
vpc_id=vpc2.id,
zone_id=zone2)
tr_vpc1 = alicloud.cen.TransitRouterVpcAttachment("tr-vpc1",
auto_publish_route_enabled=False,
zone_mappings=[
{
"vswitch_id": vpc1vsw1.id,
"zone_id": vpc1vsw1.zone_id,
},
{
"zone_id": vpc1vsw2.zone_id,
"vswitch_id": vpc1vsw2.id,
},
],
vpc_id=vpc1.id,
cen_id=cen.id)
tr_vpc2 = alicloud.cen.TransitRouterVpcAttachment("tr-vpc2",
auto_publish_route_enabled=False,
vpc_id=vpc2.id,
zone_mappings=[
{
"vswitch_id": vpc2vsw1.id,
"zone_id": vpc2vsw1.zone_id,
},
{
"vswitch_id": vpc2vsw2.id,
"zone_id": vpc2vsw2.zone_id,
},
],
cen_id=cen.id)
default_vpc_cen_tr_firewall = alicloud.cloudfirewall.VpcCenTrFirewall("default",
firewall_description="VpcCenTrFirewall created by terraform",
region_no=region,
route_mode="managed",
cen_id=cen.id,
firewall_vpc_cidr=firewall_vpc_cidr,
transit_router_id=tr.transit_router_id,
tr_attachment_master_cidr=tr_attachment_master_cidr,
firewall_name=firewall_name,
firewall_subnet_cidr=firewall_subnet_cidr,
tr_attachment_slave_cidr=tr_attachment_slave_cidr)
default = alicloud.cloudfirewall.get_vpc_cen_tr_firewalls_output(ids=[default_vpc_cen_tr_firewall.id],
cen_id=cen.id,
firewall_name=firewall_name,
region_no=region,
route_mode="managed",
transit_router_id=tr.transit_router_id)
pulumi.export("alicloudCloudFirewallVpcCenTrFirewallExampleId", default.firewalls[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform-example";
var description = config.Get("description") ?? "Created by Terraform";
var firewallName = config.Get("firewallName") ?? "tf-example";
var trAttachmentMasterCidr = config.Get("trAttachmentMasterCidr") ?? "192.168.3.192/26";
var firewallSubnetCidr = config.Get("firewallSubnetCidr") ?? "192.168.3.0/25";
var region = config.Get("region") ?? "cn-hangzhou";
var trAttachmentSlaveCidr = config.Get("trAttachmentSlaveCidr") ?? "192.168.3.128/26";
var firewallVpcCidr = config.Get("firewallVpcCidr") ?? "192.168.3.0/24";
var zone1 = config.Get("zone1") ?? "cn-hangzhou-h";
var firewallNameUpdate = config.Get("firewallNameUpdate") ?? "tf-example-1";
var zone2 = config.Get("zone2") ?? "cn-hangzhou-i";
var cen = new AliCloud.Cen.Instance("cen", new()
{
Description = "terraform example",
CenInstanceName = "Cen_Terraform_example01",
});
var tr = new AliCloud.Cen.TransitRouter("tr", new()
{
SupportMulticast = false,
TransitRouterName = "CEN_TR_Terraform",
TransitRouterDescription = "tr-created-by-terraform",
CenId = cen.Id,
});
var vpc1 = new AliCloud.Vpc.Network("vpc1", new()
{
Description = "created by terraform",
CidrBlock = "192.168.1.0/24",
VpcName = "vpc1-Terraform",
});
var vpc1vsw1 = new AliCloud.Vpc.Switch("vpc1vsw1", new()
{
CidrBlock = "192.168.1.0/25",
VswitchName = "vpc1-vsw1",
VpcId = vpc1.Id,
ZoneId = zone1,
});
var vpc1vsw2 = new AliCloud.Vpc.Switch("vpc1vsw2", new()
{
VpcId = vpc1.Id,
CidrBlock = "192.168.1.128/26",
VswitchName = "vpc1-vsw2",
ZoneId = zone2,
});
var vpc2 = new AliCloud.Vpc.Network("vpc2", new()
{
Description = "created by terraform",
CidrBlock = "192.168.2.0/24",
VpcName = "vpc2-Terraform",
});
var vpc2vsw1 = new AliCloud.Vpc.Switch("vpc2vsw1", new()
{
CidrBlock = "192.168.2.0/25",
VswitchName = "vpc2-vsw1",
VpcId = vpc2.Id,
ZoneId = zone1,
});
var vpc2vsw2 = new AliCloud.Vpc.Switch("vpc2vsw2", new()
{
CidrBlock = "192.168.2.128/26",
VswitchName = "vpc2-vsw2",
VpcId = vpc2.Id,
ZoneId = zone2,
});
var tr_vpc1 = new AliCloud.Cen.TransitRouterVpcAttachment("tr-vpc1", new()
{
AutoPublishRouteEnabled = false,
ZoneMappings = new[]
{
new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs
{
VswitchId = vpc1vsw1.Id,
ZoneId = vpc1vsw1.ZoneId,
},
new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs
{
ZoneId = vpc1vsw2.ZoneId,
VswitchId = vpc1vsw2.Id,
},
},
VpcId = vpc1.Id,
CenId = cen.Id,
});
var tr_vpc2 = new AliCloud.Cen.TransitRouterVpcAttachment("tr-vpc2", new()
{
AutoPublishRouteEnabled = false,
VpcId = vpc2.Id,
ZoneMappings = new[]
{
new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs
{
VswitchId = vpc2vsw1.Id,
ZoneId = vpc2vsw1.ZoneId,
},
new AliCloud.Cen.Inputs.TransitRouterVpcAttachmentZoneMappingArgs
{
VswitchId = vpc2vsw2.Id,
ZoneId = vpc2vsw2.ZoneId,
},
},
CenId = cen.Id,
});
var defaultVpcCenTrFirewall = new AliCloud.CloudFirewall.VpcCenTrFirewall("default", new()
{
FirewallDescription = "VpcCenTrFirewall created by terraform",
RegionNo = region,
RouteMode = "managed",
CenId = cen.Id,
FirewallVpcCidr = firewallVpcCidr,
TransitRouterId = tr.TransitRouterId,
TrAttachmentMasterCidr = trAttachmentMasterCidr,
FirewallName = firewallName,
FirewallSubnetCidr = firewallSubnetCidr,
TrAttachmentSlaveCidr = trAttachmentSlaveCidr,
});
var @default = AliCloud.CloudFirewall.GetVpcCenTrFirewalls.Invoke(new()
{
Ids = new[]
{
defaultVpcCenTrFirewall.Id,
},
CenId = cen.Id,
FirewallName = firewallName,
RegionNo = region,
RouteMode = "managed",
TransitRouterId = tr.TransitRouterId,
});
return new Dictionary<string, object?>
{
["alicloudCloudFirewallVpcCenTrFirewallExampleId"] = @default&#46;Apply(@default => @default&#46;Apply(getVpcCenTrFirewallsResult => getVpcCenTrFirewallsResult&#46;Firewalls[0]?.Id)),
};
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cen"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/cloudfirewall"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "terraform-example";
if param := cfg.Get("name"); param != ""{
name = param
}
description := "Created by Terraform";
if param := cfg.Get("description"); param != ""{
description = param
}
firewallName := "tf-example";
if param := cfg.Get("firewallName"); param != ""{
firewallName = param
}
trAttachmentMasterCidr := "192.168.3.192/26";
if param := cfg.Get("trAttachmentMasterCidr"); param != ""{
trAttachmentMasterCidr = param
}
firewallSubnetCidr := "192.168.3.0/25";
if param := cfg.Get("firewallSubnetCidr"); param != ""{
firewallSubnetCidr = param
}
region := "cn-hangzhou";
if param := cfg.Get("region"); param != ""{
region = param
}
trAttachmentSlaveCidr := "192.168.3.128/26";
if param := cfg.Get("trAttachmentSlaveCidr"); param != ""{
trAttachmentSlaveCidr = param
}
firewallVpcCidr := "192.168.3.0/24";
if param := cfg.Get("firewallVpcCidr"); param != ""{
firewallVpcCidr = param
}
zone1 := "cn-hangzhou-h";
if param := cfg.Get("zone1"); param != ""{
zone1 = param
}
firewallNameUpdate := "tf-example-1";
if param := cfg.Get("firewallNameUpdate"); param != ""{
firewallNameUpdate = param
}
zone2 := "cn-hangzhou-i";
if param := cfg.Get("zone2"); param != ""{
zone2 = param
}
cen, err := cen.NewInstance(ctx, "cen", &cen.InstanceArgs{
Description: pulumi.String("terraform example"),
CenInstanceName: pulumi.String("Cen_Terraform_example01"),
})
if err != nil {
return err
}
tr, err := cen.NewTransitRouter(ctx, "tr", &cen.TransitRouterArgs{
SupportMulticast: pulumi.Bool(false),
TransitRouterName: pulumi.String("CEN_TR_Terraform"),
TransitRouterDescription: pulumi.String("tr-created-by-terraform"),
CenId: cen.ID(),
})
if err != nil {
return err
}
vpc1, err := vpc.NewNetwork(ctx, "vpc1", &vpc.NetworkArgs{
Description: pulumi.String("created by terraform"),
CidrBlock: pulumi.String("192.168.1.0/24"),
VpcName: pulumi.String("vpc1-Terraform"),
})
if err != nil {
return err
}
vpc1vsw1, err := vpc.NewSwitch(ctx, "vpc1vsw1", &vpc.SwitchArgs{
CidrBlock: pulumi.String("192.168.1.0/25"),
VswitchName: pulumi.String("vpc1-vsw1"),
VpcId: vpc1.ID(),
ZoneId: pulumi.String(zone1),
})
if err != nil {
return err
}
vpc1vsw2, err := vpc.NewSwitch(ctx, "vpc1vsw2", &vpc.SwitchArgs{
VpcId: vpc1.ID(),
CidrBlock: pulumi.String("192.168.1.128/26"),
VswitchName: pulumi.String("vpc1-vsw2"),
ZoneId: pulumi.String(zone2),
})
if err != nil {
return err
}
vpc2, err := vpc.NewNetwork(ctx, "vpc2", &vpc.NetworkArgs{
Description: pulumi.String("created by terraform"),
CidrBlock: pulumi.String("192.168.2.0/24"),
VpcName: pulumi.String("vpc2-Terraform"),
})
if err != nil {
return err
}
vpc2vsw1, err := vpc.NewSwitch(ctx, "vpc2vsw1", &vpc.SwitchArgs{
CidrBlock: pulumi.String("192.168.2.0/25"),
VswitchName: pulumi.String("vpc2-vsw1"),
VpcId: vpc2.ID(),
ZoneId: pulumi.String(zone1),
})
if err != nil {
return err
}
vpc2vsw2, err := vpc.NewSwitch(ctx, "vpc2vsw2", &vpc.SwitchArgs{
CidrBlock: pulumi.String("192.168.2.128/26"),
VswitchName: pulumi.String("vpc2-vsw2"),
VpcId: vpc2.ID(),
ZoneId: pulumi.String(zone2),
})
if err != nil {
return err
}
_, err = cen.NewTransitRouterVpcAttachment(ctx, "tr-vpc1", &cen.TransitRouterVpcAttachmentArgs{
AutoPublishRouteEnabled: pulumi.Bool(false),
ZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{
&cen.TransitRouterVpcAttachmentZoneMappingArgs{
VswitchId: vpc1vsw1.ID(),
ZoneId: vpc1vsw1.ZoneId,
},
&cen.TransitRouterVpcAttachmentZoneMappingArgs{
ZoneId: vpc1vsw2.ZoneId,
VswitchId: vpc1vsw2.ID(),
},
},
VpcId: vpc1.ID(),
CenId: cen.ID(),
})
if err != nil {
return err
}
_, err = cen.NewTransitRouterVpcAttachment(ctx, "tr-vpc2", &cen.TransitRouterVpcAttachmentArgs{
AutoPublishRouteEnabled: pulumi.Bool(false),
VpcId: vpc2.ID(),
ZoneMappings: cen.TransitRouterVpcAttachmentZoneMappingArray{
&cen.TransitRouterVpcAttachmentZoneMappingArgs{
VswitchId: vpc2vsw1.ID(),
ZoneId: vpc2vsw1.ZoneId,
},
&cen.TransitRouterVpcAttachmentZoneMappingArgs{
VswitchId: vpc2vsw2.ID(),
ZoneId: vpc2vsw2.ZoneId,
},
},
CenId: cen.ID(),
})
if err != nil {
return err
}
defaultVpcCenTrFirewall, err := cloudfirewall.NewVpcCenTrFirewall(ctx, "default", &cloudfirewall.VpcCenTrFirewallArgs{
FirewallDescription: pulumi.String("VpcCenTrFirewall created by terraform"),
RegionNo: pulumi.String(region),
RouteMode: pulumi.String("managed"),
CenId: cen.ID(),
FirewallVpcCidr: pulumi.String(firewallVpcCidr),
TransitRouterId: tr.TransitRouterId,
TrAttachmentMasterCidr: pulumi.String(trAttachmentMasterCidr),
FirewallName: pulumi.String(firewallName),
FirewallSubnetCidr: pulumi.String(firewallSubnetCidr),
TrAttachmentSlaveCidr: pulumi.String(trAttachmentSlaveCidr),
})
if err != nil {
return err
}
_default := cloudfirewall.GetVpcCenTrFirewallsOutput(ctx, cloudfirewall.GetVpcCenTrFirewallsOutputArgs{
Ids: pulumi.StringArray{
defaultVpcCenTrFirewall.ID(),
},
CenId: cen.ID(),
FirewallName: pulumi.String(firewallName),
RegionNo: pulumi.String(region),
RouteMode: pulumi.String("managed"),
TransitRouterId: tr.TransitRouterId,
}, nil);
ctx.Export("alicloudCloudFirewallVpcCenTrFirewallExampleId", _default.ApplyT(func(_default cloudfirewall.GetVpcCenTrFirewallsResult) (*string, error) {
return &default.Firewalls[0].Id, nil
}).(pulumi.StringPtrOutput))
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.cen.Instance;
import com.pulumi.alicloud.cen.InstanceArgs;
import com.pulumi.alicloud.cen.TransitRouter;
import com.pulumi.alicloud.cen.TransitRouterArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.cen.TransitRouterVpcAttachment;
import com.pulumi.alicloud.cen.TransitRouterVpcAttachmentArgs;
import com.pulumi.alicloud.cen.inputs.TransitRouterVpcAttachmentZoneMappingArgs;
import com.pulumi.alicloud.cloudfirewall.VpcCenTrFirewall;
import com.pulumi.alicloud.cloudfirewall.VpcCenTrFirewallArgs;
import com.pulumi.alicloud.cloudfirewall.CloudfirewallFunctions;
import com.pulumi.alicloud.cloudfirewall.inputs.GetVpcCenTrFirewallsArgs;
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 config = ctx.config();
final var name = config.get("name").orElse("terraform-example");
final var description = config.get("description").orElse("Created by Terraform");
final var firewallName = config.get("firewallName").orElse("tf-example");
final var trAttachmentMasterCidr = config.get("trAttachmentMasterCidr").orElse("192.168.3.192/26");
final var firewallSubnetCidr = config.get("firewallSubnetCidr").orElse("192.168.3.0/25");
final var region = config.get("region").orElse("cn-hangzhou");
final var trAttachmentSlaveCidr = config.get("trAttachmentSlaveCidr").orElse("192.168.3.128/26");
final var firewallVpcCidr = config.get("firewallVpcCidr").orElse("192.168.3.0/24");
final var zone1 = config.get("zone1").orElse("cn-hangzhou-h");
final var firewallNameUpdate = config.get("firewallNameUpdate").orElse("tf-example-1");
final var zone2 = config.get("zone2").orElse("cn-hangzhou-i");
var cen = new Instance("cen", InstanceArgs.builder()
.description("terraform example")
.cenInstanceName("Cen_Terraform_example01")
.build());
var tr = new TransitRouter("tr", TransitRouterArgs.builder()
.supportMulticast(false)
.transitRouterName("CEN_TR_Terraform")
.transitRouterDescription("tr-created-by-terraform")
.cenId(cen.id())
.build());
var vpc1 = new Network("vpc1", NetworkArgs.builder()
.description("created by terraform")
.cidrBlock("192.168.1.0/24")
.vpcName("vpc1-Terraform")
.build());
var vpc1vsw1 = new Switch("vpc1vsw1", SwitchArgs.builder()
.cidrBlock("192.168.1.0/25")
.vswitchName("vpc1-vsw1")
.vpcId(vpc1.id())
.zoneId(zone1)
.build());
var vpc1vsw2 = new Switch("vpc1vsw2", SwitchArgs.builder()
.vpcId(vpc1.id())
.cidrBlock("192.168.1.128/26")
.vswitchName("vpc1-vsw2")
.zoneId(zone2)
.build());
var vpc2 = new Network("vpc2", NetworkArgs.builder()
.description("created by terraform")
.cidrBlock("192.168.2.0/24")
.vpcName("vpc2-Terraform")
.build());
var vpc2vsw1 = new Switch("vpc2vsw1", SwitchArgs.builder()
.cidrBlock("192.168.2.0/25")
.vswitchName("vpc2-vsw1")
.vpcId(vpc2.id())
.zoneId(zone1)
.build());
var vpc2vsw2 = new Switch("vpc2vsw2", SwitchArgs.builder()
.cidrBlock("192.168.2.128/26")
.vswitchName("vpc2-vsw2")
.vpcId(vpc2.id())
.zoneId(zone2)
.build());
var tr_vpc1 = new TransitRouterVpcAttachment("tr-vpc1", TransitRouterVpcAttachmentArgs.builder()
.autoPublishRouteEnabled(false)
.zoneMappings(
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.vswitchId(vpc1vsw1.id())
.zoneId(vpc1vsw1.zoneId())
.build(),
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.zoneId(vpc1vsw2.zoneId())
.vswitchId(vpc1vsw2.id())
.build())
.vpcId(vpc1.id())
.cenId(cen.id())
.build());
var tr_vpc2 = new TransitRouterVpcAttachment("tr-vpc2", TransitRouterVpcAttachmentArgs.builder()
.autoPublishRouteEnabled(false)
.vpcId(vpc2.id())
.zoneMappings(
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.vswitchId(vpc2vsw1.id())
.zoneId(vpc2vsw1.zoneId())
.build(),
TransitRouterVpcAttachmentZoneMappingArgs.builder()
.vswitchId(vpc2vsw2.id())
.zoneId(vpc2vsw2.zoneId())
.build())
.cenId(cen.id())
.build());
var defaultVpcCenTrFirewall = new VpcCenTrFirewall("defaultVpcCenTrFirewall", VpcCenTrFirewallArgs.builder()
.firewallDescription("VpcCenTrFirewall created by terraform")
.regionNo(region)
.routeMode("managed")
.cenId(cen.id())
.firewallVpcCidr(firewallVpcCidr)
.transitRouterId(tr.transitRouterId())
.trAttachmentMasterCidr(trAttachmentMasterCidr)
.firewallName(firewallName)
.firewallSubnetCidr(firewallSubnetCidr)
.trAttachmentSlaveCidr(trAttachmentSlaveCidr)
.build());
final var default = CloudfirewallFunctions.getVpcCenTrFirewalls(GetVpcCenTrFirewallsArgs.builder()
.ids(defaultVpcCenTrFirewall.id())
.cenId(cen.id())
.firewallName(firewallName)
.regionNo(region)
.routeMode("managed")
.transitRouterId(tr.transitRouterId())
.build());
ctx.export("alicloudCloudFirewallVpcCenTrFirewallExampleId", default_.applyValue(_default_ -> _default_.firewalls()[0].id()));
}
}
configuration:
name:
type: string
default: terraform-example
description:
type: string
default: Created by Terraform
firewallName:
type: string
default: tf-example
trAttachmentMasterCidr:
type: string
default: 192.168.3.192/26
firewallSubnetCidr:
type: string
default: 192.168.3.0/25
region:
type: string
default: cn-hangzhou
trAttachmentSlaveCidr:
type: string
default: 192.168.3.128/26
firewallVpcCidr:
type: string
default: 192.168.3.0/24
zone1:
type: string
default: cn-hangzhou-h
firewallNameUpdate:
type: string
default: tf-example-1
zone2:
type: string
default: cn-hangzhou-i
resources:
cen:
type: alicloud:cen:Instance
properties:
description: terraform example
cenInstanceName: Cen_Terraform_example01
tr:
type: alicloud:cen:TransitRouter
properties:
supportMulticast: false
transitRouterName: CEN_TR_Terraform
transitRouterDescription: tr-created-by-terraform
cenId: ${cen.id}
vpc1:
type: alicloud:vpc:Network
properties:
description: created by terraform
cidrBlock: 192.168.1.0/24
vpcName: vpc1-Terraform
vpc1vsw1:
type: alicloud:vpc:Switch
properties:
cidrBlock: 192.168.1.0/25
vswitchName: vpc1-vsw1
vpcId: ${vpc1.id}
zoneId: ${zone1}
vpc1vsw2:
type: alicloud:vpc:Switch
properties:
vpcId: ${vpc1.id}
cidrBlock: 192.168.1.128/26
vswitchName: vpc1-vsw2
zoneId: ${zone2}
vpc2:
type: alicloud:vpc:Network
properties:
description: created by terraform
cidrBlock: 192.168.2.0/24
vpcName: vpc2-Terraform
vpc2vsw1:
type: alicloud:vpc:Switch
properties:
cidrBlock: 192.168.2.0/25
vswitchName: vpc2-vsw1
vpcId: ${vpc2.id}
zoneId: ${zone1}
vpc2vsw2:
type: alicloud:vpc:Switch
properties:
cidrBlock: 192.168.2.128/26
vswitchName: vpc2-vsw2
vpcId: ${vpc2.id}
zoneId: ${zone2}
tr-vpc1:
type: alicloud:cen:TransitRouterVpcAttachment
properties:
autoPublishRouteEnabled: false
zoneMappings:
- vswitchId: ${vpc1vsw1.id}
zoneId: ${vpc1vsw1.zoneId}
- zoneId: ${vpc1vsw2.zoneId}
vswitchId: ${vpc1vsw2.id}
vpcId: ${vpc1.id}
cenId: ${cen.id}
tr-vpc2:
type: alicloud:cen:TransitRouterVpcAttachment
properties:
autoPublishRouteEnabled: false
vpcId: ${vpc2.id}
zoneMappings:
- vswitchId: ${vpc2vsw1.id}
zoneId: ${vpc2vsw1.zoneId}
- vswitchId: ${vpc2vsw2.id}
zoneId: ${vpc2vsw2.zoneId}
cenId: ${cen.id}
defaultVpcCenTrFirewall:
type: alicloud:cloudfirewall:VpcCenTrFirewall
name: default
properties:
firewallDescription: VpcCenTrFirewall created by terraform
regionNo: ${region}
routeMode: managed
cenId: ${cen.id}
firewallVpcCidr: ${firewallVpcCidr}
transitRouterId: ${tr.transitRouterId}
trAttachmentMasterCidr: ${trAttachmentMasterCidr}
firewallName: ${firewallName}
firewallSubnetCidr: ${firewallSubnetCidr}
trAttachmentSlaveCidr: ${trAttachmentSlaveCidr}
variables:
default:
fn::invoke:
function: alicloud:cloudfirewall:getVpcCenTrFirewalls
arguments:
ids:
- ${defaultVpcCenTrFirewall.id}
cenId: ${cen.id}
firewallName: ${firewallName}
regionNo: ${region}
routeMode: managed
transitRouterId: ${tr.transitRouterId}
outputs:
alicloudCloudFirewallVpcCenTrFirewallExampleId: ${default.firewalls[0].id}

Return

A collection of values returned by getVpcCenTrFirewalls.

Parameters

argument

A collection of arguments for invoking getVpcCenTrFirewalls.


suspend fun getVpcCenTrFirewalls(cenId: String? = null, currentPage: Int? = null, firewallId: String? = null, firewallName: String? = null, firewallSwitchStatus: String? = null, ids: List<String>? = null, outputFile: String? = null, pageNumber: Int? = null, pageSize: Int? = null, regionNo: String? = null, routeMode: String? = null, transitRouterId: String? = null): GetVpcCenTrFirewallsResult

Return

A collection of values returned by getVpcCenTrFirewalls.

Parameters

cenId

The ID of the CEN instance.

currentPage

The page number of the pagination query. The default value is 1.

firewallId

Firewall ID

firewallName

The name of Cloud Firewall.

firewallSwitchStatus

The status of the VPC boundary firewall. Value:-opened: opened-closed: closed-notconfigured: indicates that the VPC boundary firewall has not been configured yet.-configured: indicates that the VPC boundary firewall has been configured.-creating: indicates that a VPC boundary firewall is being created.-opening: indicates that the VPC border firewall is being enabled.-deleting: indicates that the VPC boundary firewall is being deleted.> If this parameter is not set, the VPC boundary firewall in all states is queried.

ids

A list of Vpc Cen Tr Firewall IDs.

outputFile

File name where to save data source results (after running pulumi preview).

pageNumber

Current page number.

pageSize

The maximum number of pieces of data per page that are displayed during a paged query. The default value is 10.

regionNo

The region ID of the transit router instance.

routeMode

The routing pattern. Value: managed: indicates automatic mode

transitRouterId

The ID of the transit router instance.

See also


Return

A collection of values returned by getVpcCenTrFirewalls.

Parameters

argument

Builder for com.pulumi.alicloud.cloudfirewall.kotlin.inputs.GetVpcCenTrFirewallsPlainArgs.

See also