From cb0e77692cd69a8d4c32d1ab087235143acc9d1f Mon Sep 17 00:00:00 2001 From: Seth Vargo Date: Mon, 30 May 2016 22:52:22 -0400 Subject: [PATCH] guests/arch: Do not use sudo when checking hostname The `hostname` command does not require root to execute --- plugins/guests/arch/cap/change_host_name.rb | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/plugins/guests/arch/cap/change_host_name.rb b/plugins/guests/arch/cap/change_host_name.rb index e642129c0..fc3ec4e3e 100644 --- a/plugins/guests/arch/cap/change_host_name.rb +++ b/plugins/guests/arch/cap/change_host_name.rb @@ -5,7 +5,7 @@ module VagrantPlugins def self.change_host_name(machine, name) comm = machine.communicate - if !comm.test("hostname | grep -w '#{name}'", sudo: true) + if !comm.test("hostname | grep -w '#{name}'") basename = name.split(".", 2)[0] comm.sudo <<-EOH hostnamectl set-hostname '#{name}' @@ -14,7 +14,9 @@ hostnamectl set-hostname '#{name}' sed -i'' -e 's/#.*$//' -e '/^$/d' /etc/hosts # Prepend ourselves to /etc/hosts -sed -i'' '1i 127.0.0.1\\t#{name}\\t#{basename}' /etc/hosts +grep -w '#{name}' /etc/hosts || { + sed -i'' '1i 127.0.0.1\\t#{name}\\t#{basename}' /etc/hosts +} EOH end end