Namespace Pulumi.OpenStack.ObjectStorage
Classes
Container
Manages a V1 container resource within OpenStack.
Example Usage
Basic Container
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
ContentType = "application/json",
Metadata =
{
{ "test", "true" },
},
Region = "RegionOne",
Versioning = new OpenStack.ObjectStorage.Inputs.ContainerVersioningArgs
{
Location = "tf-test-container-versions",
Type = "versions",
},
});
}
}
Global Read Access
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
ContainerRead = ".r:*",
Region = "RegionOne",
});
}
}
Global Read and List Access
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
ContainerRead = ".r:*,.rlistings",
Region = "RegionOne",
});
}
}
Write-Only Access for a User
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var current = Output.Create(OpenStack.Identity.GetAuthScope.InvokeAsync(new OpenStack.Identity.GetAuthScopeArgs
{
Name = "current",
}));
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
ContainerRead = $".r:-{@var.Username}",
ContainerWrite = current.Apply(current => $"{current.ProjectId}:{@var.Username}"),
Region = "RegionOne",
});
}
}
ContainerArgs
ContainerObject
Manages a V1 container object resource within OpenStack.
Example Usage
Example with simple content
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
ContentType = "application/json",
Metadata =
{
{ "test", "true" },
},
Region = "RegionOne",
});
var doc1 = new OpenStack.ObjectStorage.ContainerObject("doc1", new OpenStack.ObjectStorage.ContainerObjectArgs
{
ContainerName = container1.Name,
Content = @" {
""foo"" : ""bar""
}
",
ContentType = "application/json",
Metadata =
{
{ "test", "true" },
},
Region = "RegionOne",
});
}
}
Example with content from file
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
ContentType = "application/json",
Metadata =
{
{ "test", "true" },
},
Region = "RegionOne",
});
var doc1 = new OpenStack.ObjectStorage.ContainerObject("doc1", new OpenStack.ObjectStorage.ContainerObjectArgs
{
ContainerName = container1.Name,
ContentType = "application/json",
Metadata =
{
{ "test", "true" },
},
Region = "RegionOne",
Source = "./default.json",
});
}
}
ContainerObjectArgs
ContainerObjectState
ContainerState
TempUrl
Use this resource to generate an OpenStack Object Storage temporary URL.
The temporary URL will be valid for as long as TTL is set to (in seconds).
Once the URL has expired, it will no longer be valid, but the resource
will remain in place. If you wish to automatically regenerate a URL, set
the regenerate argument to true. This will create a new resource with
a new ID and URL.
Example Usage
using Pulumi;
using OpenStack = Pulumi.OpenStack;
class MyStack : Stack
{
public MyStack()
{
var container1 = new OpenStack.ObjectStorage.Container("container1", new OpenStack.ObjectStorage.ContainerArgs
{
Metadata =
{
{ "Temp-URL-Key", "testkey" },
},
});
var object1 = new OpenStack.ObjectStorage.ContainerObject("object1", new OpenStack.ObjectStorage.ContainerObjectArgs
{
ContainerName = container1.Name,
Content = "Hello, world!",
});
var objTempurl = new OpenStack.ObjectStorage.TempUrl("objTempurl", new OpenStack.ObjectStorage.TempUrlArgs
{
Container = container1.Name,
Method = "post",
Object = object1.Name,
Ttl = 20,
});
}
}