published on Wednesday, Jun 24, 2026 by dell
published on Wednesday, Jun 24, 2026 by dell
This resource is used to manage the QoS policy entity of PowerStore Array. We can Create, Update and Delete the QoS policy using this resource. We can also import an existing QoS policy from PowerStore array.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as powerstore from "@pulumi/powerstore";
//Copyright (c) 2024 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.sh for more info
// name and type are required attributes to create
// type must be "QoS" for block storage or "File_Performance" for file storage
// io_limit_rule_id is optional for QoS type
// file_io_limit_rule_id is optional for File_Performance type
const terraform_provider_test1 = new powerstore.QosPolicy("terraform-provider-test1", {
name: "test_qos_policy1",
description: "Test QoS policy for block storage",
type: "QoS",
ioLimitRuleId: "643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g",
});
import pulumi
import pulumi_powerstore as powerstore
#Copyright (c) 2024 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.sh for more info
# name and type are required attributes to create
# type must be "QoS" for block storage or "File_Performance" for file storage
# io_limit_rule_id is optional for QoS type
# file_io_limit_rule_id is optional for File_Performance type
terraform_provider_test1 = powerstore.QosPolicy("terraform-provider-test1",
name="test_qos_policy1",
description="Test QoS policy for block storage",
type="QoS",
io_limit_rule_id="643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g")
package main
import (
"github.com/pulumi/pulumi-terraform-provider/sdks/go/powerstore/powerstore"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Copyright (c) 2024 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.sh for more info
// name and type are required attributes to create
// type must be "QoS" for block storage or "File_Performance" for file storage
// io_limit_rule_id is optional for QoS type
// file_io_limit_rule_id is optional for File_Performance type
_, err := powerstore.NewQosPolicy(ctx, "terraform-provider-test1", &powerstore.QosPolicyArgs{
Name: pulumi.String("test_qos_policy1"),
Description: pulumi.String("Test QoS policy for block storage"),
Type: pulumi.String("QoS"),
IoLimitRuleId: pulumi.String("643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Powerstore = Pulumi.Powerstore;
return await Deployment.RunAsync(() =>
{
//Copyright (c) 2024 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.sh for more info
// name and type are required attributes to create
// type must be "QoS" for block storage or "File_Performance" for file storage
// io_limit_rule_id is optional for QoS type
// file_io_limit_rule_id is optional for File_Performance type
var terraform_provider_test1 = new Powerstore.QosPolicy("terraform-provider-test1", new()
{
Name = "test_qos_policy1",
Description = "Test QoS policy for block storage",
Type = "QoS",
IoLimitRuleId = "643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.powerstore.QosPolicy;
import com.pulumi.powerstore.QosPolicyArgs;
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 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.sh for more info
// name and type are required attributes to create
// type must be "QoS" for block storage or "File_Performance" for file storage
// io_limit_rule_id is optional for QoS type
// file_io_limit_rule_id is optional for File_Performance type
var terraform_provider_test1 = new QosPolicy("terraform-provider-test1", QosPolicyArgs.builder()
.name("test_qos_policy1")
.description("Test QoS policy for block storage")
.type("QoS")
.ioLimitRuleId("643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g")
.build());
}
}
resources:
# /*
# Copyright (c) 2024 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.sh for more info
# name and type are required attributes to create
# type must be "QoS" for block storage or "File_Performance" for file storage
# io_limit_rule_id is optional for QoS type
# file_io_limit_rule_id is optional for File_Performance type
terraform-provider-test1:
type: powerstore:QosPolicy
properties:
name: test_qos_policy1
description: Test QoS policy for block storage
type: QoS
ioLimitRuleId: 643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g
Example coming soon!
Create QosPolicy Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new QosPolicy(name: string, args: QosPolicyArgs, opts?: CustomResourceOptions);@overload
def QosPolicy(resource_name: str,
args: QosPolicyArgs,
opts: Optional[ResourceOptions] = None)
@overload
def QosPolicy(resource_name: str,
opts: Optional[ResourceOptions] = None,
type: Optional[str] = None,
description: Optional[str] = None,
file_io_limit_rule_id: Optional[str] = None,
io_limit_rule_id: Optional[str] = None,
name: Optional[str] = None)func NewQosPolicy(ctx *Context, name string, args QosPolicyArgs, opts ...ResourceOption) (*QosPolicy, error)public QosPolicy(string name, QosPolicyArgs args, CustomResourceOptions? opts = null)
public QosPolicy(String name, QosPolicyArgs args)
public QosPolicy(String name, QosPolicyArgs args, CustomResourceOptions options)
type: powerstore:QosPolicy
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "powerstore_qospolicy" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args QosPolicyArgs
- 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 QosPolicyArgs
- 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 QosPolicyArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args QosPolicyArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args QosPolicyArgs
- 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 qosPolicyResource = new Powerstore.QosPolicy("qosPolicyResource", new()
{
Type = "string",
Description = "string",
FileIoLimitRuleId = "string",
IoLimitRuleId = "string",
Name = "string",
});
example, err := powerstore.NewQosPolicy(ctx, "qosPolicyResource", &powerstore.QosPolicyArgs{
Type: pulumi.String("string"),
Description: pulumi.String("string"),
FileIoLimitRuleId: pulumi.String("string"),
IoLimitRuleId: pulumi.String("string"),
Name: pulumi.String("string"),
})
resource "powerstore_qospolicy" "qosPolicyResource" {
type = "string"
description = "string"
file_io_limit_rule_id = "string"
io_limit_rule_id = "string"
name = "string"
}
var qosPolicyResource = new QosPolicy("qosPolicyResource", QosPolicyArgs.builder()
.type("string")
.description("string")
.fileIoLimitRuleId("string")
.ioLimitRuleId("string")
.name("string")
.build());
qos_policy_resource = powerstore.QosPolicy("qosPolicyResource",
type="string",
description="string",
file_io_limit_rule_id="string",
io_limit_rule_id="string",
name="string")
const qosPolicyResource = new powerstore.QosPolicy("qosPolicyResource", {
type: "string",
description: "string",
fileIoLimitRuleId: "string",
ioLimitRuleId: "string",
name: "string",
});
type: powerstore:QosPolicy
properties:
description: string
fileIoLimitRuleId: string
ioLimitRuleId: string
name: string
type: string
QosPolicy 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 QosPolicy resource accepts the following input properties:
- Type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- Description string
- Description of the QoS policy.
- File
Io stringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- Io
Limit stringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- Name string
- Name of the QoS policy.
- Type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- Description string
- Description of the QoS policy.
- File
Io stringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- Io
Limit stringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- Name string
- Name of the QoS policy.
- type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description string
- Description of the QoS policy.
- file_
io_ stringlimit_ rule_ id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io_
limit_ stringrule_ id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name string
- Name of the QoS policy.
- type String
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description String
- Description of the QoS policy.
- file
Io StringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io
Limit StringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name String
- Name of the QoS policy.
- type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description string
- Description of the QoS policy.
- file
Io stringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io
Limit stringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name string
- Name of the QoS policy.
- type str
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description str
- Description of the QoS policy.
- file_
io_ strlimit_ rule_ id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io_
limit_ strrule_ id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name str
- Name of the QoS policy.
- type String
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description String
- Description of the QoS policy.
- file
Io StringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io
Limit StringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name String
- Name of the QoS policy.
Outputs
All input properties are implicitly available as output properties. Additionally, the QosPolicy resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing QosPolicy Resource
Get an existing QosPolicy 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?: QosPolicyState, opts?: CustomResourceOptions): QosPolicy@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
file_io_limit_rule_id: Optional[str] = None,
io_limit_rule_id: Optional[str] = None,
name: Optional[str] = None,
type: Optional[str] = None) -> QosPolicyfunc GetQosPolicy(ctx *Context, name string, id IDInput, state *QosPolicyState, opts ...ResourceOption) (*QosPolicy, error)public static QosPolicy Get(string name, Input<string> id, QosPolicyState? state, CustomResourceOptions? opts = null)public static QosPolicy get(String name, Output<String> id, QosPolicyState state, CustomResourceOptions options)resources: _: type: powerstore:QosPolicy get: id: ${id}import {
to = powerstore_qospolicy.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.
- Description string
- Description of the QoS policy.
- File
Io stringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- Io
Limit stringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- Name string
- Name of the QoS policy.
- Type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- Description string
- Description of the QoS policy.
- File
Io stringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- Io
Limit stringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- Name string
- Name of the QoS policy.
- Type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description string
- Description of the QoS policy.
- file_
io_ stringlimit_ rule_ id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io_
limit_ stringrule_ id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name string
- Name of the QoS policy.
- type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description String
- Description of the QoS policy.
- file
Io StringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io
Limit StringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name String
- Name of the QoS policy.
- type String
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description string
- Description of the QoS policy.
- file
Io stringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io
Limit stringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name string
- Name of the QoS policy.
- type string
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description str
- Description of the QoS policy.
- file_
io_ strlimit_ rule_ id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io_
limit_ strrule_ id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name str
- Name of the QoS policy.
- type str
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
- description String
- Description of the QoS policy.
- file
Io StringLimit Rule Id - File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.
- io
Limit StringRule Id - I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
- name String
- Name of the QoS policy.
- type String
- Type of the QoS policy. Must be 'QoS' for block storage or 'File_Performance' for file storage.
Import
#!/bin/bash
Copyright (c) 2024-2025 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.
Script to import an existing QoS policy into Terraform
Usage: ./import.sh <qos_policy_id>
if [ -z “$1” ]; then
echo “Usage: $0 <qos_policy_id>”
echo “Example: $0 643d8f3c-7b8c-4d1e-9f2a-1b3c4d5e6f7g”
exit 1
fi
$ pulumi import powerstore:index/qosPolicy:QosPolicy terraform-provider-test1 "$1"
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- powerstore dell/terraform-provider-powerstore
- License
- Notes
- This Pulumi package is based on the
powerstoreTerraform Provider.
published on Wednesday, Jun 24, 2026 by dell