X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/fad433ed99dffb9fd003c5dfd5f7bad770b19206..35bee4f8071099b57925a49fc56554ceda900c81:/docker/build_tools/config.rb diff --git a/docker/build_tools/config.rb b/docker/build_tools/config.rb index 8b9bb73249..d8bf256124 100755 --- a/docker/build_tools/config.rb +++ b/docker/build_tools/config.rb @@ -18,7 +18,7 @@ config = YAML.load_file('config.yml') # doesn't change if config.yml doesn't change. Otherwise, keys won't # match any more if (say) keep's files get regenerated but apiserver's # don't. -config.each_key do |var| +config.sort.map do |var,val| if (var.end_with?('_PW') || var.end_with?('_SECRET')) && (config[var].nil? || config[var].empty?) config[var] = Digest::SHA1.hexdigest(`hostname` + var + config.to_yaml) end @@ -40,16 +40,15 @@ else globdir = '*' end -Dir.glob(globdir + '/generated/*') do |stale_file| - File.delete(stale_file) -end +FileUtils.rm_r Dir.glob(globdir + '/generated/*') File.umask(022) Dir.glob(globdir + '/*.in') do |template_file| generated_dir = File.join(File.dirname(template_file), 'generated') Dir.mkdir(generated_dir) unless Dir.exists? generated_dir output_path = File.join(generated_dir, File.basename(template_file, '.in')) - File.open(output_path, "w") do |output| + output_mode = (File.stat(template_file).mode & 0100) ? 0755 : 0644 + File.open(output_path, "w", output_mode) do |output| File.open(template_file) do |input| input.each_line do |line|