class Project

Project represents a Git project

Attributes

projects[R]

Public Class Methods

new(config) click to toggle source
# File lib/helpers/project.rb, line 8
def initialize(config)
  @projects = YAML.load_file(config)
end

Public Instance Methods

all(group = nil) click to toggle source
# File lib/helpers/project.rb, line 12
def all(group = nil)
  group ? @projects.select { |_k, v| v['group'].include?(group) } : @projects
end
create_root_path(path) click to toggle source
# File lib/helpers/project.rb, line 20
def create_root_path(path)
  @projects.tap do |project|
    project.each do |_k, v|
      v['root_dir'] = path
    end
  end
end
first() click to toggle source
# File lib/helpers/project.rb, line 16
def first
  all.sort.first
end
new_group(remote, name) click to toggle source
# File lib/helpers/project.rb, line 34
def new_group(remote, name)
  @projects.tap do |project|
    project[remote]['group'] = name
  end
end
new_remote(remote, name, url) click to toggle source
# File lib/helpers/project.rb, line 28
def new_remote(remote, name, url)
  @projects.tap do |project|
    project[remote][name] = url
  end
end