From c10faa5b2b617d5d62407567cd8d495d7ddddeb6 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 15 Jun 2016 16:53:59 -0400 Subject: git mv bin scripts --- scripts/common.rb | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 scripts/common.rb (limited to 'scripts/common.rb') diff --git a/scripts/common.rb b/scripts/common.rb new file mode 100644 index 0000000..91e14be --- /dev/null +++ b/scripts/common.rb @@ -0,0 +1,22 @@ +require 'yaml' + +def cfg + @cfg ||= YAML::load(open("parabola-hackers.yml")) +end + +def load_user_yaml(filename) + user = YAML::load(open(filename)) + groups = user["groups"] || [] + user["groups"] = groups.concat((groups & cfg["groupgroups"].keys).map{|g|cfg["groupgroups"][g]}.flatten) + return user +end + +def load_all_users + users = {} + Dir.glob("#{cfg["yamldir"]}/*.yml").map{|filename| + uid = File.basename(filename).sub(/^([0-9]*)\.yml$/, "\\1").to_i + user = load_user_yaml(filename) + users[uid] = user + } + return users +end -- cgit v1.2.2