Class: DInstallerCli::InstallConfig

Inherits:
Object
  • Object
show all
Defined in:
lib/dinstaller_cli/install_config.rb

Overview

Class to represent the installation config

Defined Under Namespace

Classes: Root, User

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeInstallConfig

Returns a new instance of InstallConfig.



52
53
54
55
56
57
58
# File 'lib/dinstaller_cli/install_config.rb', line 52

def initialize
  @product = nil
  @languages = []
  @disks = []
  @user = nil
  @root = nil
end

Instance Attribute Details

#disksArray<String>

Target devices

Returns:

  • (Array<String>)

    device names (e.g., [“/dev/vda”])



40
41
42
# File 'lib/dinstaller_cli/install_config.rb', line 40

def disks
  @disks
end

#languagesArray<String>

Languages to install

Returns:

  • (Array<String>)

    ids of the languages (e.g., [“en_UK”, “es_ES”])



35
36
37
# File 'lib/dinstaller_cli/install_config.rb', line 35

def languages
  @languages
end

#productString?

Product to install

Returns:

  • (String, nil)

    id of the product (e.g., “Tumbleweed”)



30
31
32
# File 'lib/dinstaller_cli/install_config.rb', line 30

def product
  @product
end

#rootInstallConfig::Root?

Root config

Returns:



50
51
52
# File 'lib/dinstaller_cli/install_config.rb', line 50

def root
  @root
end

#userInstallConfig::User?

User config

Returns:



45
46
47
# File 'lib/dinstaller_cli/install_config.rb', line 45

def user
  @user
end

Instance Method Details

#dumpString

Dumps the settings in YAML format

Returns:

  • (String)


63
64
65
# File 'lib/dinstaller_cli/install_config.rb', line 63

def dump
  to_h.to_yaml
end

#to_hHash

Converts the settings to hash

Returns:

  • (Hash)


70
71
72
73
74
75
76
77
78
# File 'lib/dinstaller_cli/install_config.rb', line 70

def to_h
  {
    "product"   => product,
    "languages" => languages,
    "disks"     => disks,
    "user"      => user&.to_h || {},
    "root"      => root&.to_h || {}
  }
end