Class: MintPress::Resources::FstabEntry

Inherits:
AugeasIterator show all
Includes:
MintLogger, Mixins::Properties
Defined in:
src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb

Overview

This resource creates an fstab entry for a filesystem, via the augeas resource. It is generally used by the bootstrap classes of the Host resource when building new machines or adding new mountpoints, however it is available for use by users as well.

Properties (Read/Write)

  • #name ⇒ String

    Property Attributes
    
    
    16
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 16
    
    property :name, type: String
  • #device_node ⇒ String
    Which device node to mount, for example /dev/volume_group/logical_volume or /dev/sda2

    Property Attributes
    • aug_name'spec'
    
    
    18
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 18
    
    property :device_node, type: String, aug_name: 'spec'
  • #mount_point ⇒ String (Default Value: Proc.new { self.name })
    Where to mount the filesystem

    Property Attributes
    • defaultProc.new { self.name }
    • aug_name'file'
    • aug_indextrue
    
    
    20
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 20
    
    property :mount_point, type: String, default: Proc.new { self.name }, aug_name: 'file', aug_index: true
  • #filesystem ⇒ String
    The filesystem type - for example, ext4, xfs, or nfs

    Property Attributes
    • aug_name'vfstype'
    
    
    22
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 22
    
    property :filesystem, type: String, aug_name: 'vfstype'
  • #options ⇒ Array of ⇒ String (Default Value: 'defaults')
    Filesystem options - "defaults" by default, but for example ["ro","nomount"] for a read only XFS

    Property Attributes
    • aug_name'opt'
    • default'defaults'
    • aug_arraytrue
    • aug_value_label'value'
    
    
    24
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 24
    
    property :options, type: String, array: true, aug_name: 'opt', default: 'defaults', aug_array: true, aug_value_label: 'value'
  • #dump ⇒ Integer (Default Value: 0)
    Dump order

    Property Attributes
    • default0
    • aug_name'dump'
    
    
    26
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 26
    
    property :dump, type: Integer, default: 0, aug_name: 'dump'
  • #pass ⇒ Integer (Default Value: 2)
    Mount pass

    Property Attributes
    • default2
    • aug_name'passno'
    
    
    28
    # File 'src/mintpress-resources/lib/mintpress-resources/fstab_entry.rb', line 28
    
    property :pass, type: Integer, default: 2, aug_name: 'passno'
  • #name ⇒ String
    Things like tmpdir and so on?

    Property Attributes
    • requiredtrue
    
    
    38
    # File 'src/mintpress-resources/lib/mintpress-resources/resource.rb', line 38
    
    property :name, type: String, required: true
  • #host ⇒ MintPress::Infrastructure::Host (Default Value: Proc.new { r=nil if self.default_localhost r = MintPress::Infrastructure::Localhost.new(final_user: self.default_localhost_user) end r })
    Host on which to operate. Depending on your system, this will usually default to localhost.

    Property Attributes
    • paralleltrue
    • defaultProc.new { r=nil if self.default_localhost r = MintPress::Infrastructure::Localhost.new(final_user: self.default_localhost_user) end r }
    
    
    41
    42
    43
    44
    45
    # File 'src/mintpress-resources/lib/mintpress-resources/resource.rb', line 41
    
    property :host, type: MintPress::Infrastructure::Host, parallel: true, default: Proc.new { r=nil
    if self.default_localhost
      r = MintPress::Infrastructure::Localhost.new(final_user: self.default_localhost_user)
     end
    r }
  • #as_admin ⇒ [TrueClass, FalseClass] (Default Value: false)
    Should the operation be performed as an administratrive user (root on linux/unix, Adminstrator on windows) or should it be performed as unprivledged? The default behaviour is to perform as unprivledged unless otherwise asked.

    Property Attributes
    • defaultfalse
    
    
    66
    # File 'src/mintpress-resources/lib/mintpress-resources/resource.rb', line 66
    
    property :as_admin, type: [TrueClass, FalseClass], default: false

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

Methods inherited from AugeasIterator

#exists?, #find_index, #get_target

Constructor Details

#initialize(opts = {}) ⇒ FstabEntry

Add an fstab entry for a filesystem. This is primarily used internally by the infrastructure resources such as mountpoint, blockdevice, and friends

Instance Method Details

#createObject