Class: Vagrant::Systems::Redhat

Inherits:
Linux show all
Defined in:
lib/vagrant/systems/redhat.rb

Instance Attribute Summary

Attributes inherited from Base

#vm

Instance Method Summary collapse

Methods inherited from Linux

#distro_dispatch, #halt, #mount_folder, #mount_nfs, #mount_shared_folder

Methods inherited from Base

#distro_dispatch, #halt, #initialize, #mount_nfs, #mount_shared_folder

Constructor Details

This class inherits a constructor from Vagrant::Systems::Base

Instance Method Details

#change_host_name(name) ⇒ Object



27
28
29
30
31
32
33
34
35
36
# File 'lib/vagrant/systems/redhat.rb', line 27

def change_host_name(name)
  vm.ssh.execute do |ssh|
    # Only do this if the hostname is not already set
    if !ssh.test?("sudo hostname | grep '#{name}'")
      ssh.exec!("sudo sed -i 's/\\(HOSTNAME=\\).*/\\1#{name}/' /etc/sysconfig/network")
      ssh.exec!("sudo hostname #{name}")
      ssh.exec!("sudo sed -i 's@^\\(127[.]0[.]0[.]1[[:space:]]\\+\\)@\\1#{name} @' /etc/hosts")
    end
  end
end

#enable_host_only_network(net_options) ⇒ Object



14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/vagrant/systems/redhat.rb', line 14

def enable_host_only_network(net_options)
  entry = TemplateRenderer.render('network_entry_redhat', :net_options => net_options)

  vm.ssh.upload!(StringIO.new(entry), "/tmp/vagrant-network-entry")

  vm.ssh.execute do |ssh|
    interface_up = ssh.test?("/sbin/ifconfig eth#{net_options[:adapter]} | grep 'inet addr:'")
    ssh.exec!("sudo /sbin/ifdown eth#{net_options[:adapter]} 2> /dev/null") if interface_up
    ssh.exec!("sudo su -c 'cat /tmp/vagrant-network-entry >> /etc/sysconfig/network-scripts/ifcfg-eth#{net_options[:adapter]}'")
    ssh.exec!("sudo /sbin/ifup eth#{net_options[:adapter]}")
  end
end

#prepare_host_only_network(net_options) ⇒ Object



4
5
6
7
8
9
10
11
12
# File 'lib/vagrant/systems/redhat.rb', line 4

def prepare_host_only_network(net_options)
  # Remove any previous host only network additions to the
  # interface file.
  vm.ssh.execute do |ssh|
    # Clear out any previous entries
    ssh.exec!("sudo sed -e '/^#VAGRANT-BEGIN/,/^#VAGRANT-END/ d' /etc/sysconfig/network-scripts/ifcfg-eth#{net_options[:adapter]} > /tmp/vagrant-ifcfg-eth#{net_options[:adapter]}")
    ssh.exec!("sudo su -c 'cat /tmp/vagrant-ifcfg-eth#{net_options[:adapter]} > /etc/sysconfig/network-scripts/ifcfg-eth#{net_options[:adapter]}'")
  end
end