Fixed agent PATH environment variable and added ip address into agent interfaces output

This commit is contained in:
Vladimir Kozhukalov 2013-02-04 17:58:31 +04:00 committed by default
parent a276681127
commit 6cd31c2222
2 changed files with 16 additions and 14 deletions

28
agent
View File

@ -11,13 +11,12 @@ require 'logger'
require 'optparse' require 'optparse'
require 'yaml' require 'yaml'
# The following check doesn't pass on bootstrap, unless Process.euid == 0
# and node will not be discovered. Disabling this puts "You must be root"
# until issue is found and resolved. exit 1
#unless /^root$/.match ENV['USER'] end
#puts "You must be root"
#exit 1 ENV['PATH'] = "/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin"
#end
AGENT_CONFIG = "/etc/nailgun-agent/config.yaml" AGENT_CONFIG = "/etc/nailgun-agent/config.yaml"
@ -164,14 +163,17 @@ class NodeAgent
} }
(@os[:network][:interfaces] or {} rescue {}).each do |int, intinfo| (@os[:network][:interfaces] or {} rescue {}).each do |int, intinfo|
next if int =~ /^lo[:]?/
int_meta = {:name => int}
(intinfo[:addresses] or {} rescue {}).each do |addr, addrinfo| (intinfo[:addresses] or {} rescue {}).each do |addr, addrinfo|
if (addrinfo[:family] rescue nil) =~ /lladdr/ if (addrinfo[:family] rescue nil) =~ /lladdr/
detailed_meta[:interfaces] << { int_meta[:mac] = addr
:name => int, elsif (addrinfo[:family] rescue nil) =~ /^inet$/
:mac => addr int_meta[:ip] = addr
} int_meta[:netmask] = addrinfo[:netmask] if addrinfo[:netmask]
end end
end end
detailed_meta[:interfaces] << int_meta
end end
(@os[:cpu] or {} rescue {}).each do |cpu, cpuinfo| (@os[:cpu] or {} rescue {}).each do |cpu, cpuinfo|
@ -188,7 +190,7 @@ class NodeAgent
if bname =~ /^(sd|hd|vd)./ and binfo if bname =~ /^(sd|hd|vd)./ and binfo
# 512 bytes is the size of one sector by default # 512 bytes is the size of one sector by default
block_size = 512 block_size = 512
block_size = `cat /sys/block/#{bname}/queue/logical_block_size`.to_i if $?.to_i == 0 block_size = `/bin/cat /sys/block/#{bname}/queue/logical_block_size`.to_i if $?.to_i == 0
detailed_meta[:disks] << { detailed_meta[:disks] << {
:name => bname, :name => bname,
:model => binfo[:model], :model => binfo[:model],
@ -227,7 +229,7 @@ class NodeAgent
end end
def _dmi_memory def _dmi_memory
dmi = `dmidecode` dmi = `/usr/sbin/dmidecode`
return nil if $?.to_i != 0 return nil if $?.to_i != 0
mem_mapped = false mem_mapped = false
dmi.each do |line| dmi.each do |line|

View File

@ -1 +1 @@
*/5 * * * * root flock -w 0 -o /var/lock/agent.lock -c "/opt/nailgun/bin/agent > /var/log/nailgun-agent.log 2>&1" */5 * * * * root flock -w 0 -o /var/lock/agent.lock -c "/opt/nailgun/bin/agent >> /var/log/nailgun-agent.log 2>&1"