Class VpcEndpointService


  • public class VpcEndpointService
    extends com.pulumi.resources.CustomResource
    Provides a VPC Endpoint Service resource. Service consumers can create an _Interface_ VPC Endpoint to connect to the service. > **NOTE on VPC Endpoint Services and VPC Endpoint Service Allowed Principals:** This provider provides both a standalone VPC Endpoint Service Allowed Principal resource and a VPC Endpoint Service resource with an `allowedPrincipals` attribute. Do not use the same principal ARN in both a VPC Endpoint Service resource and a VPC Endpoint Service Allowed Principal resource. Doing so will cause a conflict and will overwrite the association. ## Example Usage ### Network Load Balancers
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.ec2.VpcEndpointService;
     import com.pulumi.aws.ec2.VpcEndpointServiceArgs;
     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 VpcEndpointService("example", VpcEndpointServiceArgs.builder()
                 .acceptanceRequired(false)
                 .networkLoadBalancerArns(exampleAwsLb.arn())
                 .build());
     
         }
     }
     
     
    ### Gateway Load Balancers
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.ec2.VpcEndpointService;
     import com.pulumi.aws.ec2.VpcEndpointServiceArgs;
     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 VpcEndpointService("example", VpcEndpointServiceArgs.builder()
                 .acceptanceRequired(false)
                 .gatewayLoadBalancerArns(exampleAwsLb.arn())
                 .build());
     
         }
     }
     
     
    ## Import Using `pulumi import`, import VPC Endpoint Services using the VPC endpoint service `id`. For example: ```sh $ pulumi import aws:ec2/vpcEndpointService:VpcEndpointService foo vpce-svc-0f97a19d3fa8220bc ```
    • 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.Boolean> acceptanceRequired()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> allowedPrincipals()  
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> availabilityZones()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> baseEndpointDnsNames()  
      com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> gatewayLoadBalancerArns()  
      static VpcEndpointService get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, VpcEndpointServiceState 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.Boolean> managesVpcEndpoints()  
      com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> networkLoadBalancerArns()  
      com.pulumi.core.Output<java.lang.String> privateDnsName()  
      com.pulumi.core.Output<java.util.List<VpcEndpointServicePrivateDnsNameConfiguration>> privateDnsNameConfigurations()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.lang.String> serviceName()  
      com.pulumi.core.Output<java.lang.String> serviceType()  
      com.pulumi.core.Output<java.lang.String> state()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> supportedIpAddressTypes()  
      com.pulumi.core.Output<java.util.List<java.lang.String>> supportedRegions()  
      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

      • VpcEndpointService

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

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

        public VpcEndpointService​(java.lang.String name,
                                  VpcEndpointServiceArgs 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

      • acceptanceRequired

        public com.pulumi.core.Output<java.lang.Boolean> acceptanceRequired()
        Returns:
        Whether or not VPC endpoint connection requests to the service must be accepted by the service owner - `true` or `false`.
      • allowedPrincipals

        public com.pulumi.core.Output<java.util.List<java.lang.String>> allowedPrincipals()
        Returns:
        ARNs of one or more principals allowed to discover the endpoint service.
      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
        Returns:
        ARN of the VPC endpoint service.
      • availabilityZones

        public com.pulumi.core.Output<java.util.List<java.lang.String>> availabilityZones()
        Returns:
        Set of Availability Zones in which the service is available.
      • baseEndpointDnsNames

        public com.pulumi.core.Output<java.util.List<java.lang.String>> baseEndpointDnsNames()
        Returns:
        Set of DNS names for the service.
      • gatewayLoadBalancerArns

        public com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> gatewayLoadBalancerArns()
        Returns:
        ARNs of one or more Gateway Load Balancers for the endpoint service.
      • managesVpcEndpoints

        public com.pulumi.core.Output<java.lang.Boolean> managesVpcEndpoints()
        Returns:
        Whether or not the service manages its VPC endpoints - `true` or `false`.
      • networkLoadBalancerArns

        public com.pulumi.core.Output<java.util.Optional<java.util.List<java.lang.String>>> networkLoadBalancerArns()
        Returns:
        ARNs of one or more Network Load Balancers for the endpoint service.
      • privateDnsName

        public com.pulumi.core.Output<java.lang.String> privateDnsName()
        Returns:
        Private DNS name for the service.
      • privateDnsNameConfigurations

        public com.pulumi.core.Output<java.util.List<VpcEndpointServicePrivateDnsNameConfiguration>> privateDnsNameConfigurations()
        Returns:
        List of objects containing information about the endpoint service private DNS name configuration.
      • region

        public com.pulumi.core.Output<java.lang.String> region()
        Returns:
        Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
      • serviceName

        public com.pulumi.core.Output<java.lang.String> serviceName()
        Returns:
        Service name.
      • serviceType

        public com.pulumi.core.Output<java.lang.String> serviceType()
        Returns:
        Service type, `Gateway` or `Interface`.
      • state

        public com.pulumi.core.Output<java.lang.String> state()
        Returns:
        State of the VPC endpoint service.
      • supportedIpAddressTypes

        public com.pulumi.core.Output<java.util.List<java.lang.String>> supportedIpAddressTypes()
        Returns:
        Supported IP address types. The possible values are `ipv4` and `ipv6`.
      • supportedRegions

        public com.pulumi.core.Output<java.util.List<java.lang.String>> supportedRegions()
        Returns:
        Set of regions from which service consumers can access the service.
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Map of tags to assign to the resource. 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 VpcEndpointService get​(java.lang.String name,
                                             com.pulumi.core.Output<java.lang.String> id,
                                             @Nullable
                                             VpcEndpointServiceState 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.