Class BoxGrinder::FedoraPlugin
In: lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb
lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb
Parent: RPMBasedOSPlugin

Methods

Constants

SUPPORTED_VERSIONS = ["13", "14", "15", "16", "17", "rawhide"]
SUPPORTED_VERSIONS = ["13", "14", "15", "16", "17", "rawhide"]

Public Instance methods

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 31
31:     def after_init
32:       super
33:       register_supported_os('fedora', SUPPORTED_VERSIONS)
34:       set_default_config_value('PAE', true)
35:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 31
31:     def after_init
32:       super
33:       register_supported_os('fedora', SUPPORTED_VERSIONS)
34:       set_default_config_value('PAE', true)
35:     end

issues.jboss.org/browse/BGBUILD-204

[Source]

     # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 96
 96:     def change_runlevel(guestfs)
 97:       @log.debug "Changing runlevel to multi-user non-graphical..."
 98:       guestfs.rm("/etc/systemd/system/default.target")
 99:       guestfs.ln_sf("/lib/systemd/system/multi-user.target", "/etc/systemd/system/default.target")
100:       @log.debug "Runlevel changed."
101:     end

issues.jboss.org/browse/BGBUILD-204

[Source]

     # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 96
 96:     def change_runlevel(guestfs)
 97:       @log.debug "Changing runlevel to multi-user non-graphical..."
 98:       guestfs.rm("/etc/systemd/system/default.target")
 99:       guestfs.ln_sf("/lib/systemd/system/multi-user.target", "/etc/systemd/system/default.target")
100:       @log.debug "Runlevel changed."
101:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 85
85:     def disable_biosdevname(guestfs)
86:       @log.debug "Disabling biosdevname..."
87:       if guestfs.exists("/boot/grub2/grub.cfg") != 0
88:         guestfs.write("/etc/default/grub", "GRUB_CMDLINE_LINUX=\"quiet rhgb biosdevname=0\"\n")
89:         guestfs.sh("cd / && grub2-mkconfig -o /boot/grub2/grub.cfg")
90:       end
91:       guestfs.sh('sed -i "s/kernel\(.*\)/kernel\1 biosdevname=0/g" /boot/grub/grub.conf') if guestfs.exists("/boot/grub/grub.conf") != 0
92:       @log.debug "Biosdevname disabled."
93:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 85
85:     def disable_biosdevname(guestfs)
86:       @log.debug "Disabling biosdevname..."
87:       if guestfs.exists("/boot/grub2/grub.cfg") != 0
88:         guestfs.write("/etc/default/grub", "GRUB_CMDLINE_LINUX=\"quiet rhgb biosdevname=0\"\n")
89:         guestfs.sh("cd / && grub2-mkconfig -o /boot/grub2/grub.cfg")
90:       end
91:       guestfs.sh('sed -i "s/kernel\(.*\)/kernel\1 biosdevname=0/g" /boot/grub/grub.conf') if guestfs.exists("/boot/grub/grub.conf") != 0
92:       @log.debug "Biosdevname disabled."
93:     end

issues.jboss.org/browse/BGBUILD-204

[Source]

     # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 104
104:     def disable_netfs(guestfs)
105:       @log.debug "Disabling network filesystem mounting..."
106:       guestfs.sh("chkconfig netfs off")
107:       @log.debug "Network filesystem mounting disabled."
108:     end

issues.jboss.org/browse/BGBUILD-204

[Source]

     # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 104
104:     def disable_netfs(guestfs)
105:       @log.debug "Disabling network filesystem mounting..."
106:       guestfs.sh("chkconfig netfs off")
107:       @log.debug "Network filesystem mounting disabled."
108:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 37
37:     def execute(appliance_definition_file)
38:       normalize_packages(@appliance_config.packages)
39: 
40:       @repos = {}
41: 
42:       @plugin_info[:versions].each do |version|
43:         if version.match(/\d+/)
44:           @repos[version] = {
45:               "base" => {"mirrorlist" => "http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-#{version}&arch=#BASE_ARCH#"},
46:               "updates" => {"mirrorlist" => "http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f#{version}&arch=#BASE_ARCH#"}
47:           }
48:         else
49:           @repos[version] = {"base" => {"mirrorlist" => "http://mirrors.fedoraproject.org/mirrorlist?repo=#{version}&arch=#BASE_ARCH#"}}
50:         end
51:       end
52: 
53:       build_with_appliance_creator(appliance_definition_file, @repos) do |guestfs, guestfs_helper|
54:         if @appliance_config.os.version >= "15"
55:           disable_biosdevname(guestfs)
56:           change_runlevel(guestfs)
57:           disable_netfs(guestfs) if @appliance_config.os.version < "17"
58:           link_mtab(guestfs)
59:         end
60:       end
61:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 37
37:     def execute(appliance_definition_file)
38:       normalize_packages(@appliance_config.packages)
39: 
40:       @repos = {}
41: 
42:       @plugin_info[:versions].each do |version|
43:         if version.match(/\d+/)
44:           @repos[version] = {
45:               "base" => {"mirrorlist" => "http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-#{version}&arch=#BASE_ARCH#"},
46:               "updates" => {"mirrorlist" => "http://mirrors.fedoraproject.org/mirrorlist?repo=updates-released-f#{version}&arch=#BASE_ARCH#"}
47:           }
48:         else
49:           @repos[version] = {"base" => {"mirrorlist" => "http://mirrors.fedoraproject.org/mirrorlist?repo=#{version}&arch=#BASE_ARCH#"}}
50:         end
51:       end
52: 
53:       build_with_appliance_creator(appliance_definition_file, @repos) do |guestfs, guestfs_helper|
54:         if @appliance_config.os.version >= "15"
55:           disable_biosdevname(guestfs)
56:           change_runlevel(guestfs)
57:           disable_netfs(guestfs) if @appliance_config.os.version < "17"
58:           link_mtab(guestfs)
59:         end
60:       end
61:     end

issues.jboss.org/browse/BGBUILD-209

[Source]

     # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 111
111:     def link_mtab(guestfs)
112:       @log.debug "Linking /etc/mtab to /proc/self/mounts..."
113:       guestfs.ln_sf("/proc/self/mounts", "/etc/mtab")
114:       @log.debug "/etc/mtab linked."
115:     end

issues.jboss.org/browse/BGBUILD-209

[Source]

     # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 111
111:     def link_mtab(guestfs)
112:       @log.debug "Linking /etc/mtab to /proc/self/mounts..."
113:       guestfs.ln_sf("/proc/self/mounts", "/etc/mtab")
114:       @log.debug "/etc/mtab linked."
115:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 63
63:     def normalize_packages(packages)
64:       # https://issues.jboss.org/browse/BGBUILD-89
65:       packages << '@core'
66:       packages << "system-config-firewall-base"
67:       packages << "dhclient"
68: 
69:       packages.delete('kernel')
70:       packages.delete('kernel-PAE')
71: 
72:       if @appliance_config.is64bit?
73:         packages << "kernel"
74:       else
75:         @plugin_config['PAE'] ? packages << "kernel-PAE" : packages << "kernel"
76:       end
77: 
78:       if @appliance_config.os.version >= "16"
79:         packages << "grub2"
80:       else
81:         packages << "grub"
82:       end
83:     end

[Source]

    # File lib/boxgrinder-build/plugins/os/fedora/fedora-plugin.rb, line 63
63:     def normalize_packages(packages)
64:       # https://issues.jboss.org/browse/BGBUILD-89
65:       packages << '@core'
66:       packages << "system-config-firewall-base"
67:       packages << "dhclient"
68: 
69:       packages.delete('kernel')
70:       packages.delete('kernel-PAE')
71: 
72:       if @appliance_config.is64bit?
73:         packages << "kernel"
74:       else
75:         @plugin_config['PAE'] ? packages << "kernel-PAE" : packages << "kernel"
76:       end
77: 
78:       if @appliance_config.os.version >= "16"
79:         packages << "grub2"
80:       else
81:         packages << "grub"
82:       end
83:     end

[Validate]