- # f.puts "address=/#{hostname}/#{ip_address}"
- # f.puts "address=/#{hostname}.#{@@domain}/#{ip_address}" if @@domain
- # f.puts "ptr-record=#{ptr_domain},#{hostname}"
- #end
- File.open(File.join(@@dns_server_conf_dir, 'restart.txt'), 'w') do |f|
- # this will trigger a dns server restart
- f.puts @@dns_server_reload_command
+
+ if !Rails.configuration.Containers.SLURM.Managed.DNSServerUpdateCommand.empty?
+ cmd = Rails.configuration.Containers.SLURM.Managed.DNSServerUpdateCommand % template_vars
+ if not system cmd
+ logger.error "dns_server_update_command #{cmd.inspect} failed: #{$?}"
+ ok = false
+ end
+ end
+
+ if (!Rails.configuration.Containers.SLURM.Managed.DNSServerConfDir.to_s.empty? and
+ !Rails.configuration.Containers.SLURM.Managed.DNSServerReloadCommand.to_s.empty?)
+ restartfile = File.join(Rails.configuration.Containers.SLURM.Managed.DNSServerConfDir, 'restart.txt')
+ begin
+ File.open(restartfile, 'w') do |f|
+ # Typically, this is used to trigger a dns server restart
+ f.puts Rails.configuration.Containers.SLURM.Managed.DNSServerReloadCommand
+ end
+ rescue IOError, SystemCallError => e
+ logger.error "Unable to write #{restartfile}: #{e.message}"
+ ok = false
+ end