class LabClient::Generator::GroupTemplateHelper
¶ ↑
Helper for Common
Group/Project Templates
-
Create
Group
, @group -
Execute any `setup_` methods
-
Print all @projects, and @group
Attributes
group_name[RW]
group_path[RW]
group_suffix[RW]
project_name[RW]
Public Instance Methods
generate_group()
click to toggle source
# File lib/labclient/generator/template_helper.rb, line 76 def generate_group @group = client.groups.create(name: group_name, path: group_path) raise 'Unable to Create Group' unless @group.success? end
run!()
click to toggle source
# File lib/labclient/generator/template_helper.rb, line 49 def run! logger.info "Running: #{group_suffix}" generate_group # Run `setup_` prefixed classes self.class.instance_methods.grep(/setup_/).each { |x| send(x) } # Print Created Groups/Project logger.info 'Group', name: @group.name, web_url: @group.web_url @projects.each do |project| logger.info 'Project', name: project.name, web_url: project.web_url end { group: @group, projects: @projects } end
setup()
click to toggle source
# File lib/labclient/generator/template_helper.rb, line 68 def setup self.group_suffix = self.class.name.demodulize self.group_name = opts[:group_name] || "#{gen_groups.sample} #{group_suffix}" self.group_path = opts[:group_path] || group_name.downcase.gsub(' ', '-') @projects = [] end