class ProjectGroup::Configs

Public Class Methods

get_group(name) click to toggle source
# File lib/project_group/config.rb, line 109
def get_group(name)
  loaded.groups.find { |x| x.name == name }.tap { |x| raise "no group #{name}" unless x }
end
group(name,&b) click to toggle source
# File lib/project_group/config.rb, line 105
def group(name,&b)
  instance.group(name,&b)
end
project(name,&b) click to toggle source
# File lib/project_group/config.rb, line 102
def project(name,&b)
  instance.project(name,&b)
end

Public Instance Methods

group(name,&b) click to toggle source
# File lib/project_group/config.rb, line 72
def group(name,&b)
  c = GroupWrapper.new(Group.new(:name => name))
  c.configs = self
  b[c]
  self.group_configs << c
end
group_for_dir(dir) click to toggle source
# File lib/project_group/config.rb, line 84
def group_for_dir(dir)
  dir = File.expand_path(dir)
  dir = dir.gsub("/Users/mharris717/Dropbox/CodeLink","/code")
  groups.find do |group|
    group.singles.any? do |proj|
      path = File.expand_path(proj.path)
      path = path.gsub("/Users/mharris717/Dropbox/CodeLink","/code")
      File.expand_path(path) == dir
    end
  end
end
load!() click to toggle source
# File lib/project_group/config.rb, line 45
def load!
  Dir["#{dir}/*.rb"].each do |f|
    load f
  end
  global_groups = group_configs.clone

  locals = ["#{Dir.getwd}/.project_group.rb","#{Dir.getwd}/.project_group"]
  locals.each do |f|
    if FileTest.exist?(f)
      load(f) 
      local_groups = group_configs - global_groups
      local_groups.first.local = true if local_groups.size > 0
    end
  end
end
local_group() click to toggle source
# File lib/project_group/config.rb, line 79
def local_group
  local_config = group_configs.find { |x| x.local }
  local_config.andand.loaded_group
end
project(name,&b) click to toggle source
# File lib/project_group/config.rb, line 66
def project(name,&b)
  c = DSLWrapper.new(Single.new(:name => name))
  b[c]
  self.projects << c.obj
end