DigitalOcean v4.57.0 published on Thursday, Feb 12, 2026 by Pulumi
DigitalOcean v4.57.0 published on Thursday, Feb 12, 2026 by Pulumi
Example Usage
Get the volume:
import * as pulumi from "@pulumi/pulumi";
import * as digitalocean from "@pulumi/digitalocean";
const example = digitalocean.getVolume({
name: "app-data",
region: "nyc3",
});
import pulumi
import pulumi_digitalocean as digitalocean
example = digitalocean.get_volume(name="app-data",
region="nyc3")
package main
import (
"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := digitalocean.LookupVolume(ctx, &digitalocean.LookupVolumeArgs{
Name: "app-data",
Region: pulumi.StringRef("nyc3"),
}, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using DigitalOcean = Pulumi.DigitalOcean;
return await Deployment.RunAsync(() =>
{
var example = DigitalOcean.GetVolume.Invoke(new()
{
Name = "app-data",
Region = "nyc3",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.digitalocean.DigitaloceanFunctions;
import com.pulumi.digitalocean.inputs.GetVolumeArgs;
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) {
final var example = DigitaloceanFunctions.getVolume(GetVolumeArgs.builder()
.name("app-data")
.region("nyc3")
.build());
}
}
variables:
example:
fn::invoke:
function: digitalocean:getVolume
arguments:
name: app-data
region: nyc3
Reuse the data about a volume to attach it to a Droplet:
import * as pulumi from "@pulumi/pulumi";
import * as digitalocean from "@pulumi/digitalocean";
const example = digitalocean.getVolume({
name: "app-data",
region: "nyc3",
});
const exampleDroplet = new digitalocean.Droplet("example", {
name: "foo",
size: digitalocean.DropletSlug.DropletS1VCPU1GB,
image: "ubuntu-18-04-x64",
region: digitalocean.Region.NYC3,
});
const foobar = new digitalocean.VolumeAttachment("foobar", {
dropletId: exampleDroplet.id,
volumeId: example.then(example => example.id),
});
import pulumi
import pulumi_digitalocean as digitalocean
example = digitalocean.get_volume(name="app-data",
region="nyc3")
example_droplet = digitalocean.Droplet("example",
name="foo",
size=digitalocean.DropletSlug.DROPLET_S1_VCPU1_GB,
image="ubuntu-18-04-x64",
region=digitalocean.Region.NYC3)
foobar = digitalocean.VolumeAttachment("foobar",
droplet_id=example_droplet.id,
volume_id=example.id)
package main
import (
"github.com/pulumi/pulumi-digitalocean/sdk/v4/go/digitalocean"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := digitalocean.LookupVolume(ctx, &digitalocean.LookupVolumeArgs{
Name: "app-data",
Region: pulumi.StringRef("nyc3"),
}, nil)
if err != nil {
return err
}
exampleDroplet, err := digitalocean.NewDroplet(ctx, "example", &digitalocean.DropletArgs{
Name: pulumi.String("foo"),
Size: pulumi.String(digitalocean.DropletSlugDropletS1VCPU1GB),
Image: pulumi.String("ubuntu-18-04-x64"),
Region: pulumi.String(digitalocean.RegionNYC3),
})
if err != nil {
return err
}
_, err = digitalocean.NewVolumeAttachment(ctx, "foobar", &digitalocean.VolumeAttachmentArgs{
DropletId: exampleDroplet.ID(),
VolumeId: pulumi.String(example.Id),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using DigitalOcean = Pulumi.DigitalOcean;
return await Deployment.RunAsync(() =>
{
var example = DigitalOcean.GetVolume.Invoke(new()
{
Name = "app-data",
Region = "nyc3",
});
var exampleDroplet = new DigitalOcean.Droplet("example", new()
{
Name = "foo",
Size = DigitalOcean.DropletSlug.DropletS1VCPU1GB,
Image = "ubuntu-18-04-x64",
Region = DigitalOcean.Region.NYC3,
});
var foobar = new DigitalOcean.VolumeAttachment("foobar", new()
{
DropletId = exampleDroplet.Id,
VolumeId = example.Apply(getVolumeResult => getVolumeResult.Id),
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.digitalocean.DigitaloceanFunctions;
import com.pulumi.digitalocean.inputs.GetVolumeArgs;
import com.pulumi.digitalocean.Droplet;
import com.pulumi.digitalocean.DropletArgs;
import com.pulumi.digitalocean.VolumeAttachment;
import com.pulumi.digitalocean.VolumeAttachmentArgs;
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) {
final var example = DigitaloceanFunctions.getVolume(GetVolumeArgs.builder()
.name("app-data")
.region("nyc3")
.build());
var exampleDroplet = new Droplet("exampleDroplet", DropletArgs.builder()
.name("foo")
.size("s-1vcpu-1gb")
.image("ubuntu-18-04-x64")
.region("nyc3")
.build());
var foobar = new VolumeAttachment("foobar", VolumeAttachmentArgs.builder()
.dropletId(exampleDroplet.id())
.volumeId(example.id())
.build());
}
}
resources:
exampleDroplet:
type: digitalocean:Droplet
name: example
properties:
name: foo
size: s-1vcpu-1gb
image: ubuntu-18-04-x64
region: nyc3
foobar:
type: digitalocean:VolumeAttachment
properties:
dropletId: ${exampleDroplet.id}
volumeId: ${example.id}
variables:
example:
fn::invoke:
function: digitalocean:getVolume
arguments:
name: app-data
region: nyc3
Using getVolume
Two invocation forms are available. The direct form accepts plain arguments and either blocks until the result value is available, or returns a Promise-wrapped result. The output form accepts Input-wrapped arguments and returns an Output-wrapped result.
function getVolume(args: GetVolumeArgs, opts?: InvokeOptions): Promise<GetVolumeResult>
function getVolumeOutput(args: GetVolumeOutputArgs, opts?: InvokeOptions): Output<GetVolumeResult>def get_volume(description: Optional[str] = None,
name: Optional[str] = None,
region: Optional[str] = None,
opts: Optional[InvokeOptions] = None) -> GetVolumeResult
def get_volume_output(description: Optional[pulumi.Input[str]] = None,
name: Optional[pulumi.Input[str]] = None,
region: Optional[pulumi.Input[str]] = None,
opts: Optional[InvokeOptions] = None) -> Output[GetVolumeResult]func LookupVolume(ctx *Context, args *LookupVolumeArgs, opts ...InvokeOption) (*LookupVolumeResult, error)
func LookupVolumeOutput(ctx *Context, args *LookupVolumeOutputArgs, opts ...InvokeOption) LookupVolumeResultOutput> Note: This function is named LookupVolume in the Go SDK.
public static class GetVolume
{
public static Task<GetVolumeResult> InvokeAsync(GetVolumeArgs args, InvokeOptions? opts = null)
public static Output<GetVolumeResult> Invoke(GetVolumeInvokeArgs args, InvokeOptions? opts = null)
}public static CompletableFuture<GetVolumeResult> getVolume(GetVolumeArgs args, InvokeOptions options)
public static Output<GetVolumeResult> getVolume(GetVolumeArgs args, InvokeOptions options)
fn::invoke:
function: digitalocean:index/getVolume:getVolume
arguments:
# arguments dictionaryThe following arguments are supported:
- Name string
- The name of block storage volume.
- Description string
- Text describing a block storage volume.
- Region string
- The region the block storage volume is provisioned in.
- Name string
- The name of block storage volume.
- Description string
- Text describing a block storage volume.
- Region string
- The region the block storage volume is provisioned in.
- name String
- The name of block storage volume.
- description String
- Text describing a block storage volume.
- region String
- The region the block storage volume is provisioned in.
- name string
- The name of block storage volume.
- description string
- Text describing a block storage volume.
- region string
- The region the block storage volume is provisioned in.
- name str
- The name of block storage volume.
- description str
- Text describing a block storage volume.
- region str
- The region the block storage volume is provisioned in.
- name String
- The name of block storage volume.
- description String
- Text describing a block storage volume.
- region String
- The region the block storage volume is provisioned in.
getVolume Result
The following output properties are available:
- Droplet
Ids List<int> - A list of associated Droplet ids.
- Filesystem
Label string - Filesystem label currently in-use on the block storage volume.
- Filesystem
Type string - Filesystem type currently in-use on the block storage volume.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Size int
- The size of the block storage volume in GiB.
- List<string>
- A list of the tags associated to the Volume.
- Urn string
- The uniform resource name for the storage volume.
- Description string
- Text describing a block storage volume.
- Region string
- Droplet
Ids []int - A list of associated Droplet ids.
- Filesystem
Label string - Filesystem label currently in-use on the block storage volume.
- Filesystem
Type string - Filesystem type currently in-use on the block storage volume.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- Size int
- The size of the block storage volume in GiB.
- []string
- A list of the tags associated to the Volume.
- Urn string
- The uniform resource name for the storage volume.
- Description string
- Text describing a block storage volume.
- Region string
- droplet
Ids List<Integer> - A list of associated Droplet ids.
- filesystem
Label String - Filesystem label currently in-use on the block storage volume.
- filesystem
Type String - Filesystem type currently in-use on the block storage volume.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- size Integer
- The size of the block storage volume in GiB.
- List<String>
- A list of the tags associated to the Volume.
- urn String
- The uniform resource name for the storage volume.
- description String
- Text describing a block storage volume.
- region String
- droplet
Ids number[] - A list of associated Droplet ids.
- filesystem
Label string - Filesystem label currently in-use on the block storage volume.
- filesystem
Type string - Filesystem type currently in-use on the block storage volume.
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- size number
- The size of the block storage volume in GiB.
- string[]
- A list of the tags associated to the Volume.
- urn string
- The uniform resource name for the storage volume.
- description string
- Text describing a block storage volume.
- region string
- droplet_
ids Sequence[int] - A list of associated Droplet ids.
- filesystem_
label str - Filesystem label currently in-use on the block storage volume.
- filesystem_
type str - Filesystem type currently in-use on the block storage volume.
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- size int
- The size of the block storage volume in GiB.
- Sequence[str]
- A list of the tags associated to the Volume.
- urn str
- The uniform resource name for the storage volume.
- description str
- Text describing a block storage volume.
- region str
- droplet
Ids List<Number> - A list of associated Droplet ids.
- filesystem
Label String - Filesystem label currently in-use on the block storage volume.
- filesystem
Type String - Filesystem type currently in-use on the block storage volume.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- size Number
- The size of the block storage volume in GiB.
- List<String>
- A list of the tags associated to the Volume.
- urn String
- The uniform resource name for the storage volume.
- description String
- Text describing a block storage volume.
- region String
Package Details
- Repository
- DigitalOcean pulumi/pulumi-digitalocean
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
digitaloceanTerraform Provider.
DigitalOcean v4.57.0 published on Thursday, Feb 12, 2026 by Pulumi
