ContainerV1

Manages a V1 Barbican container resource within OpenStack.

Example Usage

Simple secret

using System.IO;
using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
    public MyStack()
    {
        var certificate1 = new OpenStack.KeyManager.SecretV1("certificate1", new OpenStack.KeyManager.SecretV1Args
        {
            Payload = File.ReadAllText("cert.pem"),
            PayloadContentType = "text/plain",
            SecretType = "certificate",
        });
        var privateKey1 = new OpenStack.KeyManager.SecretV1("privateKey1", new OpenStack.KeyManager.SecretV1Args
        {
            Payload = File.ReadAllText("cert-key.pem"),
            PayloadContentType = "text/plain",
            SecretType = "private",
        });
        var intermediate1 = new OpenStack.KeyManager.SecretV1("intermediate1", new OpenStack.KeyManager.SecretV1Args
        {
            Payload = File.ReadAllText("intermediate-ca.pem"),
            PayloadContentType = "text/plain",
            SecretType = "certificate",
        });
        var tls1 = new OpenStack.KeyManager.ContainerV1("tls1", new OpenStack.KeyManager.ContainerV1Args
        {
            SecretRefs = 
            {
                new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
                {
                    Name = "certificate",
                    SecretRef = certificate1.SecretRef,
                },
                new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
                {
                    Name = "private_key",
                    SecretRef = privateKey1.SecretRef,
                },
                new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
                {
                    Name = "intermediates",
                    SecretRef = intermediate1.SecretRef,
                },
            },
            Type = "certificate",
        });
        var subnet1 = Output.Create(OpenStack.Networking.GetSubnet.InvokeAsync(new OpenStack.Networking.GetSubnetArgs
        {
            Name = "my-subnet",
        }));
        var lb1 = new OpenStack.LoadBalancer.LoadBalancer("lb1", new OpenStack.LoadBalancer.LoadBalancerArgs
        {
            VipSubnetId = subnet1.Apply(subnet1 => subnet1.Id),
        });
        var listener1 = new OpenStack.LoadBalancer.Listener("listener1", new OpenStack.LoadBalancer.ListenerArgs
        {
            DefaultTlsContainerRef = tls1.ContainerRef,
            LoadbalancerId = lb1.Id,
            Protocol = "TERMINATED_HTTPS",
            ProtocolPort = 443,
        });
    }

}
package main

import (
	"io/ioutil"

	"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/keymanager"
	"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/loadbalancer"
	"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/networking"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func readFileOrPanic(path string) pulumi.StringPtrInput {
	data, err := ioutil.ReadFile(path)
	if err != nil {
		panic(err.Error())
	}
	return pulumi.String(string(data))
}

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		certificate1, err := keymanager.NewSecretV1(ctx, "certificate1", &keymanager.SecretV1Args{
			Payload:            readFileOrPanic("cert.pem"),
			PayloadContentType: pulumi.String("text/plain"),
			SecretType:         pulumi.String("certificate"),
		})
		if err != nil {
			return err
		}
		privateKey1, err := keymanager.NewSecretV1(ctx, "privateKey1", &keymanager.SecretV1Args{
			Payload:            readFileOrPanic("cert-key.pem"),
			PayloadContentType: pulumi.String("text/plain"),
			SecretType:         pulumi.String("private"),
		})
		if err != nil {
			return err
		}
		intermediate1, err := keymanager.NewSecretV1(ctx, "intermediate1", &keymanager.SecretV1Args{
			Payload:            readFileOrPanic("intermediate-ca.pem"),
			PayloadContentType: pulumi.String("text/plain"),
			SecretType:         pulumi.String("certificate"),
		})
		if err != nil {
			return err
		}
		tls1, err := keymanager.NewContainerV1(ctx, "tls1", &keymanager.ContainerV1Args{
			SecretRefs: keymanager.ContainerV1SecretRefArray{
				&keymanager.ContainerV1SecretRefArgs{
					Name:      pulumi.String("certificate"),
					SecretRef: certificate1.SecretRef,
				},
				&keymanager.ContainerV1SecretRefArgs{
					Name:      pulumi.String("private_key"),
					SecretRef: privateKey1.SecretRef,
				},
				&keymanager.ContainerV1SecretRefArgs{
					Name:      pulumi.String("intermediates"),
					SecretRef: intermediate1.SecretRef,
				},
			},
			Type: pulumi.String("certificate"),
		})
		if err != nil {
			return err
		}
		subnet1, err := networking.LookupSubnet(ctx, &networking.LookupSubnetArgs{
			Name: pulumi.StringRef("my-subnet"),
		}, nil)
		if err != nil {
			return err
		}
		lb1, err := loadbalancer.NewLoadBalancer(ctx, "lb1", &loadbalancer.LoadBalancerArgs{
			VipSubnetId: pulumi.String(subnet1.Id),
		})
		if err != nil {
			return err
		}
		_, err = loadbalancer.NewListener(ctx, "listener1", &loadbalancer.ListenerArgs{
			DefaultTlsContainerRef: tls1.ContainerRef,
			LoadbalancerId:         lb1.ID(),
			Protocol:               pulumi.String("TERMINATED_HTTPS"),
			ProtocolPort:           pulumi.Int(443),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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")))
            .payloadContentType("text/plain")
            .secretType("certificate")
            .build());

        var privateKey1 = new SecretV1("privateKey1", SecretV1Args.builder()        
            .payload(Files.readString(Paths.get("cert-key.pem")))
            .payloadContentType("text/plain")
            .secretType("private")
            .build());

        var intermediate1 = new SecretV1("intermediate1", SecretV1Args.builder()        
            .payload(Files.readString(Paths.get("intermediate-ca.pem")))
            .payloadContentType("text/plain")
            .secretType("certificate")
            .build());

        var tls1 = new ContainerV1("tls1", ContainerV1Args.builder()        
            .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())
            .type("certificate")
            .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()        
            .defaultTlsContainerRef(tls1.containerRef())
            .loadbalancerId(lb1.id())
            .protocol("TERMINATED_HTTPS")
            .protocolPort(443)
            .build());

    }
}
import pulumi
import pulumi_openstack as openstack

certificate1 = openstack.keymanager.SecretV1("certificate1",
    payload=(lambda path: open(path).read())("cert.pem"),
    payload_content_type="text/plain",
    secret_type="certificate")
private_key1 = openstack.keymanager.SecretV1("privateKey1",
    payload=(lambda path: open(path).read())("cert-key.pem"),
    payload_content_type="text/plain",
    secret_type="private")
intermediate1 = openstack.keymanager.SecretV1("intermediate1",
    payload=(lambda path: open(path).read())("intermediate-ca.pem"),
    payload_content_type="text/plain",
    secret_type="certificate")
tls1 = openstack.keymanager.ContainerV1("tls1",
    secret_refs=[
        openstack.keymanager.ContainerV1SecretRefArgs(
            name="certificate",
            secret_ref=certificate1.secret_ref,
        ),
        openstack.keymanager.ContainerV1SecretRefArgs(
            name="private_key",
            secret_ref=private_key1.secret_ref,
        ),
        openstack.keymanager.ContainerV1SecretRefArgs(
            name="intermediates",
            secret_ref=intermediate1.secret_ref,
        ),
    ],
    type="certificate")
subnet1 = openstack.networking.get_subnet(name="my-subnet")
lb1 = openstack.loadbalancer.LoadBalancer("lb1", vip_subnet_id=subnet1.id)
listener1 = openstack.loadbalancer.Listener("listener1",
    default_tls_container_ref=tls1.container_ref,
    loadbalancer_id=lb1.id,
    protocol="TERMINATED_HTTPS",
    protocol_port=443)
import * as pulumi from "@pulumi/pulumi";
import * as fs from "fs";
import * as openstack from "@pulumi/openstack";

const certificate1 = new openstack.keymanager.SecretV1("certificate_1", {
    payload: fs.readFileSync("cert.pem", "utf-8"),
    payloadContentType: "text/plain",
    secretType: "certificate",
});
const privateKey1 = new openstack.keymanager.SecretV1("private_key_1", {
    payload: fs.readFileSync("cert-key.pem", "utf-8"),
    payloadContentType: "text/plain",
    secretType: "private",
});
const intermediate1 = new openstack.keymanager.SecretV1("intermediate_1", {
    payload: fs.readFileSync("intermediate-ca.pem", "utf-8"),
    payloadContentType: "text/plain",
    secretType: "certificate",
});
const tls1 = new openstack.keymanager.ContainerV1("tls_1", {
    secretRefs: [
        {
            name: "certificate",
            secretRef: certificate1.secretRef,
        },
        {
            name: "private_key",
            secretRef: privateKey1.secretRef,
        },
        {
            name: "intermediates",
            secretRef: intermediate1.secretRef,
        },
    ],
    type: "certificate",
});
const subnet1 = pulumi.output(openstack.networking.getSubnet({
    name: "my-subnet",
}));
const lb1 = new openstack.loadbalancer.LoadBalancer("lb_1", {
    vipSubnetId: subnet1.id,
});
const listener1 = new openstack.loadbalancer.Listener("listener_1", {
    defaultTlsContainerRef: tls1.containerRef,
    loadbalancerId: lb1.id,
    protocol: "TERMINATED_HTTPS",
    protocolPort: 443,
});

Coming soon!

Container with the ACL

using Pulumi;
using OpenStack = Pulumi.OpenStack;

class MyStack : Stack
{
    public MyStack()
    {
        var tls1 = new OpenStack.KeyManager.ContainerV1("tls1", new OpenStack.KeyManager.ContainerV1Args
        {
            Acl = new OpenStack.KeyManager.Inputs.ContainerV1AclArgs
            {
                Read = new OpenStack.KeyManager.Inputs.ContainerV1AclReadArgs
                {
                    ProjectAccess = false,
                    Users = 
                    {
                        "userid1",
                        "userid2",
                    },
                },
            },
            SecretRefs = 
            {
                new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
                {
                    Name = "certificate",
                    SecretRef = openstack_keymanager_secret_v1.Certificate_1.Secret_ref,
                },
                new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
                {
                    Name = "private_key",
                    SecretRef = openstack_keymanager_secret_v1.Private_key_1.Secret_ref,
                },
                new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
                {
                    Name = "intermediates",
                    SecretRef = openstack_keymanager_secret_v1.Intermediate_1.Secret_ref,
                },
            },
            Type = "certificate",
        });
    }

}
package main

import (
	"github.com/pulumi/pulumi-openstack/sdk/v3/go/openstack/keymanager"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := keymanager.NewContainerV1(ctx, "tls1", &keymanager.ContainerV1Args{
			Acl: &keymanager.ContainerV1AclArgs{
				Read: &keymanager.ContainerV1AclReadArgs{
					ProjectAccess: pulumi.Bool(false),
					Users: pulumi.StringArray{
						pulumi.String("userid1"),
						pulumi.String("userid2"),
					},
				},
			},
			SecretRefs: keymanager.ContainerV1SecretRefArray{
				&keymanager.ContainerV1SecretRefArgs{
					Name:      pulumi.String("certificate"),
					SecretRef: pulumi.Any(openstack_keymanager_secret_v1.Certificate_1.Secret_ref),
				},
				&keymanager.ContainerV1SecretRefArgs{
					Name:      pulumi.String("private_key"),
					SecretRef: pulumi.Any(openstack_keymanager_secret_v1.Private_key_1.Secret_ref),
				},
				&keymanager.ContainerV1SecretRefArgs{
					Name:      pulumi.String("intermediates"),
					SecretRef: pulumi.Any(openstack_keymanager_secret_v1.Intermediate_1.Secret_ref),
				},
			},
			Type: pulumi.String("certificate"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
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.ContainerV1AclArgs;
import com.pulumi.openstack.keymanager.inputs.ContainerV1AclReadArgs;
import com.pulumi.openstack.keymanager.inputs.ContainerV1SecretRefArgs;
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()        
            .acl(ContainerV1AclArgs.builder()
                .read(ContainerV1AclReadArgs.builder()
                    .projectAccess(false)
                    .users(                    
                        "userid1",
                        "userid2")
                    .build())
                .build())
            .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())
            .type("certificate")
            .build());

    }
}
import pulumi
import pulumi_openstack as openstack

tls1 = openstack.keymanager.ContainerV1("tls1",
    acl=openstack.keymanager.ContainerV1AclArgs(
        read=openstack.keymanager.ContainerV1AclReadArgs(
            project_access=False,
            users=[
                "userid1",
                "userid2",
            ],
        ),
    ),
    secret_refs=[
        openstack.keymanager.ContainerV1SecretRefArgs(
            name="certificate",
            secret_ref=openstack_keymanager_secret_v1["certificate_1"]["secret_ref"],
        ),
        openstack.keymanager.ContainerV1SecretRefArgs(
            name="private_key",
            secret_ref=openstack_keymanager_secret_v1["private_key_1"]["secret_ref"],
        ),
        openstack.keymanager.ContainerV1SecretRefArgs(
            name="intermediates",
            secret_ref=openstack_keymanager_secret_v1["intermediate_1"]["secret_ref"],
        ),
    ],
    type="certificate")
import * as pulumi from "@pulumi/pulumi";
import * as openstack from "@pulumi/openstack";

const tls1 = new openstack.keymanager.ContainerV1("tls_1", {
    acl: {
        read: {
            projectAccess: false,
            users: [
                "userid1",
                "userid2",
            ],
        },
    },
    secretRefs: [
        {
            name: "certificate",
            secretRef: openstack_keymanager_secret_v1_certificate_1.secretRef,
        },
        {
            name: "private_key",
            secretRef: openstack_keymanager_secret_v1_private_key_1.secretRef,
        },
        {
            name: "intermediates",
            secretRef: openstack_keymanager_secret_v1_intermediate_1.secretRef,
        },
    ],
    type: "certificate",
});
resources:
  tls1:
    type: openstack:keymanager:ContainerV1
    properties:
      acl:
        read:
          projectAccess: false
          users:
            - userid1
            - userid2
      secretRefs:
        - name: certificate
          secretRef: ${openstack_keymanager_secret_v1.certificate_1.secret_ref}
        - name: private_key
          secretRef: ${openstack_keymanager_secret_v1.private_key_1.secret_ref}
        - name: intermediates
          secretRef: ${openstack_keymanager_secret_v1.intermediate_1.secret_ref}
      type: certificate

Create ContainerV1 Resource

new ContainerV1(name: string, args: ContainerV1Args, opts?: CustomResourceOptions);
@overload
def ContainerV1(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                acl: Optional[ContainerV1AclArgs] = None,
                name: Optional[str] = None,
                region: Optional[str] = None,
                secret_refs: Optional[Sequence[ContainerV1SecretRefArgs]] = None,
                type: Optional[str] = None)
@overload
def ContainerV1(resource_name: str,
                args: ContainerV1Args,
                opts: Optional[ResourceOptions] = None)
func NewContainerV1(ctx *Context, name string, args ContainerV1Args, opts ...ResourceOption) (*ContainerV1, error)
public ContainerV1(string name, ContainerV1Args args, CustomResourceOptions? opts = null)
public ContainerV1(String name, ContainerV1Args args)
public ContainerV1(String name, ContainerV1Args args, CustomResourceOptions options)
type: openstack:keymanager:ContainerV1
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args ContainerV1Args
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 ContainerV1Args
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 ContainerV1Args
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args ContainerV1Args
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args ContainerV1Args
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

ContainerV1 Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The ContainerV1 resource accepts the following input properties:

Type string

Used to indicate the type of container. Must be one of generic, rsa or certificate.

Acl Pulumi.OpenStack.KeyManager.Inputs.ContainerV1AclArgs

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.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Region string

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 List<Pulumi.OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs>

A set of dictionaries containing references to secrets. The structure is described below.

Type string

Used to indicate the type of container. Must be one of generic, rsa or certificate.

Acl ContainerV1AclArgs

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.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Region string

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 []ContainerV1SecretRefArgs

A set of dictionaries containing references to secrets. The structure is described below.

type String

Used to indicate the type of container. Must be one of generic, rsa or certificate.

acl ContainerV1AclArgs

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.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region String

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 List<ContainerV1SecretRefArgs>

A set of dictionaries containing references to secrets. The structure is described below.

type string

Used to indicate the type of container. Must be one of generic, rsa or certificate.

acl ContainerV1AclArgs

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.

name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region string

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 ContainerV1SecretRefArgs[]

A set of dictionaries containing references to secrets. The structure is described below.

type str

Used to indicate the type of container. Must be one of generic, rsa or certificate.

acl ContainerV1AclArgs

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.

name str

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region str

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.

secret_refs Sequence[ContainerV1SecretRefArgs]

A set of dictionaries containing references to secrets. The structure is described below.

type String

Used to indicate the type of container. Must be one of generic, rsa or certificate.

acl Property Map

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.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region String

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 List<Property Map>

A set of dictionaries containing references to secrets. The structure is described below.

Outputs

All input properties are implicitly available as output properties. Additionally, the ContainerV1 resource produces the following output properties:

Consumers List<Pulumi.OpenStack.KeyManager.Outputs.ContainerV1Consumer>

The list of the container consumers. The structure is described below.

ContainerRef string

The container reference / where to find the container.

CreatedAt string

The date the container ACL was created.

CreatorId string

The creator of the container.

Id string

The provider-assigned unique ID for this managed resource.

Status string

The status of the container.

UpdatedAt string

The date the container ACL was last updated.

Consumers []ContainerV1Consumer

The list of the container consumers. The structure is described below.

ContainerRef string

The container reference / where to find the container.

CreatedAt string

The date the container ACL was created.

CreatorId string

The creator of the container.

Id string

The provider-assigned unique ID for this managed resource.

Status string

The status of the container.

UpdatedAt string

The date the container ACL was last updated.

consumers List<ContainerV1Consumer>

The list of the container consumers. The structure is described below.

containerRef String

The container reference / where to find the container.

createdAt String

The date the container ACL was created.

creatorId String

The creator of the container.

id String

The provider-assigned unique ID for this managed resource.

status String

The status of the container.

updatedAt String

The date the container ACL was last updated.

consumers ContainerV1Consumer[]

The list of the container consumers. The structure is described below.

containerRef string

The container reference / where to find the container.

createdAt string

The date the container ACL was created.

creatorId string

The creator of the container.

id string

The provider-assigned unique ID for this managed resource.

status string

The status of the container.

updatedAt string

The date the container ACL was last updated.

consumers Sequence[ContainerV1Consumer]

The list of the container consumers. The structure is described below.

container_ref str

The container reference / where to find the container.

created_at str

The date the container ACL was created.

creator_id str

The creator of the container.

id str

The provider-assigned unique ID for this managed resource.

status str

The status of the container.

updated_at str

The date the container ACL was last updated.

consumers List<Property Map>

The list of the container consumers. The structure is described below.

containerRef String

The container reference / where to find the container.

createdAt String

The date the container ACL was created.

creatorId String

The creator of the container.

id String

The provider-assigned unique ID for this managed resource.

status String

The status of the container.

updatedAt String

The date the container ACL was last updated.

Look up Existing ContainerV1 Resource

Get an existing ContainerV1 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?: ContainerV1State, opts?: CustomResourceOptions): ContainerV1
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        acl: Optional[ContainerV1AclArgs] = None,
        consumers: Optional[Sequence[ContainerV1ConsumerArgs]] = None,
        container_ref: Optional[str] = None,
        created_at: Optional[str] = None,
        creator_id: Optional[str] = None,
        name: Optional[str] = None,
        region: Optional[str] = None,
        secret_refs: Optional[Sequence[ContainerV1SecretRefArgs]] = None,
        status: Optional[str] = None,
        type: Optional[str] = None,
        updated_at: Optional[str] = None) -> ContainerV1
func GetContainerV1(ctx *Context, name string, id IDInput, state *ContainerV1State, opts ...ResourceOption) (*ContainerV1, error)
public static ContainerV1 Get(string name, Input<string> id, ContainerV1State? state, CustomResourceOptions? opts = null)
public static ContainerV1 get(String name, Output<String> id, ContainerV1State state, CustomResourceOptions options)
Resource lookup is not supported in YAML
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.
The following state arguments are supported:
Acl Pulumi.OpenStack.KeyManager.Inputs.ContainerV1AclArgs

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 List<Pulumi.OpenStack.KeyManager.Inputs.ContainerV1ConsumerArgs>

The list of the container consumers. The structure is described below.

ContainerRef string

The container reference / where to find the container.

CreatedAt string

The date the container ACL was created.

CreatorId string

The creator of the container.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Region string

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 List<Pulumi.OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs>

A set of dictionaries containing references to secrets. The structure is described below.

Status string

The status of the container.

Type string

Used to indicate the type of container. Must be one of generic, rsa or certificate.

UpdatedAt string

The date the container ACL was last updated.

Acl ContainerV1AclArgs

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 []ContainerV1ConsumerArgs

The list of the container consumers. The structure is described below.

ContainerRef string

The container reference / where to find the container.

CreatedAt string

The date the container ACL was created.

CreatorId string

The creator of the container.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Region string

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 []ContainerV1SecretRefArgs

A set of dictionaries containing references to secrets. The structure is described below.

Status string

The status of the container.

Type string

Used to indicate the type of container. Must be one of generic, rsa or certificate.

UpdatedAt string

The date the container ACL was last updated.

acl ContainerV1AclArgs

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 List<ContainerV1ConsumerArgs>

The list of the container consumers. The structure is described below.

containerRef String

The container reference / where to find the container.

createdAt String

The date the container ACL was created.

creatorId String

The creator of the container.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region String

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 List<ContainerV1SecretRefArgs>

A set of dictionaries containing references to secrets. The structure is described below.

status String

The status of the container.

type String

Used to indicate the type of container. Must be one of generic, rsa or certificate.

updatedAt String

The date the container ACL was last updated.

acl ContainerV1AclArgs

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 ContainerV1ConsumerArgs[]

The list of the container consumers. The structure is described below.

containerRef string

The container reference / where to find the container.

createdAt string

The date the container ACL was created.

creatorId string

The creator of the container.

name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region string

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 ContainerV1SecretRefArgs[]

A set of dictionaries containing references to secrets. The structure is described below.

status string

The status of the container.

type string

Used to indicate the type of container. Must be one of generic, rsa or certificate.

updatedAt string

The date the container ACL was last updated.

acl ContainerV1AclArgs

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 Sequence[ContainerV1ConsumerArgs]

The list of the container consumers. The structure is described below.

container_ref str

The container reference / where to find the container.

created_at str

The date the container ACL was created.

creator_id str

The creator of the container.

name str

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region str

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.

secret_refs Sequence[ContainerV1SecretRefArgs]

A set of dictionaries containing references to secrets. The structure is described below.

status str

The status of the container.

type str

Used to indicate the type of container. Must be one of generic, rsa or certificate.

updated_at str

The date the container ACL was last updated.

acl Property Map

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 List<Property Map>

The list of the container consumers. The structure is described below.

containerRef String

The container reference / where to find the container.

createdAt String

The date the container ACL was created.

creatorId String

The creator of the container.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

region String

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 List<Property Map>

A set of dictionaries containing references to secrets. The structure is described below.

status String

The status of the container.

type String

Used to indicate the type of container. Must be one of generic, rsa or certificate.

updatedAt String

The date the container ACL was last updated.

Supporting Types

ContainerV1Acl

ContainerV1AclRead

CreatedAt string

The date the container ACL was created.

ProjectAccess bool

Whether the container is accessible project wide. Defaults to true.

UpdatedAt string

The date the container ACL was last updated.

Users List<string>

The list of user IDs, which are allowed to access the container, when project_access is set to false.

CreatedAt string

The date the container ACL was created.

ProjectAccess bool

Whether the container is accessible project wide. Defaults to true.

UpdatedAt string

The date the container ACL was last updated.

Users []string

The list of user IDs, which are allowed to access the container, when project_access is set to false.

createdAt String

The date the container ACL was created.

projectAccess Boolean

Whether the container is accessible project wide. Defaults to true.

updatedAt String

The date the container ACL was last updated.

users List<String>

The list of user IDs, which are allowed to access the container, when project_access is set to false.

createdAt string

The date the container ACL was created.

projectAccess boolean

Whether the container is accessible project wide. Defaults to true.

updatedAt string

The date the container ACL was last updated.

users string[]

The list of user IDs, which are allowed to access the container, when project_access is set to false.

created_at str

The date the container ACL was created.

project_access bool

Whether the container is accessible project wide. Defaults to true.

updated_at str

The date the container ACL was last updated.

users Sequence[str]

The list of user IDs, which are allowed to access the container, when project_access is set to false.

createdAt String

The date the container ACL was created.

projectAccess Boolean

Whether the container is accessible project wide. Defaults to true.

updatedAt String

The date the container ACL was last updated.

users List<String>

The list of user IDs, which are allowed to access the container, when project_access is set to false.

ContainerV1Consumer

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Url string

The consumer URL.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Url string

The consumer URL.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

url String

The consumer URL.

name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

url string

The consumer URL.

name str

The name of the secret reference. The reference names must correspond the container type, more details are available here.

url str

The consumer URL.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

url String

The consumer URL.

ContainerV1SecretRef

SecretRef string

The secret reference / where to find the secret, URL.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

SecretRef string

The secret reference / where to find the secret, URL.

Name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

secretRef String

The secret reference / where to find the secret, URL.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

secretRef string

The secret reference / where to find the secret, URL.

name string

The name of the secret reference. The reference names must correspond the container type, more details are available here.

secret_ref str

The secret reference / where to find the secret, URL.

name str

The name of the secret reference. The reference names must correspond the container type, more details are available here.

secretRef String

The secret reference / where to find the secret, URL.

name String

The name of the secret reference. The reference names must correspond the container type, more details are available here.

Import

Containers can be imported using the container id (the last part of the container reference), e.g.

 $ pulumi import openstack:keymanager/containerV1:ContainerV1 container_1 0c6cd26a-c012-4d7b-8034-057c0f1c2953

Package Details

Repository
https://github.com/pulumi/pulumi-openstack
License
Apache-2.0
Notes

This Pulumi package is based on the openstack Terraform Provider.