Class CoreNetwork


  • public class CoreNetwork
    extends com.pulumi.resources.CustomResource
    Manages a Network Manager Core Network. Use this resource to create and manage a core network within a global network. ## Example Usage ### Basic
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var example = new CoreNetwork("example", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleAwsNetworkmanagerGlobalNetwork.id())
                 .build());
     
         }
     }
     
     
    ### With description
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var example = new CoreNetwork("example", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleAwsNetworkmanagerGlobalNetwork.id())
                 .description("example")
                 .build());
     
         }
     }
     
     
    ### With tags
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var example = new CoreNetwork("example", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleAwsNetworkmanagerGlobalNetwork.id())
                 .tags(Map.of("hello", "world"))
                 .build());
     
         }
     }
     
     
    ### With VPC Attachment (Single Region) The example below illustrates the scenario where your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Set the `createBasePolicy` argument to `true` if your core network does not currently have any `LIVE` policies (e.g. this is the first `pulumi up` with the core network resource), since a `LIVE` policy is required before VPCs can be attached to the core network. Otherwise, if your core network already has a `LIVE` policy, you may exclude the `createBasePolicy` argument. There are 2 options to implement this: - Option 1: Use the `basePolicyDocument` argument that allows the most customizations to a base policy. Use this to customize the `edgeLocations` `asn`. In the example below, `us-west-2` and ASN `65500` are used in the base policy. - Option 2: Use the `createBasePolicy` argument only. This creates a base policy in the region specified in the `provider` block. ### Option 1 - using basePolicyDocument If you require a custom ASN for the edge location, please use the `basePolicyDocument` argument to pass a specific ASN. For example:
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.GlobalNetwork;
     import com.pulumi.aws.networkmanager.NetworkmanagerFunctions;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentArgs;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import com.pulumi.aws.networkmanager.VpcAttachment;
     import com.pulumi.aws.networkmanager.VpcAttachmentArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentActionArgs;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachment;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachmentArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var exampleGlobalNetwork = new GlobalNetwork("exampleGlobalNetwork");
     
             final var base = NetworkmanagerFunctions.getCoreNetworkPolicyDocument(GetCoreNetworkPolicyDocumentArgs.builder()
                 .coreNetworkConfigurations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs.builder()
                     .edgeLocations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                         .location("us-west-2")
                         .asn("65500")
                         .build())
                     .asnRanges("65022-65534")
                     .build())
                 .segments(GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                     .name("segment")
                     .build())
                 .build());
     
             var exampleCoreNetwork = new CoreNetwork("exampleCoreNetwork", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleGlobalNetwork.id())
                 .basePolicyDocument(base.json())
                 .createBasePolicy(true)
                 .build());
     
             var exampleVpcAttachment = new VpcAttachment("exampleVpcAttachment", VpcAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .subnetArns(exampleAwsSubnet.stream().map(element -> element.arn()).collect(toList()))
                 .vpcArn(exampleAwsVpc.arn())
                 .build());
     
             final var example = NetworkmanagerFunctions.getCoreNetworkPolicyDocument(GetCoreNetworkPolicyDocumentArgs.builder()
                 .coreNetworkConfigurations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs.builder()
                     .edgeLocations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                         .location("us-west-2")
                         .asn("65500")
                         .build())
                     .asnRanges("65022-65534")
                     .build())
                 .segmentActions(GetCoreNetworkPolicyDocumentSegmentActionArgs.builder()
                     .action("create-route")
                     .segment("segment")
                     .destinationCidrBlocks("0.0.0.0/0")
                     .destinations(exampleVpcAttachment.id())
                     .build())
                 .segments(GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                     .name("segment")
                     .build())
                 .build());
     
             var exampleCoreNetworkPolicyAttachment = new CoreNetworkPolicyAttachment("exampleCoreNetworkPolicyAttachment", CoreNetworkPolicyAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .policyDocument(example.applyValue(_example -> _example.json()))
                 .build());
     
         }
     }
     
     
    ### Option 2 - createBasePolicy only
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.GlobalNetwork;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import com.pulumi.aws.networkmanager.VpcAttachment;
     import com.pulumi.aws.networkmanager.VpcAttachmentArgs;
     import com.pulumi.aws.networkmanager.NetworkmanagerFunctions;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentActionArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentArgs;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachment;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachmentArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var exampleGlobalNetwork = new GlobalNetwork("exampleGlobalNetwork");
     
             var exampleCoreNetwork = new CoreNetwork("exampleCoreNetwork", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleGlobalNetwork.id())
                 .createBasePolicy(true)
                 .build());
     
             var exampleVpcAttachment = new VpcAttachment("exampleVpcAttachment", VpcAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .subnetArns(exampleAwsSubnet.stream().map(element -> element.arn()).collect(toList()))
                 .vpcArn(exampleAwsVpc.arn())
                 .build());
     
             final var example = NetworkmanagerFunctions.getCoreNetworkPolicyDocument(GetCoreNetworkPolicyDocumentArgs.builder()
                 .coreNetworkConfigurations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs.builder()
                     .edgeLocations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                         .location("us-west-2")
                         .build())
                     .asnRanges("65022-65534")
                     .build())
                 .segmentActions(GetCoreNetworkPolicyDocumentSegmentActionArgs.builder()
                     .action("create-route")
                     .segment("segment")
                     .destinationCidrBlocks("0.0.0.0/0")
                     .destinations(exampleVpcAttachment.id())
                     .build())
                 .segments(GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                     .name("segment")
                     .build())
                 .build());
     
             var exampleCoreNetworkPolicyAttachment = new CoreNetworkPolicyAttachment("exampleCoreNetworkPolicyAttachment", CoreNetworkPolicyAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .policyDocument(example.applyValue(_example -> _example.json()))
                 .build());
     
         }
     }
     
     
    ### With VPC Attachment (Multi-Region) The example below illustrates the scenario where your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Set the `createBasePolicy` argument of the `aws.networkmanager.CoreNetwork` resource to `true` if your core network does not currently have any `LIVE` policies (e.g. this is the first `pulumi up` with the core network resource), since a `LIVE` policy is required before VPCs can be attached to the core network. Otherwise, if your core network already has a `LIVE` policy, you may exclude the `createBasePolicy` argument. For multi-region in a core network that does not yet have a `LIVE` policy, there are 2 options: - Option 1: Use the `basePolicyDocument` argument that allows the most customizations to a base policy. Use this to customize the `edgeLocations` `asn`. In the example below, `us-west-2`, `us-east-1` and specific ASNs are used in the base policy. - Option 2: Pass a list of regions to the `aws.networkmanager.CoreNetwork` `basePolicyRegions` argument. In the example below, `us-west-2` and `us-east-1` are specified in the base policy. ### Option 1 - using basePolicyDocument
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.GlobalNetwork;
     import com.pulumi.aws.networkmanager.NetworkmanagerFunctions;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentArgs;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import com.pulumi.aws.networkmanager.VpcAttachment;
     import com.pulumi.aws.networkmanager.VpcAttachmentArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentActionArgs;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachment;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachmentArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var exampleGlobalNetwork = new GlobalNetwork("exampleGlobalNetwork");
     
             final var base = NetworkmanagerFunctions.getCoreNetworkPolicyDocument(GetCoreNetworkPolicyDocumentArgs.builder()
                 .coreNetworkConfigurations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs.builder()
                     .edgeLocations(                
                         GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                             .location("us-west-2")
                             .asn("65500")
                             .build(),
                         GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                             .location("us-east-1")
                             .asn("65501")
                             .build())
                     .asnRanges("65022-65534")
                     .build())
                 .segments(GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                     .name("segment")
                     .build())
                 .build());
     
             var exampleCoreNetwork = new CoreNetwork("exampleCoreNetwork", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleGlobalNetwork.id())
                 .basePolicyDocument(base.json())
                 .createBasePolicy(true)
                 .build());
     
             var exampleUsWest2 = new VpcAttachment("exampleUsWest2", VpcAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .subnetArns(exampleUsWest2AwsSubnet.stream().map(element -> element.arn()).collect(toList()))
                 .vpcArn(exampleUsWest2AwsVpc.arn())
                 .build());
     
             var exampleUsEast1 = new VpcAttachment("exampleUsEast1", VpcAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .subnetArns(exampleUsEast1AwsSubnet.stream().map(element -> element.arn()).collect(toList()))
                 .vpcArn(exampleUsEast1AwsVpc.arn())
                 .build());
     
             final var example = NetworkmanagerFunctions.getCoreNetworkPolicyDocument(GetCoreNetworkPolicyDocumentArgs.builder()
                 .coreNetworkConfigurations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs.builder()
                     .edgeLocations(                
                         GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                             .location("us-west-2")
                             .asn("65500")
                             .build(),
                         GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                             .location("us-east-1")
                             .asn("65501")
                             .build())
                     .asnRanges("65022-65534")
                     .build())
                 .segmentActions(            
                     GetCoreNetworkPolicyDocumentSegmentActionArgs.builder()
                         .action("create-route")
                         .segment("segment")
                         .destinationCidrBlocks("10.0.0.0/16")
                         .destinations(exampleUsWest2.id())
                         .build(),
                     GetCoreNetworkPolicyDocumentSegmentActionArgs.builder()
                         .action("create-route")
                         .segment("segment")
                         .destinationCidrBlocks("10.1.0.0/16")
                         .destinations(exampleUsEast1.id())
                         .build())
                 .segments(            
                     GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                         .name("segment")
                         .build(),
                     GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                         .name("segment2")
                         .build())
                 .build());
     
             var exampleCoreNetworkPolicyAttachment = new CoreNetworkPolicyAttachment("exampleCoreNetworkPolicyAttachment", CoreNetworkPolicyAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .policyDocument(example.applyValue(_example -> _example.json()))
                 .build());
     
         }
     }
     
     
    ### Option 2 - using basePolicyRegions
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.networkmanager.GlobalNetwork;
     import com.pulumi.aws.networkmanager.CoreNetwork;
     import com.pulumi.aws.networkmanager.CoreNetworkArgs;
     import com.pulumi.aws.networkmanager.VpcAttachment;
     import com.pulumi.aws.networkmanager.VpcAttachmentArgs;
     import com.pulumi.aws.networkmanager.NetworkmanagerFunctions;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentActionArgs;
     import com.pulumi.aws.networkmanager.inputs.GetCoreNetworkPolicyDocumentSegmentArgs;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachment;
     import com.pulumi.aws.networkmanager.CoreNetworkPolicyAttachmentArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     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) {
             var exampleGlobalNetwork = new GlobalNetwork("exampleGlobalNetwork");
     
             var exampleCoreNetwork = new CoreNetwork("exampleCoreNetwork", CoreNetworkArgs.builder()
                 .globalNetworkId(exampleGlobalNetwork.id())
                 .basePolicyRegions(            
                     "us-west-2",
                     "us-east-1")
                 .createBasePolicy(true)
                 .build());
     
             var exampleUsWest2 = new VpcAttachment("exampleUsWest2", VpcAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .subnetArns(exampleUsWest2AwsSubnet.stream().map(element -> element.arn()).collect(toList()))
                 .vpcArn(exampleUsWest2AwsVpc.arn())
                 .build());
     
             var exampleUsEast1 = new VpcAttachment("exampleUsEast1", VpcAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .subnetArns(exampleUsEast1AwsSubnet.stream().map(element -> element.arn()).collect(toList()))
                 .vpcArn(exampleUsEast1AwsVpc.arn())
                 .build());
     
             final var example = NetworkmanagerFunctions.getCoreNetworkPolicyDocument(GetCoreNetworkPolicyDocumentArgs.builder()
                 .coreNetworkConfigurations(GetCoreNetworkPolicyDocumentCoreNetworkConfigurationArgs.builder()
                     .edgeLocations(                
                         GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                             .location("us-west-2")
                             .build(),
                         GetCoreNetworkPolicyDocumentCoreNetworkConfigurationEdgeLocationArgs.builder()
                             .location("us-east-1")
                             .build())
                     .asnRanges("65022-65534")
                     .build())
                 .segmentActions(            
                     GetCoreNetworkPolicyDocumentSegmentActionArgs.builder()
                         .action("create-route")
                         .segment("segment")
                         .destinationCidrBlocks("10.0.0.0/16")
                         .destinations(exampleUsWest2.id())
                         .build(),
                     GetCoreNetworkPolicyDocumentSegmentActionArgs.builder()
                         .action("create-route")
                         .segment("segment")
                         .destinationCidrBlocks("10.1.0.0/16")
                         .destinations(exampleUsEast1.id())
                         .build())
                 .segments(            
                     GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                         .name("segment")
                         .build(),
                     GetCoreNetworkPolicyDocumentSegmentArgs.builder()
                         .name("segment2")
                         .build())
                 .build());
     
             var exampleCoreNetworkPolicyAttachment = new CoreNetworkPolicyAttachment("exampleCoreNetworkPolicyAttachment", CoreNetworkPolicyAttachmentArgs.builder()
                 .coreNetworkId(exampleCoreNetwork.id())
                 .policyDocument(example.applyValue(_example -> _example.json()))
                 .build());
     
         }
     }
     
     
    ### Base Policy Example The base policy created by `createBasePolicy` looks like the following. This base policy is overridden by the policy you specify in the `aws.networkmanager.CoreNetworkPolicyAttachment` resource. ## Import Using `pulumi import`, import `aws.networkmanager.CoreNetwork` using the core network ID. For example: ```sh $ pulumi import aws:networkmanager/coreNetwork:CoreNetwork example core-network-0d47f6t230mz46dy4 ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> basePolicyDocument()  
      com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> basePolicyRegions()  
      com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> createBasePolicy()  
      com.pulumi.core.Output<java.lang.String> createdAt()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()  
      com.pulumi.core.Output<java.util.List<CoreNetworkEdge>> edges()  
      static CoreNetwork get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, CoreNetworkState state, com.pulumi.resources.CustomResourceOptions options)
      Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
      com.pulumi.core.Output<java.lang.String> globalNetworkId()  
      com.pulumi.core.Output<java.util.List<CoreNetworkSegment>> segments()  
      com.pulumi.core.Output<java.lang.String> state()  
      com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • CoreNetwork

        public CoreNetwork​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • CoreNetwork

        public CoreNetwork​(java.lang.String name,
                           CoreNetworkArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • CoreNetwork

        public CoreNetwork​(java.lang.String name,
                           CoreNetworkArgs args,
                           @Nullable
                           com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
        Returns:
        Core Network ARN.
      • basePolicyDocument

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> basePolicyDocument()
        Returns:
        Sets the base policy document for the core network. Refer to the [Core network policies documentation](https://docs.aws.amazon.com/network-manager/latest/cloudwan/cloudwan-policy-change-sets.html) for more information.
      • basePolicyRegions

        public com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> basePolicyRegions()
        Returns:
        List of regions to add to the base policy. The base policy created by setting the `createBasePolicy` argument to `true` requires one or more regions to be set in the `edge-locations`, `location` key. If `basePolicyRegions` is not specified, the region used in the base policy defaults to the region specified in the `provider` block.
      • createBasePolicy

        public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> createBasePolicy()
        Returns:
        Whether to create a base policy when a core network is created or updated. A base policy is created and set to `LIVE` to allow attachments to the core network (e.g. VPC Attachments) before applying a policy document provided using the `aws.networkmanager.CoreNetworkPolicyAttachment` resource. This base policy is needed if your core network does not have any `LIVE` policies and your policy document has static routes pointing to VPC attachments and you want to attach your VPCs to the core network before applying the desired policy document. Valid values are `true` or `false`. An example of this Pulumi snippet can be found above for VPC Attachment in a single region and for VPC Attachment multi-region. An example base policy is shown in the Base Policy Example section. This base policy is overridden with the policy that you specify in the `aws.networkmanager.CoreNetworkPolicyAttachment` resource.
      • createdAt

        public com.pulumi.core.Output<java.lang.String> createdAt()
        Returns:
        Timestamp when a core network was created.
      • description

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
        Returns:
        Description of the Core Network.
      • edges

        public com.pulumi.core.Output<java.util.List<CoreNetworkEdge>> edges()
        Returns:
        One or more blocks detailing the edges within a core network. Detailed below.
      • globalNetworkId

        public com.pulumi.core.Output<java.lang.String> globalNetworkId()
        Returns:
        ID of the global network that a core network will be a part of. The following arguments are optional:
      • segments

        public com.pulumi.core.Output<java.util.List<CoreNetworkSegment>> segments()
        Returns:
        One or more blocks detailing the segments within a core network. Detailed below.
      • state

        public com.pulumi.core.Output<java.lang.String> state()
        Returns:
        Current state of a core network.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Key-value tags for the Core Network. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
      • tagsAll

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()
        Returns:
        Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
      • get

        public static CoreNetwork get​(java.lang.String name,
                                      com.pulumi.core.Output<java.lang.String> id,
                                      @Nullable
                                      CoreNetworkState state,
                                      @Nullable
                                      com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        state -
        options - Optional settings to control the behavior of the CustomResource.