Class ContainerV1


  • public class ContainerV1
    extends com.pulumi.resources.CustomResource
    Manages a V1 Barbican container resource within OpenStack. ## Example Usage ### Simple secret The container with the TLS certificates, which can be used by the loadbalancer HTTPS listener. ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.openstack.keymanager.SecretV1; import com.pulumi.openstack.keymanager.SecretV1Args; import com.pulumi.openstack.keymanager.ContainerV1; import com.pulumi.openstack.keymanager.ContainerV1Args; import com.pulumi.openstack.keymanager.inputs.ContainerV1SecretRefArgs; import com.pulumi.openstack.networking.NetworkingFunctions; import com.pulumi.openstack.networking.inputs.GetSubnetArgs; import com.pulumi.openstack.loadbalancer.LoadBalancer; import com.pulumi.openstack.loadbalancer.LoadBalancerArgs; import com.pulumi.openstack.loadbalancer.Listener; import com.pulumi.openstack.loadbalancer.ListenerArgs; 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) { var certificate1 = new SecretV1("certificate1", SecretV1Args.builder() .payload(Files.readString(Paths.get("cert.pem"))) .secretType("certificate") .payloadContentType("text/plain") .build()); var privateKey1 = new SecretV1("privateKey1", SecretV1Args.builder() .payload(Files.readString(Paths.get("cert-key.pem"))) .secretType("private") .payloadContentType("text/plain") .build()); var intermediate1 = new SecretV1("intermediate1", SecretV1Args.builder() .payload(Files.readString(Paths.get("intermediate-ca.pem"))) .secretType("certificate") .payloadContentType("text/plain") .build()); var tls1 = new ContainerV1("tls1", ContainerV1Args.builder() .type("certificate") .secretRefs( ContainerV1SecretRefArgs.builder() .name("certificate") .secretRef(certificate1.secretRef()) .build(), ContainerV1SecretRefArgs.builder() .name("private_key") .secretRef(privateKey1.secretRef()) .build(), ContainerV1SecretRefArgs.builder() .name("intermediates") .secretRef(intermediate1.secretRef()) .build()) .build()); final var subnet1 = NetworkingFunctions.getSubnet(GetSubnetArgs.builder() .name("my-subnet") .build()); var lb1 = new LoadBalancer("lb1", LoadBalancerArgs.builder() .vipSubnetId(subnet1.applyValue(getSubnetResult -> getSubnetResult.id())) .build()); var listener1 = new Listener("listener1", ListenerArgs.builder() .protocol("TERMINATED_HTTPS") .protocolPort(443) .loadbalancerId(lb1.id()) .defaultTlsContainerRef(tls1.containerRef()) .build()); } } ``` ### Container with the ACL > **Note** Only read ACLs are supported ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.openstack.keymanager.ContainerV1; import com.pulumi.openstack.keymanager.ContainerV1Args; import com.pulumi.openstack.keymanager.inputs.ContainerV1SecretRefArgs; import com.pulumi.openstack.keymanager.inputs.ContainerV1AclArgs; import com.pulumi.openstack.keymanager.inputs.ContainerV1AclReadArgs; 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) { var tls1 = new ContainerV1("tls1", ContainerV1Args.builder() .type("certificate") .secretRefs( ContainerV1SecretRefArgs.builder() .name("certificate") .secretRef(openstack_keymanager_secret_v1.certificate_1().secret_ref()) .build(), ContainerV1SecretRefArgs.builder() .name("private_key") .secretRef(openstack_keymanager_secret_v1.private_key_1().secret_ref()) .build(), ContainerV1SecretRefArgs.builder() .name("intermediates") .secretRef(openstack_keymanager_secret_v1.intermediate_1().secret_ref()) .build()) .acl(ContainerV1AclArgs.builder() .read(ContainerV1AclReadArgs.builder() .projectAccess(false) .users( "userid1", "userid2") .build()) .build()) .build()); } } ``` ## Import Containers can be imported using the container id (the last part of the container reference), e.g.: ```sh $ pulumi import openstack:keymanager/containerV1:ContainerV1 container_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953 ```
    • 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<ContainerV1Acl> acl()  
      com.pulumi.core.Output<java.util.List<ContainerV1Consumer>> consumers()  
      com.pulumi.core.Output<java.lang.String> containerRef()  
      com.pulumi.core.Output<java.lang.String> createdAt()  
      com.pulumi.core.Output<java.lang.String> creatorId()  
      static ContainerV1 get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, ContainerV1State 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> name()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.util.Optional<java.util.List<ContainerV1SecretRef>>> secretRefs()  
      com.pulumi.core.Output<java.lang.String> status()  
      com.pulumi.core.Output<java.lang.String> type()  
      com.pulumi.core.Output<java.lang.String> updatedAt()  
      • 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

      • ContainerV1

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

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

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

      • acl

        public com.pulumi.core.Output<ContainerV1Acl> acl()
        Returns:
        Allows to control an access to a container. Currently only the `read` operation is supported. If not specified, the container is accessible project wide. The `read` structure is described below.
      • consumers

        public com.pulumi.core.Output<java.util.List<ContainerV1Consumer>> consumers()
        Returns:
        The list of the container consumers. The structure is described below.
      • containerRef

        public com.pulumi.core.Output<java.lang.String> containerRef()
        Returns:
        The container reference / where to find the container.
      • createdAt

        public com.pulumi.core.Output<java.lang.String> createdAt()
        Returns:
        The date the container ACL was created.
      • creatorId

        public com.pulumi.core.Output<java.lang.String> creatorId()
        Returns:
        The creator of the container.
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        Human-readable name for the Container. Does not have to be unique.
      • region

        public com.pulumi.core.Output<java.lang.String> region()
        Returns:
        The region in which to obtain the V1 KeyManager client. A KeyManager client is needed to create a container. If omitted, the `region` argument of the provider is used. Changing this creates a new V1 container.
      • secretRefs

        public com.pulumi.core.Output<java.util.Optional<java.util.List<ContainerV1SecretRef>>> secretRefs()
        Returns:
        A set of dictionaries containing references to secrets. The structure is described below.
      • status

        public com.pulumi.core.Output<java.lang.String> status()
        Returns:
        The status of the container.
      • type

        public com.pulumi.core.Output<java.lang.String> type()
        Returns:
        Used to indicate the type of container. Must be one of `generic`, `rsa` or `certificate`.
      • updatedAt

        public com.pulumi.core.Output<java.lang.String> updatedAt()
        Returns:
        The date the container ACL was last updated.
      • get

        public static ContainerV1 get​(java.lang.String name,
                                      com.pulumi.core.Output<java.lang.String> id,
                                      @Nullable
                                      ContainerV1State 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.