openstack.keymanager.ContainerV1
Explore with Pulumi AI
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.
import * as pulumi from "@pulumi/pulumi";
import * as openstack from "@pulumi/openstack";
import * as std from "@pulumi/std";
const certificate1 = new openstack.keymanager.SecretV1("certificate_1", {
name: "certificate",
payload: std.file({
input: "cert.pem",
}).then(invoke => invoke.result),
secretType: "certificate",
payloadContentType: "text/plain",
});
const privateKey1 = new openstack.keymanager.SecretV1("private_key_1", {
name: "private_key",
payload: std.file({
input: "cert-key.pem",
}).then(invoke => invoke.result),
secretType: "private",
payloadContentType: "text/plain",
});
const intermediate1 = new openstack.keymanager.SecretV1("intermediate_1", {
name: "intermediate",
payload: std.file({
input: "intermediate-ca.pem",
}).then(invoke => invoke.result),
secretType: "certificate",
payloadContentType: "text/plain",
});
const tls1 = new openstack.keymanager.ContainerV1("tls_1", {
name: "tls",
type: "certificate",
secretRefs: [
{
name: "certificate",
secretRef: certificate1.secretRef,
},
{
name: "private_key",
secretRef: privateKey1.secretRef,
},
{
name: "intermediates",
secretRef: intermediate1.secretRef,
},
],
});
const subnet1 = openstack.networking.getSubnet({
name: "my-subnet",
});
const lb1 = new openstack.LbLoadbalancerV2("lb_1", {
name: "loadbalancer",
vipSubnetId: subnet1.then(subnet1 => subnet1.id),
});
const listener1 = new openstack.loadbalancer.Listener("listener_1", {
name: "https",
protocol: "TERMINATED_HTTPS",
protocolPort: 443,
loadbalancerId: lb1.id,
defaultTlsContainerRef: tls1.containerRef,
});
import pulumi
import pulumi_openstack as openstack
import pulumi_std as std
certificate1 = openstack.keymanager.SecretV1("certificate_1",
name="certificate",
payload=std.file(input="cert.pem").result,
secret_type="certificate",
payload_content_type="text/plain")
private_key1 = openstack.keymanager.SecretV1("private_key_1",
name="private_key",
payload=std.file(input="cert-key.pem").result,
secret_type="private",
payload_content_type="text/plain")
intermediate1 = openstack.keymanager.SecretV1("intermediate_1",
name="intermediate",
payload=std.file(input="intermediate-ca.pem").result,
secret_type="certificate",
payload_content_type="text/plain")
tls1 = openstack.keymanager.ContainerV1("tls_1",
name="tls",
type="certificate",
secret_refs=[
{
"name": "certificate",
"secret_ref": certificate1.secret_ref,
},
{
"name": "private_key",
"secret_ref": private_key1.secret_ref,
},
{
"name": "intermediates",
"secret_ref": intermediate1.secret_ref,
},
])
subnet1 = openstack.networking.get_subnet(name="my-subnet")
lb1 = openstack.LbLoadbalancerV2("lb_1",
name="loadbalancer",
vip_subnet_id=subnet1.id)
listener1 = openstack.loadbalancer.Listener("listener_1",
name="https",
protocol="TERMINATED_HTTPS",
protocol_port=443,
loadbalancer_id=lb1.id,
default_tls_container_ref=tls1.container_ref)
package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v4/go/openstack"
"github.com/pulumi/pulumi-openstack/sdk/v4/go/openstack/keymanager"
"github.com/pulumi/pulumi-openstack/sdk/v4/go/openstack/loadbalancer"
"github.com/pulumi/pulumi-openstack/sdk/v4/go/openstack/networking"
"github.com/pulumi/pulumi-std/sdk/go/std"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
invokeFile, err := std.File(ctx, &std.FileArgs{
Input: "cert.pem",
}, nil)
if err != nil {
return err
}
certificate1, err := keymanager.NewSecretV1(ctx, "certificate_1", &keymanager.SecretV1Args{
Name: pulumi.String("certificate"),
Payload: pulumi.String(invokeFile.Result),
SecretType: pulumi.String("certificate"),
PayloadContentType: pulumi.String("text/plain"),
})
if err != nil {
return err
}
invokeFile1, err := std.File(ctx, &std.FileArgs{
Input: "cert-key.pem",
}, nil)
if err != nil {
return err
}
privateKey1, err := keymanager.NewSecretV1(ctx, "private_key_1", &keymanager.SecretV1Args{
Name: pulumi.String("private_key"),
Payload: pulumi.String(invokeFile1.Result),
SecretType: pulumi.String("private"),
PayloadContentType: pulumi.String("text/plain"),
})
if err != nil {
return err
}
invokeFile2, err := std.File(ctx, &std.FileArgs{
Input: "intermediate-ca.pem",
}, nil)
if err != nil {
return err
}
intermediate1, err := keymanager.NewSecretV1(ctx, "intermediate_1", &keymanager.SecretV1Args{
Name: pulumi.String("intermediate"),
Payload: pulumi.String(invokeFile2.Result),
SecretType: pulumi.String("certificate"),
PayloadContentType: pulumi.String("text/plain"),
})
if err != nil {
return err
}
tls1, err := keymanager.NewContainerV1(ctx, "tls_1", &keymanager.ContainerV1Args{
Name: pulumi.String("tls"),
Type: pulumi.String("certificate"),
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,
},
},
})
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 := openstack.NewLbLoadbalancerV2(ctx, "lb_1", &openstack.LbLoadbalancerV2Args{
Name: pulumi.String("loadbalancer"),
VipSubnetId: pulumi.String(subnet1.Id),
})
if err != nil {
return err
}
_, err = loadbalancer.NewListener(ctx, "listener_1", &loadbalancer.ListenerArgs{
Name: pulumi.String("https"),
Protocol: pulumi.String("TERMINATED_HTTPS"),
ProtocolPort: pulumi.Int(443),
LoadbalancerId: lb1.ID(),
DefaultTlsContainerRef: tls1.ContainerRef,
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using OpenStack = Pulumi.OpenStack;
using Std = Pulumi.Std;
return await Deployment.RunAsync(() =>
{
var certificate1 = new OpenStack.KeyManager.SecretV1("certificate_1", new()
{
Name = "certificate",
Payload = Std.File.Invoke(new()
{
Input = "cert.pem",
}).Apply(invoke => invoke.Result),
SecretType = "certificate",
PayloadContentType = "text/plain",
});
var privateKey1 = new OpenStack.KeyManager.SecretV1("private_key_1", new()
{
Name = "private_key",
Payload = Std.File.Invoke(new()
{
Input = "cert-key.pem",
}).Apply(invoke => invoke.Result),
SecretType = "private",
PayloadContentType = "text/plain",
});
var intermediate1 = new OpenStack.KeyManager.SecretV1("intermediate_1", new()
{
Name = "intermediate",
Payload = Std.File.Invoke(new()
{
Input = "intermediate-ca.pem",
}).Apply(invoke => invoke.Result),
SecretType = "certificate",
PayloadContentType = "text/plain",
});
var tls1 = new OpenStack.KeyManager.ContainerV1("tls_1", new()
{
Name = "tls",
Type = "certificate",
SecretRefs = new[]
{
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,
},
},
});
var subnet1 = OpenStack.Networking.GetSubnet.Invoke(new()
{
Name = "my-subnet",
});
var lb1 = new OpenStack.LbLoadbalancerV2("lb_1", new()
{
Name = "loadbalancer",
VipSubnetId = subnet1.Apply(getSubnetResult => getSubnetResult.Id),
});
var listener1 = new OpenStack.LoadBalancer.Listener("listener_1", new()
{
Name = "https",
Protocol = "TERMINATED_HTTPS",
ProtocolPort = 443,
LoadbalancerId = lb1.Id,
DefaultTlsContainerRef = tls1.ContainerRef,
});
});
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.LbLoadbalancerV2;
import com.pulumi.openstack.LbLoadbalancerV2Args;
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()
.name("certificate")
.payload(StdFunctions.file(FileArgs.builder()
.input("cert.pem")
.build()).result())
.secretType("certificate")
.payloadContentType("text/plain")
.build());
var privateKey1 = new SecretV1("privateKey1", SecretV1Args.builder()
.name("private_key")
.payload(StdFunctions.file(FileArgs.builder()
.input("cert-key.pem")
.build()).result())
.secretType("private")
.payloadContentType("text/plain")
.build());
var intermediate1 = new SecretV1("intermediate1", SecretV1Args.builder()
.name("intermediate")
.payload(StdFunctions.file(FileArgs.builder()
.input("intermediate-ca.pem")
.build()).result())
.secretType("certificate")
.payloadContentType("text/plain")
.build());
var tls1 = new ContainerV1("tls1", ContainerV1Args.builder()
.name("tls")
.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 LbLoadbalancerV2("lb1", LbLoadbalancerV2Args.builder()
.name("loadbalancer")
.vipSubnetId(subnet1.applyValue(getSubnetResult -> getSubnetResult.id()))
.build());
var listener1 = new Listener("listener1", ListenerArgs.builder()
.name("https")
.protocol("TERMINATED_HTTPS")
.protocolPort(443)
.loadbalancerId(lb1.id())
.defaultTlsContainerRef(tls1.containerRef())
.build());
}
}
resources:
certificate1:
type: openstack:keymanager:SecretV1
name: certificate_1
properties:
name: certificate
payload:
fn::invoke:
Function: std:file
Arguments:
input: cert.pem
Return: result
secretType: certificate
payloadContentType: text/plain
privateKey1:
type: openstack:keymanager:SecretV1
name: private_key_1
properties:
name: private_key
payload:
fn::invoke:
Function: std:file
Arguments:
input: cert-key.pem
Return: result
secretType: private
payloadContentType: text/plain
intermediate1:
type: openstack:keymanager:SecretV1
name: intermediate_1
properties:
name: intermediate
payload:
fn::invoke:
Function: std:file
Arguments:
input: intermediate-ca.pem
Return: result
secretType: certificate
payloadContentType: text/plain
tls1:
type: openstack:keymanager:ContainerV1
name: tls_1
properties:
name: tls
type: certificate
secretRefs:
- name: certificate
secretRef: ${certificate1.secretRef}
- name: private_key
secretRef: ${privateKey1.secretRef}
- name: intermediates
secretRef: ${intermediate1.secretRef}
lb1:
type: openstack:LbLoadbalancerV2
name: lb_1
properties:
name: loadbalancer
vipSubnetId: ${subnet1.id}
listener1:
type: openstack:loadbalancer:Listener
name: listener_1
properties:
name: https
protocol: TERMINATED_HTTPS
protocolPort: 443
loadbalancerId: ${lb1.id}
defaultTlsContainerRef: ${tls1.containerRef}
variables:
subnet1:
fn::invoke:
Function: openstack:networking:getSubnet
Arguments:
name: my-subnet
Container with the ACL
Note Only read ACLs are supported
import * as pulumi from "@pulumi/pulumi";
import * as openstack from "@pulumi/openstack";
const tls1 = new openstack.keymanager.ContainerV1("tls_1", {
name: "tls",
type: "certificate",
secretRefs: [
{
name: "certificate",
secretRef: certificate1.secretRef,
},
{
name: "private_key",
secretRef: privateKey1.secretRef,
},
{
name: "intermediates",
secretRef: intermediate1.secretRef,
},
],
acl: {
read: {
projectAccess: false,
users: [
"userid1",
"userid2",
],
},
},
});
import pulumi
import pulumi_openstack as openstack
tls1 = openstack.keymanager.ContainerV1("tls_1",
name="tls",
type="certificate",
secret_refs=[
{
"name": "certificate",
"secret_ref": certificate1["secretRef"],
},
{
"name": "private_key",
"secret_ref": private_key1["secretRef"],
},
{
"name": "intermediates",
"secret_ref": intermediate1["secretRef"],
},
],
acl={
"read": {
"project_access": False,
"users": [
"userid1",
"userid2",
],
},
})
package main
import (
"github.com/pulumi/pulumi-openstack/sdk/v4/go/openstack/keymanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := keymanager.NewContainerV1(ctx, "tls_1", &keymanager.ContainerV1Args{
Name: pulumi.String("tls"),
Type: pulumi.String("certificate"),
SecretRefs: keymanager.ContainerV1SecretRefArray{
&keymanager.ContainerV1SecretRefArgs{
Name: pulumi.String("certificate"),
SecretRef: pulumi.Any(certificate1.SecretRef),
},
&keymanager.ContainerV1SecretRefArgs{
Name: pulumi.String("private_key"),
SecretRef: pulumi.Any(privateKey1.SecretRef),
},
&keymanager.ContainerV1SecretRefArgs{
Name: pulumi.String("intermediates"),
SecretRef: pulumi.Any(intermediate1.SecretRef),
},
},
Acl: &keymanager.ContainerV1AclArgs{
Read: &keymanager.ContainerV1AclReadArgs{
ProjectAccess: pulumi.Bool(false),
Users: pulumi.StringArray{
pulumi.String("userid1"),
pulumi.String("userid2"),
},
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using OpenStack = Pulumi.OpenStack;
return await Deployment.RunAsync(() =>
{
var tls1 = new OpenStack.KeyManager.ContainerV1("tls_1", new()
{
Name = "tls",
Type = "certificate",
SecretRefs = new[]
{
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,
},
},
Acl = new OpenStack.KeyManager.Inputs.ContainerV1AclArgs
{
Read = new OpenStack.KeyManager.Inputs.ContainerV1AclReadArgs
{
ProjectAccess = false,
Users = new[]
{
"userid1",
"userid2",
},
},
},
});
});
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()
.name("tls")
.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())
.acl(ContainerV1AclArgs.builder()
.read(ContainerV1AclReadArgs.builder()
.projectAccess(false)
.users(
"userid1",
"userid2")
.build())
.build())
.build());
}
}
resources:
tls1:
type: openstack:keymanager:ContainerV1
name: tls_1
properties:
name: tls
type: certificate
secretRefs:
- name: certificate
secretRef: ${certificate1.secretRef}
- name: private_key
secretRef: ${privateKey1.secretRef}
- name: intermediates
secretRef: ${intermediate1.secretRef}
acl:
read:
projectAccess: false
users:
- userid1
- userid2
Create ContainerV1 Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new ContainerV1(name: string, args: ContainerV1Args, opts?: CustomResourceOptions);
@overload
def ContainerV1(resource_name: str,
args: ContainerV1Args,
opts: Optional[ResourceOptions] = None)
@overload
def ContainerV1(resource_name: str,
opts: Optional[ResourceOptions] = None,
type: Optional[str] = None,
acl: Optional[ContainerV1AclArgs] = None,
name: Optional[str] = None,
region: Optional[str] = None,
secret_refs: Optional[Sequence[ContainerV1SecretRefArgs]] = 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.
Parameters
- 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.
Constructor example
The following reference example uses placeholder values for all input properties.
var containerV1Resource = new OpenStack.KeyManager.ContainerV1("containerV1Resource", new()
{
Type = "string",
Acl = new OpenStack.KeyManager.Inputs.ContainerV1AclArgs
{
Read = new OpenStack.KeyManager.Inputs.ContainerV1AclReadArgs
{
CreatedAt = "string",
ProjectAccess = false,
UpdatedAt = "string",
Users = new[]
{
"string",
},
},
},
Name = "string",
Region = "string",
SecretRefs = new[]
{
new OpenStack.KeyManager.Inputs.ContainerV1SecretRefArgs
{
SecretRef = "string",
Name = "string",
},
},
});
example, err := keymanager.NewContainerV1(ctx, "containerV1Resource", &keymanager.ContainerV1Args{
Type: pulumi.String("string"),
Acl: &keymanager.ContainerV1AclArgs{
Read: &keymanager.ContainerV1AclReadArgs{
CreatedAt: pulumi.String("string"),
ProjectAccess: pulumi.Bool(false),
UpdatedAt: pulumi.String("string"),
Users: pulumi.StringArray{
pulumi.String("string"),
},
},
},
Name: pulumi.String("string"),
Region: pulumi.String("string"),
SecretRefs: keymanager.ContainerV1SecretRefArray{
&keymanager.ContainerV1SecretRefArgs{
SecretRef: pulumi.String("string"),
Name: pulumi.String("string"),
},
},
})
var containerV1Resource = new ContainerV1("containerV1Resource", ContainerV1Args.builder()
.type("string")
.acl(ContainerV1AclArgs.builder()
.read(ContainerV1AclReadArgs.builder()
.createdAt("string")
.projectAccess(false)
.updatedAt("string")
.users("string")
.build())
.build())
.name("string")
.region("string")
.secretRefs(ContainerV1SecretRefArgs.builder()
.secretRef("string")
.name("string")
.build())
.build());
container_v1_resource = openstack.keymanager.ContainerV1("containerV1Resource",
type="string",
acl=openstack.keymanager.ContainerV1AclArgs(
read=openstack.keymanager.ContainerV1AclReadArgs(
created_at="string",
project_access=False,
updated_at="string",
users=["string"],
),
),
name="string",
region="string",
secret_refs=[openstack.keymanager.ContainerV1SecretRefArgs(
secret_ref="string",
name="string",
)])
const containerV1Resource = new openstack.keymanager.ContainerV1("containerV1Resource", {
type: "string",
acl: {
read: {
createdAt: "string",
projectAccess: false,
updatedAt: "string",
users: ["string"],
},
},
name: "string",
region: "string",
secretRefs: [{
secretRef: "string",
name: "string",
}],
});
type: openstack:keymanager:ContainerV1
properties:
acl:
read:
createdAt: string
projectAccess: false
updatedAt: string
users:
- string
name: string
region: string
secretRefs:
- name: string
secretRef: string
type: string
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
orcertificate
. - Acl
Pulumi.
Open Stack. Key Manager. Inputs. Container V1Acl - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - Name string
- Human-readable name for the Container. Does not have to be unique.
- 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. - Secret
Refs List<Pulumi.Open Stack. Key Manager. Inputs. Container V1Secret Ref> - 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
orcertificate
. - Acl
Container
V1Acl Args - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - Name string
- Human-readable name for the Container. Does not have to be unique.
- 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. - Secret
Refs []ContainerV1Secret Ref Args - 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
orcertificate
. - acl
Container
V1Acl - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - name String
- Human-readable name for the Container. Does not have to be unique.
- 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. - secret
Refs List<ContainerV1Secret Ref> - 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
orcertificate
. - acl
Container
V1Acl - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - name string
- Human-readable name for the Container. Does not have to be unique.
- 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. - secret
Refs ContainerV1Secret Ref[] - 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
orcertificate
. - acl
Container
V1Acl Args - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - name str
- Human-readable name for the Container. Does not have to be unique.
- 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[ContainerV1Secret Ref Args] - 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
orcertificate
. - 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. Theread
structure is described below. - name String
- Human-readable name for the Container. Does not have to be unique.
- 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. - secret
Refs 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.
Open Stack. Key Manager. Outputs. Container V1Consumer> - The list of the container consumers. The structure is described below.
- Container
Ref string - The container reference / where to find the container.
- Created
At string - The date the container was created.
- Creator
Id string - The creator of the container.
- Id string
- The provider-assigned unique ID for this managed resource.
- Status string
- The status of the container.
- Updated
At string - The date the container was last updated.
- Consumers
[]Container
V1Consumer - The list of the container consumers. The structure is described below.
- Container
Ref string - The container reference / where to find the container.
- Created
At string - The date the container was created.
- Creator
Id string - The creator of the container.
- Id string
- The provider-assigned unique ID for this managed resource.
- Status string
- The status of the container.
- Updated
At string - The date the container was last updated.
- consumers
List<Container
V1Consumer> - The list of the container consumers. The structure is described below.
- container
Ref String - The container reference / where to find the container.
- created
At String - The date the container was created.
- creator
Id String - The creator of the container.
- id String
- The provider-assigned unique ID for this managed resource.
- status String
- The status of the container.
- updated
At String - The date the container was last updated.
- consumers
Container
V1Consumer[] - The list of the container consumers. The structure is described below.
- container
Ref string - The container reference / where to find the container.
- created
At string - The date the container was created.
- creator
Id string - The creator of the container.
- id string
- The provider-assigned unique ID for this managed resource.
- status string
- The status of the container.
- updated
At string - The date the container was last updated.
- consumers
Sequence[Container
V1Consumer] - 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 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 was last updated.
- consumers List<Property Map>
- The list of the container consumers. The structure is described below.
- container
Ref String - The container reference / where to find the container.
- created
At String - The date the container was created.
- creator
Id String - The creator of the container.
- id String
- The provider-assigned unique ID for this managed resource.
- status String
- The status of the container.
- updated
At String - The date the container 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.
- Acl
Pulumi.
Open Stack. Key Manager. Inputs. Container V1Acl - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - Consumers
List<Pulumi.
Open Stack. Key Manager. Inputs. Container V1Consumer> - The list of the container consumers. The structure is described below.
- Container
Ref string - The container reference / where to find the container.
- Created
At string - The date the container was created.
- Creator
Id string - The creator of the container.
- Name string
- Human-readable name for the Container. Does not have to be unique.
- 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. - Secret
Refs List<Pulumi.Open Stack. Key Manager. Inputs. Container V1Secret Ref> - 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
orcertificate
. - Updated
At string - The date the container was last updated.
- Acl
Container
V1Acl Args - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - Consumers
[]Container
V1Consumer Args - The list of the container consumers. The structure is described below.
- Container
Ref string - The container reference / where to find the container.
- Created
At string - The date the container was created.
- Creator
Id string - The creator of the container.
- Name string
- Human-readable name for the Container. Does not have to be unique.
- 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. - Secret
Refs []ContainerV1Secret Ref Args - 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
orcertificate
. - Updated
At string - The date the container was last updated.
- acl
Container
V1Acl - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - consumers
List<Container
V1Consumer> - The list of the container consumers. The structure is described below.
- container
Ref String - The container reference / where to find the container.
- created
At String - The date the container was created.
- creator
Id String - The creator of the container.
- name String
- Human-readable name for the Container. Does not have to be unique.
- 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. - secret
Refs List<ContainerV1Secret Ref> - 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
orcertificate
. - updated
At String - The date the container was last updated.
- acl
Container
V1Acl - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - consumers
Container
V1Consumer[] - The list of the container consumers. The structure is described below.
- container
Ref string - The container reference / where to find the container.
- created
At string - The date the container was created.
- creator
Id string - The creator of the container.
- name string
- Human-readable name for the Container. Does not have to be unique.
- 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. - secret
Refs ContainerV1Secret Ref[] - 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
orcertificate
. - updated
At string - The date the container was last updated.
- acl
Container
V1Acl Args - Allows to control an access to a container. Currently only
the
read
operation is supported. If not specified, the container is accessible project wide. Theread
structure is described below. - consumers
Sequence[Container
V1Consumer Args] - 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 was created.
- creator_
id str - The creator of the container.
- name str
- Human-readable name for the Container. Does not have to be unique.
- 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[ContainerV1Secret Ref Args] - 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
orcertificate
. - updated_
at str - The date the container 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. Theread
structure is described below. - consumers List<Property Map>
- The list of the container consumers. The structure is described below.
- container
Ref String - The container reference / where to find the container.
- created
At String - The date the container was created.
- creator
Id String - The creator of the container.
- name String
- Human-readable name for the Container. Does not have to be unique.
- 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. - secret
Refs 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
orcertificate
. - updated
At String - The date the container was last updated.
Supporting Types
ContainerV1Acl, ContainerV1AclArgs
ContainerV1AclRead, ContainerV1AclReadArgs
- Created
At string - The date the container was created.
- Project
Access bool - Whether the container is accessible project wide.
Defaults to
true
. - Updated
At string - The date the container was last updated.
- Users List<string>
- The list of user IDs, which are allowed to access the
container, when
project_access
is set tofalse
.
- Created
At string - The date the container was created.
- Project
Access bool - Whether the container is accessible project wide.
Defaults to
true
. - Updated
At string - The date the container was last updated.
- Users []string
- The list of user IDs, which are allowed to access the
container, when
project_access
is set tofalse
.
- created
At String - The date the container was created.
- project
Access Boolean - Whether the container is accessible project wide.
Defaults to
true
. - updated
At String - The date the container was last updated.
- users List<String>
- The list of user IDs, which are allowed to access the
container, when
project_access
is set tofalse
.
- created
At string - The date the container was created.
- project
Access boolean - Whether the container is accessible project wide.
Defaults to
true
. - updated
At string - The date the container was last updated.
- users string[]
- The list of user IDs, which are allowed to access the
container, when
project_access
is set tofalse
.
- created_
at str - The date the container was created.
- project_
access bool - Whether the container is accessible project wide.
Defaults to
true
. - updated_
at str - The date the container was last updated.
- users Sequence[str]
- The list of user IDs, which are allowed to access the
container, when
project_access
is set tofalse
.
- created
At String - The date the container was created.
- project
Access Boolean - Whether the container is accessible project wide.
Defaults to
true
. - updated
At String - The date the container was last updated.
- users List<String>
- The list of user IDs, which are allowed to access the
container, when
project_access
is set tofalse
.
ContainerV1Consumer, ContainerV1ConsumerArgs
ContainerV1SecretRef, ContainerV1SecretRefArgs
- 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.
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
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- OpenStack pulumi/pulumi-openstack
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
openstack
Terraform Provider.