class Gitomator::Task::Config::TeamConfig
Attributes
Public Class Methods
from_hash(config)
click to toggle source
@param config [Hash] - Configuration data (e.g. parsed from a YAML file) @return [Enumerable<Gitomator::Task::Config::TeamConfig>]
# File lib/gitomator/task/config/team_config.rb, line 15 def self.from_hash(config) return config.map {|name, members| new(name, members) } end
new(name, members_config)
click to toggle source
@param name [String] @param members_config [Array] Each item is either a string (username) or Hash with one entry (username -> role)
# File lib/gitomator/task/config/team_config.rb, line 28 def initialize(name, members_config) @name = name @members = parse_members_config(members_config) end
Public Instance Methods
parse_members_config(members_config)
click to toggle source
# File lib/gitomator/task/config/team_config.rb, line 34 def parse_members_config(members_config) result = {} members_config.each do |entry| if entry.is_a? String result[entry] = 'member' # Default role is 'member' elsif entry.is_a?(Hash) && entry.length == 1 result[entry.keys.first] = entry.values.first else raise "Invalid team-member config, #{entry}." end end return result end