powerstore_qos_policy (Resource)
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
/*
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 && terraform plan && terraform apply
# 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
resource "powerstore_qos_policy" "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"
}
Schema
Required
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.
Optional
description(String) Description of the QoS policy.file_io_limit_rule_id(String) File I/O limit rule identifier included in this policy. This attribute is only valid for the File_Performance Policy type.io_limit_rule_id(String) I/O limit rule identifier included in this policy. This attribute is only used for the QoS Performance Policy type.
Read-Only
id(String) Unique identifier of the QoS policy.
Import
Import is supported using the following syntax:
#!/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
terraform import powerstore_qos_policy.terraform-provider-test1 "$1"