1. Registry
  2. Packages
  3. Powerflex Provider
  4. API Docs
  5. DeviceGroupV2
Viewing docs for powerflex 1.9.0
published on Monday, Sep 28, 2026 by dell
Viewing docs for powerflex 1.9.0
published on Monday, Sep 28, 2026 by dell

    This resource is used to manage Device Groups on PowerFlex Gen2 systems (5.0+). Device Groups allow logical grouping of devices for management.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as powerflex from "@pulumi/powerflex";
    
    //Copyright (c) 2024-2026 Dell Inc., or its subsidiaries. All Rights Reserved.
    //
    //Licensed under the Mozilla Public License Version 2.0 (the "License");
    //you may not use this file except in compliance with the License
    //You may obtain a copy of the License at
    //
    //    http://mozilla.org/MPL/2.0/
    //
    //
    //Unless required by applicable law or agreed to in writing, software
    //distributed under the License is distributed on an "AS IS" BASIS,
    //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    //See the License for the specific language governing permissions and
    //limitations under the License.
    // Commands to run this tf file : terraform init && pulumi preview && pulumi up
    // Create, Update, Delete is supported for this resource
    // To import, check import.tf for more info
    // protection_domain_id is required
    // name is optional
    // This resource is for PowerFlex Gen2 systems (5.0+)
    // Example for creating a Device Group
    const create = new powerflex.DeviceGroupV2("create", {
        name: "demo-device-group-01",
        protectionDomainId: "202a046600000000",
    });
    export const deviceGroup = create;
    
    import pulumi
    import pulumi_powerflex as powerflex
    
    #Copyright (c) 2024-2026 Dell Inc., or its subsidiaries. All Rights Reserved.
    #
    #Licensed under the Mozilla Public License Version 2.0 (the "License");
    #you may not use this file except in compliance with the License
    #You may obtain a copy of the License at
    #
    #    http://mozilla.org/MPL/2.0/
    #
    #
    #Unless required by applicable law or agreed to in writing, software
    #distributed under the License is distributed on an "AS IS" BASIS,
    #WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    #See the License for the specific language governing permissions and
    #limitations under the License.
    # Commands to run this tf file : terraform init && pulumi preview && pulumi up
    # Create, Update, Delete is supported for this resource
    # To import, check import.tf for more info
    # protection_domain_id is required
    # name is optional
    # This resource is for PowerFlex Gen2 systems (5.0+)
    # Example for creating a Device Group
    create = powerflex.DeviceGroupV2("create",
        name="demo-device-group-01",
        protection_domain_id="202a046600000000")
    pulumi.export("deviceGroup", create)
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/powerflex/powerflex"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		// Copyright (c) 2024-2026 Dell Inc., or its subsidiaries. All Rights Reserved.
    		//
    		// Licensed under the Mozilla Public License Version 2.0 (the "License");
    		// you may not use this file except in compliance with the License
    		// You may obtain a copy of the License at
    		//
    		//	http://mozilla.org/MPL/2.0/
    		//
    		// Unless required by applicable law or agreed to in writing, software
    		// distributed under the License is distributed on an "AS IS" BASIS,
    		// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    		// See the License for the specific language governing permissions and
    		// limitations under the License.
    		// Commands to run this tf file : terraform init && pulumi preview && pulumi up
    		// Create, Update, Delete is supported for this resource
    		// To import, check import.tf for more info
    		// protection_domain_id is required
    		// name is optional
    		// This resource is for PowerFlex Gen2 systems (5.0+)
    		// Example for creating a Device Group
    		create, err := powerflex.NewDeviceGroupV2(ctx, "create", &powerflex.DeviceGroupV2Args{
    			Name:               pulumi.String("demo-device-group-01"),
    			ProtectionDomainId: pulumi.String("202a046600000000"),
    		})
    		if err != nil {
    			return err
    		}
    		ctx.Export("deviceGroup", create)
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Powerflex = Pulumi.Powerflex;
    
    return await Deployment.RunAsync(() => 
    {
        //Copyright (c) 2024-2026 Dell Inc., or its subsidiaries. All Rights Reserved.
        //
        //Licensed under the Mozilla Public License Version 2.0 (the "License");
        //you may not use this file except in compliance with the License
        //You may obtain a copy of the License at
        //
        //    http://mozilla.org/MPL/2.0/
        //
        //
        //Unless required by applicable law or agreed to in writing, software
        //distributed under the License is distributed on an "AS IS" BASIS,
        //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        //See the License for the specific language governing permissions and
        //limitations under the License.
        // Commands to run this tf file : terraform init && pulumi preview && pulumi up
        // Create, Update, Delete is supported for this resource
        // To import, check import.tf for more info
        // protection_domain_id is required
        // name is optional
        // This resource is for PowerFlex Gen2 systems (5.0+)
        // Example for creating a Device Group
        var create = new Powerflex.DeviceGroupV2("create", new()
        {
            Name = "demo-device-group-01",
            ProtectionDomainId = "202a046600000000",
        });
    
        return new Dictionary<string, object?>
        {
            ["deviceGroup"] = create,
        };
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.powerflex.DeviceGroupV2;
    import com.pulumi.powerflex.DeviceGroupV2Args;
    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) {
            //Copyright (c) 2024-2026 Dell Inc., or its subsidiaries. All Rights Reserved.
            //
            //Licensed under the Mozilla Public License Version 2.0 (the "License");
            //you may not use this file except in compliance with the License
            //You may obtain a copy of the License at
            //
            //    http://mozilla.org/MPL/2.0/
            //
            //
            //Unless required by applicable law or agreed to in writing, software
            //distributed under the License is distributed on an "AS IS" BASIS,
            //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
            //See the License for the specific language governing permissions and
            //limitations under the License.
            // Commands to run this tf file : terraform init && pulumi preview && pulumi up
            // Create, Update, Delete is supported for this resource
            // To import, check import.tf for more info
            // protection_domain_id is required
            // name is optional
            // This resource is for PowerFlex Gen2 systems (5.0+)
            // Example for creating a Device Group
            var create = new DeviceGroupV2("create", DeviceGroupV2Args.builder()
                .name("demo-device-group-01")
                .protectionDomainId("202a046600000000")
                .build());
    
            ctx.export("deviceGroup", create);
        }
    }
    
    resources:
      # /*
      # Copyright (c) 2024-2026 Dell Inc., or its subsidiaries. All Rights Reserved.
    
      # Licensed under the Mozilla Public License Version 2.0 (the "License");
      # you may not use this file except in compliance with the License
      # You may obtain a copy of the License at
    
      #     http://mozilla.org/MPL/2.0/
    
    
      # Unless required by applicable law or agreed to in writing, software
      # distributed under the License is distributed on an "AS IS" BASIS,
      # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      # See the License for the specific language governing permissions and
      # limitations under the License.
      # */
    
    
      # Commands to run this tf file : terraform init && pulumi preview && pulumi up
      # Create, Update, Delete is supported for this resource
      # To import, check import.tf for more info
      # protection_domain_id is required
      # name is optional
      # This resource is for PowerFlex Gen2 systems (5.0+)
    
      # Example for creating a Device Group
      create:
        type: powerflex:DeviceGroupV2
        properties:
          name: demo-device-group-01
          protectionDomainId: 202a046600000000
    outputs:
      deviceGroup: ${create}
    
    Example coming soon!
    

    Create DeviceGroupV2 Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new DeviceGroupV2(name: string, args: DeviceGroupV2Args, opts?: CustomResourceOptions);
    @overload
    def DeviceGroupV2(resource_name: str,
                      args: DeviceGroupV2Args,
                      opts: Optional[ResourceOptions] = None)
    
    @overload
    def DeviceGroupV2(resource_name: str,
                      opts: Optional[ResourceOptions] = None,
                      protection_domain_id: Optional[str] = None,
                      name: Optional[str] = None)
    func NewDeviceGroupV2(ctx *Context, name string, args DeviceGroupV2Args, opts ...ResourceOption) (*DeviceGroupV2, error)
    public DeviceGroupV2(string name, DeviceGroupV2Args args, CustomResourceOptions? opts = null)
    public DeviceGroupV2(String name, DeviceGroupV2Args args)
    public DeviceGroupV2(String name, DeviceGroupV2Args args, CustomResourceOptions options)
    
    type: powerflex:DeviceGroupV2
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    resource "powerflex_device_group_v2" "name" {
        # resource properties
    }

    Parameters

    name string
    The unique name of the resource.
    args DeviceGroupV2Args
    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 DeviceGroupV2Args
    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 DeviceGroupV2Args
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args DeviceGroupV2Args
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args DeviceGroupV2Args
    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 deviceGroupV2Resource = new Powerflex.DeviceGroupV2("deviceGroupV2Resource", new()
    {
        ProtectionDomainId = "string",
        Name = "string",
    });
    
    example, err := powerflex.NewDeviceGroupV2(ctx, "deviceGroupV2Resource", &powerflex.DeviceGroupV2Args{
    	ProtectionDomainId: pulumi.String("string"),
    	Name:               pulumi.String("string"),
    })
    
    resource "powerflex_device_group_v2" "deviceGroupV2Resource" {
      lifecycle {
        create_before_destroy = true
      }
      protection_domain_id = "string"
      name                 = "string"
    }
    
    var deviceGroupV2Resource = new DeviceGroupV2("deviceGroupV2Resource", DeviceGroupV2Args.builder()
        .protectionDomainId("string")
        .name("string")
        .build());
    
    device_group_v2_resource = powerflex.DeviceGroupV2("deviceGroupV2Resource",
        protection_domain_id="string",
        name="string")
    
    const deviceGroupV2Resource = new powerflex.DeviceGroupV2("deviceGroupV2Resource", {
        protectionDomainId: "string",
        name: "string",
    });
    
    type: powerflex:DeviceGroupV2
    properties:
        name: string
        protectionDomainId: string
    

    DeviceGroupV2 Resource Properties

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

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The DeviceGroupV2 resource accepts the following input properties:

    ProtectionDomainId string
    The ID of the protection domain.
    Name string
    The name of the device group.
    ProtectionDomainId string
    The ID of the protection domain.
    Name string
    The name of the device group.
    protection_domain_id string
    The ID of the protection domain.
    name string
    The name of the device group.
    protectionDomainId String
    The ID of the protection domain.
    name String
    The name of the device group.
    protectionDomainId string
    The ID of the protection domain.
    name string
    The name of the device group.
    protection_domain_id str
    The ID of the protection domain.
    name str
    The name of the device group.
    protectionDomainId String
    The ID of the protection domain.
    name String
    The name of the device group.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    NumOfDevices double
    The number of devices in the device group.
    Status string
    The status of the device group.
    UsableCapacityInKb double
    The usable capacity in KB.
    UsedCapacityInKb double
    The used capacity in KB.
    Id string
    The provider-assigned unique ID for this managed resource.
    NumOfDevices float64
    The number of devices in the device group.
    Status string
    The status of the device group.
    UsableCapacityInKb float64
    The usable capacity in KB.
    UsedCapacityInKb float64
    The used capacity in KB.
    id string
    The provider-assigned unique ID for this managed resource.
    num_of_devices number
    The number of devices in the device group.
    status string
    The status of the device group.
    usable_capacity_in_kb number
    The usable capacity in KB.
    used_capacity_in_kb number
    The used capacity in KB.
    id String
    The provider-assigned unique ID for this managed resource.
    numOfDevices Double
    The number of devices in the device group.
    status String
    The status of the device group.
    usableCapacityInKb Double
    The usable capacity in KB.
    usedCapacityInKb Double
    The used capacity in KB.
    id string
    The provider-assigned unique ID for this managed resource.
    numOfDevices number
    The number of devices in the device group.
    status string
    The status of the device group.
    usableCapacityInKb number
    The usable capacity in KB.
    usedCapacityInKb number
    The used capacity in KB.
    id str
    The provider-assigned unique ID for this managed resource.
    num_of_devices float
    The number of devices in the device group.
    status str
    The status of the device group.
    usable_capacity_in_kb float
    The usable capacity in KB.
    used_capacity_in_kb float
    The used capacity in KB.
    id String
    The provider-assigned unique ID for this managed resource.
    numOfDevices Number
    The number of devices in the device group.
    status String
    The status of the device group.
    usableCapacityInKb Number
    The usable capacity in KB.
    usedCapacityInKb Number
    The used capacity in KB.

    Look up Existing DeviceGroupV2 Resource

    Get an existing DeviceGroupV2 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?: DeviceGroupV2State, opts?: CustomResourceOptions): DeviceGroupV2
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            name: Optional[str] = None,
            num_of_devices: Optional[float] = None,
            protection_domain_id: Optional[str] = None,
            status: Optional[str] = None,
            usable_capacity_in_kb: Optional[float] = None,
            used_capacity_in_kb: Optional[float] = None) -> DeviceGroupV2
    func GetDeviceGroupV2(ctx *Context, name string, id IDInput, state *DeviceGroupV2State, opts ...ResourceOption) (*DeviceGroupV2, error)
    public static DeviceGroupV2 Get(string name, Input<string> id, DeviceGroupV2State? state, CustomResourceOptions? opts = null)
    public static DeviceGroupV2 get(String name, Output<String> id, DeviceGroupV2State state, CustomResourceOptions options)
    resources:  _:    type: powerflex:DeviceGroupV2    get:      id: ${id}
    import {
      to = powerflex_device_group_v2.example
      id = "${id}"
    }
    
    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:
    Name string
    The name of the device group.
    NumOfDevices double
    The number of devices in the device group.
    ProtectionDomainId string
    The ID of the protection domain.
    Status string
    The status of the device group.
    UsableCapacityInKb double
    The usable capacity in KB.
    UsedCapacityInKb double
    The used capacity in KB.
    Name string
    The name of the device group.
    NumOfDevices float64
    The number of devices in the device group.
    ProtectionDomainId string
    The ID of the protection domain.
    Status string
    The status of the device group.
    UsableCapacityInKb float64
    The usable capacity in KB.
    UsedCapacityInKb float64
    The used capacity in KB.
    name string
    The name of the device group.
    num_of_devices number
    The number of devices in the device group.
    protection_domain_id string
    The ID of the protection domain.
    status string
    The status of the device group.
    usable_capacity_in_kb number
    The usable capacity in KB.
    used_capacity_in_kb number
    The used capacity in KB.
    name String
    The name of the device group.
    numOfDevices Double
    The number of devices in the device group.
    protectionDomainId String
    The ID of the protection domain.
    status String
    The status of the device group.
    usableCapacityInKb Double
    The usable capacity in KB.
    usedCapacityInKb Double
    The used capacity in KB.
    name string
    The name of the device group.
    numOfDevices number
    The number of devices in the device group.
    protectionDomainId string
    The ID of the protection domain.
    status string
    The status of the device group.
    usableCapacityInKb number
    The usable capacity in KB.
    usedCapacityInKb number
    The used capacity in KB.
    name str
    The name of the device group.
    num_of_devices float
    The number of devices in the device group.
    protection_domain_id str
    The ID of the protection domain.
    status str
    The status of the device group.
    usable_capacity_in_kb float
    The usable capacity in KB.
    used_capacity_in_kb float
    The used capacity in KB.
    name String
    The name of the device group.
    numOfDevices Number
    The number of devices in the device group.
    protectionDomainId String
    The ID of the protection domain.
    status String
    The status of the device group.
    usableCapacityInKb Number
    The usable capacity in KB.
    usedCapacityInKb Number
    The used capacity in KB.

    Package Details

    Repository
    powerflex dell/terraform-provider-powerflex
    License
    Notes
    This Pulumi package is based on the powerflex Terraform Provider.
    Viewing docs for powerflex 1.9.0
    published on Monday, Sep 28, 2026 by dell

      Try Pulumi Cloud free.
      Your team will thank you.

      Start free trial