Class: Vagrant::Systems::Arch
- Defined in:
- lib/vagrant/systems/arch.rb
Instance Attribute Summary
Attributes inherited from Base
Instance Method Summary collapse
- #change_host_name(name) ⇒ Object
- #enable_host_only_network(net_options) ⇒ Object
- #prepare_host_only_network(net_options = nil) ⇒ Object
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
4 5 6 7 8 9 10 11 12 13 |
# File 'lib/vagrant/systems/arch.rb', line 4 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/rc.conf") 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
22 23 24 25 26 27 28 29 30 31 |
# File 'lib/vagrant/systems/arch.rb', line 22 def enable_host_only_network() entry = TemplateRenderer.render('network_entry_arch', :net_options => ) vm.ssh.upload!(StringIO.new(entry), "/tmp/vagrant-network-entry") vm.ssh.execute do |ssh| ssh.exec!("sudo su -c 'cat /tmp/vagrant-network-entry >> /etc/rc.conf'") ssh.exec!("sudo /etc/rc.d/network restart") ssh.exec!("sudo su -c 'dhcpcd -k eth0 && dhcpcd eth0 & sleep 3'") end end |
#prepare_host_only_network(net_options = nil) ⇒ Object
15 16 17 18 19 20 |
# File 'lib/vagrant/systems/arch.rb', line 15 def prepare_host_only_network(=nil) vm.ssh.execute do |ssh| ssh.exec!("sudo sed -e '/^#VAGRANT-BEGIN/,/^#VAGRANT-END/ d' /etc/rc.conf > /tmp/vagrant-network-interfaces") ssh.exec!("sudo su -c 'cat /tmp/vagrant-network-interfaces > /etc/rc.conf'") end end |