fresnel 0.5.7 → 0.5.8
Sign up to get free protection for your applications and to get access to all the features.
- data/fresnel.gemspec +2 -2
- data/lib/fresnel/cli.rb +3 -0
- data/lib/fresnel/setup_wizard.rb +9 -5
- data/lib/fresnel.rb +40 -1
- metadata +2 -2
data/fresnel.gemspec
CHANGED
@@ -3,8 +3,8 @@ Gem::Specification.new do |s|
|
|
3
3
|
s.name = 'fresnel'
|
4
4
|
s.summary = "Fresnel is a console manager to LighthouseApp.com using the official lighthouse api."
|
5
5
|
s.description = s.summary
|
6
|
-
s.version = '0.5.
|
7
|
-
s.date = '2009-12-
|
6
|
+
s.version = '0.5.8'
|
7
|
+
s.date = '2009-12-11'
|
8
8
|
s.platform = Gem::Platform::RUBY
|
9
9
|
s.authors = ["Gerard de Brieder", "Wes Oldenbeuving"]
|
10
10
|
s.email = "smeevil@gmail.com"
|
data/lib/fresnel/cli.rb
CHANGED
@@ -16,6 +16,8 @@ class Cli
|
|
16
16
|
@fresnel.get_tickets_in_bin(ARGV[1])
|
17
17
|
when "create"
|
18
18
|
@fresnel.create
|
19
|
+
when "new"
|
20
|
+
@fresnel.create_project
|
19
21
|
when "help"
|
20
22
|
help
|
21
23
|
when /\d+/
|
@@ -49,6 +51,7 @@ class Cli
|
|
49
51
|
|
50
52
|
def help
|
51
53
|
help = {
|
54
|
+
'new' => 'Create a new project',
|
52
55
|
'projects' => 'Show all projects',
|
53
56
|
'tickets' => 'Show all tickets',
|
54
57
|
'bins' => 'Show all ticket bins',
|
data/lib/fresnel/setup_wizard.rb
CHANGED
@@ -35,15 +35,19 @@ class SetupWizard
|
|
35
35
|
puts "generated your config in #{fresnel.global_config_file}, going on with main program..."
|
36
36
|
File.open(fresnel.global_config_file,'w+'){ |f| f.write(YAML::dump(config)) }
|
37
37
|
end
|
38
|
-
|
38
|
+
|
39
39
|
def self.project(fresnel)
|
40
40
|
config=Hash.new
|
41
41
|
data=fresnel.projects(:object=>true)
|
42
42
|
current_dir=File.expand_path(".").split("/").last
|
43
43
|
fresnel.projects(:selectable=>true, :clear=>false, :setup=>true)
|
44
|
-
project_id=InputDetector.new("please select which project # resides here : ", 0...data.size).answer
|
45
|
-
|
46
|
-
|
47
|
-
|
44
|
+
project_id=InputDetector.new("please select which project # resides here or [c]reate a new one : ", 0...data.size).answer
|
45
|
+
if project_id=="c"
|
46
|
+
fresnel.create_project
|
47
|
+
else
|
48
|
+
config['project_id']=data[project_id.to_i].id
|
49
|
+
puts "generated your config in #{fresnel.project_config_file}, going on with main program..."
|
50
|
+
File.open(fresnel.project_config_file,'w+'){ |f| f.write(YAML::dump(config)) }
|
51
|
+
end
|
48
52
|
end
|
49
53
|
end
|
data/lib/fresnel.rb
CHANGED
@@ -12,6 +12,18 @@ require "fresnel/input_detector"
|
|
12
12
|
|
13
13
|
HighLine.track_eof = false
|
14
14
|
|
15
|
+
LICENSES={
|
16
|
+
'mit' => "MIT License",
|
17
|
+
'apache-2-0' => "Apache License 2.0",
|
18
|
+
'artistic-gpl-2' => "Artistic License/GPLv2",
|
19
|
+
'gpl-2' => "GNU General Public License v2",
|
20
|
+
'gpl-3' => "GNU General Public License v3",
|
21
|
+
'lgpl' => "GNU Lesser General Public License",
|
22
|
+
'mozilla-1-1' => "Mozilla Public License 1.1",
|
23
|
+
'new-bsd' => "New BSD License",
|
24
|
+
'afl-3' => "Academic Free License v. 3.0"
|
25
|
+
}.sort
|
26
|
+
|
15
27
|
class Fresnel
|
16
28
|
attr_reader :global_config_file, :project_config_file, :app_description
|
17
29
|
attr_accessor :lighthouse, :current_project_id, :cache, :cache_timeout, :current_user_id
|
@@ -74,7 +86,34 @@ class Fresnel
|
|
74
86
|
end
|
75
87
|
|
76
88
|
def create_project
|
77
|
-
|
89
|
+
name=ask("Name of this project : ")
|
90
|
+
type=InputDetector.new("[p]rivate or [o]ss : ").answer
|
91
|
+
if type=="o"
|
92
|
+
row=Array.new
|
93
|
+
license_table = table do |t|
|
94
|
+
t.headings=['#' , 'license']
|
95
|
+
LICENSES.each_with_index do |lic,i|
|
96
|
+
t<<[i, lic.last]
|
97
|
+
end
|
98
|
+
end
|
99
|
+
puts license_table
|
100
|
+
license=InputDetector.new("License # : ",(0...LICENSES.size).to_a).answer
|
101
|
+
license=LICENSES[license.to_i].first
|
102
|
+
end
|
103
|
+
|
104
|
+
puts "collected :"
|
105
|
+
puts "#{name} : #{license}"
|
106
|
+
project = Lighthouse::Project.new(:name => name)
|
107
|
+
if license.present?
|
108
|
+
project.access = 'oss'
|
109
|
+
project.license = license
|
110
|
+
end
|
111
|
+
puts "creating project on lighthouse..."
|
112
|
+
project.save
|
113
|
+
config=Hash.new
|
114
|
+
config['project_id']=project.id
|
115
|
+
File.open(self.project_config_file,'w+'){ |f| f.write(YAML::dump(config)) }
|
116
|
+
load_project_config
|
78
117
|
end
|
79
118
|
|
80
119
|
def projects(options=Hash.new)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fresnel
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Gerard de Brieder
|
@@ -10,7 +10,7 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2009-12-
|
13
|
+
date: 2009-12-11 00:00:00 +01:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|