NAME

Net::Proxmox::VE::Storage - Store object

VERSION

version 0.38

SYNOPSIS

  @storage = $obj->storage();
  $storage  = $obj->get_storage('storageid');

  $ok = $obj->create_storage(%args);
  $ok = $obj->create_storage(\%args);

  $ok = $obj->delete_storage('storageid');

  $ok = $obj->update_storage('storageid', %args);
  $ok = $obj->update_storage('storageid', \%args);

DESCRIPTION

This module implements the 'storages' section of the Proxmox API for Net::Proxmox::VE, you should use the API via that module. This documentation is for detailed reference.

To be clear, this module isn't useful as a stand alone piece of software.

NOTE

String formats that are mentioned herein are done so for convenience and are defined in detail in the Proxmox API documents on the Proxmox project website.

This module doesnt enforce them, it will send whatever garbage you provide straight to the server API. So garbage-in, garbage-out!

METHODS

storages

Gets a list of storages (aka the a Storage Index)

  @storage = $obj->storage();

get_storage

Gets a single storage's configuration details

  $storage = $obj->get_storage('storageid');

storageid is a string in pve-storageid format

create_storage

Creates a new storage

  $ok = $obj->create_storage( %args );
  $ok = $obj->create_storage( \%args );

%args may items contain from the following list

storage

String. The id of the storage you wish to access in pve-storageid format. Required.

type

Emum. This is the type of storage, options are dir, nfs, lvm, isci. Required.

base

String. A pve-volume-id, see the PVE documentation. Optional.

content

String. A pve-storage-content-list. Optional.

disable

Boolean. See the PVE documetnation. Optional.

export

String. A pve-storage-path. Optional.

format

String. A pve-format-path. Optional.

maxfiles

Integer. See the PVE documentation. Optional.

nodes

String. A pve-node-list. Optional.

options

String. A pve-storage-options. Optional.

path

String. A pve-storage-path. Optional.

portal

String. A pve-storage-portal-dns. Optional.

server

String. A pve-storage-server. Optional.

shared

Boolean. See the PVE documentation. Optional.

delete_storage

Deletes a single storage

  $ok = $obj->delete_storage('storage')

storage is a string in pve-storage-id format

update_storage

Updates (sets) a storage's data

  $ok = $obj->update_storage( 'storage', %args );
  $ok = $obj->update_storage( 'storage', \%args );

storage is a string in pve-storage-id format

%args may items contain from the following list

content

String. Storage content list. Optional.

digest

String. Prevent changes if current configuration file has a different SHA1 digest. This can be used to prevent concurrent modifications. Optional.

disable

Boolean. Disables the storage. Optional.

format

String. Storage format in pve-storage-format format (see the PVE documentation). Optional.

maxfiles

Integer. See PVE documentation. Optional.

nodes

String. List of cluster node names. Optional.

options

String. Storage options in pve-storage-options format. Optional.

shared

Boolean. See PVE documentation. Optional.

SEE ALSO

Net::Proxmox::VE

AUTHOR

Brendan Beveridge <brendan@nodeintegration.com.au>, Dean Hamstead <dean@fragfest.com.au>

COPYRIGHT AND LICENSE

This software is Copyright (c) 2023 by Dean Hamstad.

This is free software, licensed under:

  The MIT (X11) License