Class: MintPress::InfrastructureZfsAppliance::ZfsFilesystemSnapshot

Inherits:
Object
  • Object
show all
Includes:
MintLogger, Mixins::Properties
Defined in:
src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb

Properties (Read/Write)

  • #platform ⇒ MintPress::InfrastructureZfsAppliance::ZfsPlatform (Default Value: MintPress::InfrastructureZfsAppliance::ZfsPlatform.new)
    The ZFS Platform object, from which all credentials and client is accessible

    Property Attributes
    • defaultMintPress::InfrastructureZfsAppliance::ZfsPlatform.new
    • requiredtrue
    
    
    26
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 26
    
    property :platform, type: MintPress::InfrastructureZfsAppliance::ZfsPlatform, default: MintPress::InfrastructureZfsAppliance::ZfsPlatform.new, required: true
  • #name ⇒ String
    The name of the filesystem snapshot

    Property Attributes
    • requiredtrue
    
    
    29
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 29
    
    property :name, type: String, required: true
  • #pool ⇒ MintPress::InfrastructureZfsAppliance::ZfsPool (Default Value: Proc.new { self.parent.pool })
    The ZFS Pool

    Property Attributes
    • fromString
    • defaultProc.new { self.parent.pool }
    • requiredtrue
    
    
    32
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 32
    
    property :pool, type: MintPress::InfrastructureZfsAppliance::ZfsPool, from: String, default: Proc.new { self.parent.pool }, required: true
  • #project ⇒ MintPress::InfrastructureZfsAppliance::ZfsProject (Default Value: Proc.new { self.parent.project })
    The ZFS Project

    Property Attributes
    • fromProc.new { |v| MintPress::InfrastructureZfsAppliance::ZfsProject.new(name: v, pool: self.pool) }
    • defaultProc.new { self.parent.project }
    • requiredtrue
    
    
    35
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 35
    
    property :project, type: MintPress::InfrastructureZfsAppliance::ZfsProject, from: Proc.new { |v| MintPress::InfrastructureZfsAppliance::ZfsProject.new(name: v, pool: self.pool) }, default: Proc.new { self.parent.project }, required: true
  • #filesystem ⇒ MintPress::InfrastructureZfsAppliance::ZfsFilesystem (Default Value: Proc.new { parent.filesystem })
    The ZFS Filesystem

    Property Attributes
    • fromProc.new { |v| MintPress::InfrastructureZfsAppliance::ZfsFilesystem.new(name: v, project: self.project, pool: self.pool) }
    • defaultProc.new { parent.filesystem }
    • requiredtrue
    
    
    38
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 38
    
    property :filesystem, type: MintPress::InfrastructureZfsAppliance::ZfsFilesystem, from: Proc.new { |v| MintPress::InfrastructureZfsAppliance::ZfsFilesystem.new(name: v, project: self.project, pool: self.pool) }, default: Proc.new { parent.filesystem }, required: true
  • #parent ⇒ MintPress::InfrastructureZfsAppliance::ZfsFilesystem
    The filesystem parent for this snapshot

    Property Attributes
    
    
    41
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 41
    
    property :parent, type: MintPress::InfrastructureZfsAppliance::ZfsFilesystem
  • #properties ⇒ Hash of (Default Value: {})
    Optional properties to be passed into the API

    Property Attributes
    • default{}
    
    
    44
    # File 'src/mintpress-infrastructure-zfs-appliance/lib/mintpress-infrastructure-zfs-appliance/zfs-filesystem-snapshot.rb', line 44
    
    property :properties, hash: true, default: {}

Properties (Read Only)

Constant Summary

Constants included from MintLogger

MintLogger::DEBUG, MintLogger::ERROR, MintLogger::FATAL, MintLogger::INFO, MintLogger::UNKNOWN, MintLogger::VERBOSE, MintLogger::WARN

Instance Attribute Summary

Attributes included from Mixins::Properties

#autopush_set_cache, #dynamic_create, #harvest_on_access, #harvest_undefined_only, #harvested, #tree_root

Instance Method Summary collapse

Methods included from MintLogger::Utils::Common

#boolean_val, #has_value?, #no_value?, #nvl, #path_as_symbol, #ruby_level_to_send

Methods included from Mixins::Properties

#[], #[]=, #add_validate_report_result, #armour_set_property, #array_contains?, #array_is_a?, #check_autopush, #check_stack_overflow, #clone_property_object, #cloner_handle_single_property, #coerce_single, #contains_as_string?, #display_validate_report_result, #double_initialize?, #dump_to_hash, #find_parent, #find_parent_by_identity, #generate_accessor_functions, #get_canonical_renamed, #get_from_opts, #get_my_name, #get_property, #get_property_item, #has?, included, #initialize_validate_report, #inspect, #is_cloned_object?, #is_mintpress_object?, #is_probably_canonical?, #is_set?, #local_debug, #local_info, #local_verbose, #mintpress_property_definitions, #place_object_by_identity, #process_properties, #prop_set?, #property, #property_definitions, #property_details, #property_is_simple_object?, #push_root!, #require_property, #require_update, #retrieve_docstring, #sanitize, #set_map_dirty, #set_property, #set_property_item, #show_short_array, #strip_defaults!, #synchronize, #uncloned_property_definitions, #update_map, #validate, #validate_generic, #validate_properties, #validate_property, #validate_required, #version_allowed?, #weakref

Constructor Details

#initialize(opts = {}) ⇒ ZfsFilesystemSnapshot

Returns a new instance of ZfsFilesystemSnapshot.

Instance Method Details

#createObject

Create the filesystem snapshot

#deleteObject

Delete the filesystem snapshot

#exist?Boolean

Does the filesystem snapshot exist?

Returns:

  • (Boolean)

#exists?Boolean

Alias to exist?

Returns:

  • (Boolean)

#getObject

Get details of the filesystem snapshot

#harvestObject

Harvest filesystem snapshot details

#rollbackObject

Rollback the filesystem snapshot