Skip to content

Latest commit

 

History

History
278 lines (238 loc) · 10.9 KB

firmware_repository.md

File metadata and controls

278 lines (238 loc) · 10.9 KB
title linkTitle page_title subcategory description
powerflex_firmware_repository data source
powerflex_firmware_repository
powerflex_firmware_repository Data Source - powerflex
This datasource is used to query the existing firmware repository from the PowerFlex array. The information fetched from this datasource can be used for getting the necessary details regarding the bundles and their components in that firmware repository.

powerflex_firmware_repository (Data Source)

This datasource is used to query the existing firmware repository from the PowerFlex array. The information fetched from this datasource can be used for getting the necessary details regarding the bundles and their components in that firmware repository.

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.
*/

# Example for fetching details of the firmware repository using names
data "powerflex_firmware_repository" "all" {
  
}

output "powerflex_firmware_repository_all_result" {
  value = data.powerflex_firmware_repository.all.firmware_repository_details
}

# if a filter is of type string it has the ability to allow regular expressions
# data "powerflex_firmware_repository" "firmware_repository_filter_regex" {
#   filter{
#     name = ["^System_.*$"]
#     disk_location = ["^https://powerflex.*$"]
#   }
# }

# output "firmwareRepositoryFilterRegexResult"{
#  value = data.powerflex_firmware_repository.firmware_repository_filter_regex.firmware_repository_details
# }

// If multiple filter fields are provided then it will show the intersection of all of those fields.
// If there is no intersection between the filters then an empty datasource will be returned
// For more information about how we do our datasource filtering check out our guides: https://dell.github.io/terraform-docs/docs/storage/platforms/powerflex/product_guide/examples/ 
data "powerflex_firmware_repository" "filter" {
  filter {
      #id = ["ID1", "ID2"]
      # name = ["Name1", "Name2"]
      # source_location = ["SourceLocation1", "SourceLocation2"]
      # source_type = ["SourceType1", "SourceType2"]
      # disk_location = ["DiskLocation1", "DiskLocation2"]
      # filename = ["Filename1", "Filename2"]
      # username = ["Username1", "Username2"]
      # download_status = ["DownloadStatus1", "DownloadStatus2"]
      # created_date = ["CreatedDate1", "CreatedDate2"]
      # created_by = ["CreatedBy1", "CreatedBy2"]
      # updated_date = ["UpdatedDate1", "UpdatedDate2"]
      # updated_by = ["UpdatedBy1", "UpdatedBy2"]
      # default_catalog = false
      # embedded = false
      # state = ["state1", "state2"]
      # bundle_count = [10, 11]
      # component_count = [1, 2]
      # user_bundle_count = [1, 2]
      # minimal = false
      # download_progress = [1, 2]
      # extract_progress = [1, 2]
      # signature = ["Signature1", "Signature2"]
      # custom = false
      # needs_attention = false
      # job_id = ["JobID1", "JobID2"]
      # rcmapproved = false
  }
}

output "powerflex_firmware_repository_filtered_result" {
  value = data.powerflex_firmware_repository.filter.firmware_repository_details
}

After the successful execution of above said block, we can see the output by executing terraform output command. Also, we can fetch information via the variable: data.powerflex_firmware_repository.datasource_block_name.attribute_name where datasource_block_name is the name of the data source block and attribute_name is the attribute which user wants to fetch.

Schema

Optional

Read-Only

  • firmware_repository_details (Attributes List) Firmware Repository details (see below for nested schema)
  • id (String) Placeholder firmware repository datasource id.

Nested Schema for filter

Optional:

  • bundle_count (Set of Number) List of bundle_count
  • component_count (Set of Number) List of component_count
  • created_by (Set of String) List of created_by
  • created_date (Set of String) List of created_date
  • custom (Boolean) Value for custom
  • default_catalog (Boolean) Value for default_catalog
  • disk_location (Set of String) List of disk_location
  • download_progress (Set of Number) List of download_progress
  • download_status (Set of String) List of download_status
  • embedded (Boolean) Value for embedded
  • extract_progress (Set of Number) List of extract_progress
  • filename (Set of String) List of filename
  • id (Set of String) List of id
  • job_id (Set of String) List of job_id
  • minimal (Boolean) Value for minimal
  • name (Set of String) List of name
  • needs_attention (Boolean) Value for needs_attention
  • rcmapproved (Boolean) Value for rcmapproved
  • signature (Set of String) List of signature
  • source_location (Set of String) List of source_location
  • source_type (Set of String) List of source_type
  • state (Set of String) List of state
  • updated_by (Set of String) List of updated_by
  • updated_date (Set of String) List of updated_date
  • user_bundle_count (Set of Number) List of user_bundle_count
  • username (Set of String) List of username

Nested Schema for firmware_repository_details

Read-Only:

  • bundle_count (Number) Bundle Count
  • component_count (Number) Component Count
  • created_by (String) Created By
  • created_date (String) Created Date
  • custom (Boolean) Custom
  • default_catalog (Boolean) Default Catalog
  • disk_location (String) Disk Location
  • download_progress (Number) Download Progress
  • download_status (String) Download Status
  • embedded (Boolean) Embedded
  • extract_progress (Number) Extract Progress
  • file_size_in_gigabytes (Number) File Size In Gigabytes
  • filename (String) Filename
  • id (String) ID of the Firmware Repository
  • job_id (String) Job ID
  • minimal (Boolean) Minimal
  • name (String) Firmware Repository name
  • needs_attention (Boolean) Needs Attention
  • password (String) Password
  • rcmapproved (Boolean) Rcmapproved
  • signature (String) Signature
  • software_bundles (Attributes List) Software Bundles (see below for nested schema)
  • software_components (Attributes List) Software Components (see below for nested schema)
  • source_location (String) Source Location
  • source_type (String) Source Type
  • state (String) State
  • updated_by (String) Updated By
  • updated_date (String) Updated Date
  • user_bundle_count (Number) User Bundle Count
  • username (String) Username

Nested Schema for firmware_repository_details.software_bundles

Read-Only:

  • bundle_date (String) Bundle Date
  • bundle_type (String) Bundle Type
  • created_by (String) Created By
  • created_date (String) Created Date
  • custom (Boolean) Custom
  • description (String) Description
  • device_model (String) Device Model
  • device_type (String) Device Type
  • fw_repository_id (String) Fw Repository ID
  • id (String) ID
  • name (String) Name
  • needs_attention (Boolean) Needs Attention
  • software_components (Attributes List) Software Components (see below for nested schema)
  • updated_by (String) Updated By
  • updated_date (String) Updated Date
  • user_bundle (Boolean) User Bundle
  • user_bundle_path (String) User Bundle Path
  • version (String) Version

Nested Schema for firmware_repository_details.software_bundles.software_components

Read-Only:

  • category (String) Category
  • component_id (String) Component ID
  • component_type (String) Component Type
  • created_by (String) Created By
  • created_date (String) Created Date
  • custom (Boolean) Custom
  • dell_version (String) Dell Version
  • device_id (String) Device ID
  • firmware_repo_name (String) Firmware Repo Name
  • hash_md5 (String) Hash Md5
  • id (String) ID
  • ignore (Boolean) Ignore
  • name (String) Name
  • needs_attention (Boolean) Needs Attention
  • operating_system (String) Operating System
  • original_component_id (String) Original Component ID
  • package_id (String) Package ID
  • path (String) Path
  • sub_device_id (String) Sub Device ID
  • sub_vendor_id (String) Sub Vendor ID
  • system_ids (List of String) System IDs
  • updated_by (String) Updated By
  • updated_date (String) Updated Date
  • vendor_id (String) Vendor ID
  • vendor_version (String) Vendor Version

Nested Schema for firmware_repository_details.software_components

Read-Only:

  • category (String) Category
  • component_id (String) Component ID
  • component_type (String) Component Type
  • created_by (String) Created By
  • created_date (String) Created Date
  • custom (Boolean) Custom
  • dell_version (String) Dell Version
  • device_id (String) Device ID
  • firmware_repo_name (String) Firmware Repo Name
  • hash_md5 (String) Hash Md5
  • id (String) ID
  • ignore (Boolean) Ignore
  • name (String) Name
  • needs_attention (Boolean) Needs Attention
  • operating_system (String) Operating System
  • original_component_id (String) Original Component ID
  • package_id (String) Package ID
  • path (String) Path
  • sub_device_id (String) Sub Device ID
  • sub_vendor_id (String) Sub Vendor ID
  • system_ids (List of String) System IDs
  • updated_by (String) Updated By
  • updated_date (String) Updated Date
  • vendor_id (String) Vendor ID
  • vendor_version (String) Vendor Version