gritano 0.10.1 → 0.10.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/TODO +3 -8
- data/VERSION +1 -1
- data/features/data/local_commands/plugin_list.txt +1 -0
- data/features/data/local_help.txt +1 -0
- data/features/data/remote_commands/admin_help_igorbonadio.txt +1 -0
- data/features/data/remote_commands/admin_help_jessicaeto.txt +1 -0
- data/features/data/remote_commands/admin_plugin_list_igorbonadio.txt +1 -0
- data/gritano.gemspec +3 -2
- data/lib/gritano/console/executor.rb +16 -0
- data/lib/gritano/plugin.rb +4 -2
- data/lib/gritano/plugin/http.rb +72 -0
- metadata +4 -3
data/TODO
CHANGED
@@ -1,11 +1,6 @@
|
|
1
|
-
v0.10.
|
2
|
-
☐
|
3
|
-
|
4
|
-
v0.11.0:
|
5
|
-
☐ permitir/barrar acesso remoto ao terminal do administrador
|
6
|
-
|
7
|
-
v0.12.0:
|
8
|
-
☐ novos tipos de permissão
|
1
|
+
v0.10.3:
|
2
|
+
☐ configurar o nome do servidor ssh
|
3
|
+
☐ permitir usuario ver o repo:info
|
9
4
|
|
10
5
|
futuro:
|
11
6
|
☐ divulgar
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.10.
|
1
|
+
0.10.2
|
data/gritano.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "gritano"
|
8
|
-
s.version = "0.10.
|
8
|
+
s.version = "0.10.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Igor Bonadio"]
|
12
|
-
s.date = "2013-05-
|
12
|
+
s.date = "2013-05-06"
|
13
13
|
s.description = "Gritano is the simplest way to configure your git server over ssh. You can create repositories and manage user access."
|
14
14
|
s.email = "igorbonadio@gmail.com"
|
15
15
|
s.executables = ["gritano", "gritano-pub-key", "gritano-remote"]
|
@@ -250,6 +250,7 @@ Gem::Specification.new do |s|
|
|
250
250
|
"lib/gritano/models/repository.rb",
|
251
251
|
"lib/gritano/models/user.rb",
|
252
252
|
"lib/gritano/plugin.rb",
|
253
|
+
"lib/gritano/plugin/http.rb",
|
253
254
|
"lib/gritano/plugin/ssh.rb",
|
254
255
|
"spec/cli_spec.rb",
|
255
256
|
"spec/config_spec.rb",
|
@@ -319,6 +319,22 @@ module Gritano
|
|
319
319
|
end
|
320
320
|
return [false, "An error occurred. Permissions was not modified."]
|
321
321
|
end
|
322
|
+
|
323
|
+
add_command "repo:info", "reponame.git" do |argv|
|
324
|
+
repo_name, = argv
|
325
|
+
repo = Repository.find_by_name(repo_name)
|
326
|
+
if repo
|
327
|
+
msg = Terminal::Table.new do |t|
|
328
|
+
t << ['ssh', "git@server.com:#{repo_name}"]
|
329
|
+
if ::Gritano::Http.check_install
|
330
|
+
t << :separator
|
331
|
+
t << ['http', "#{Http.servername}/#{repo_name}"]
|
332
|
+
end
|
333
|
+
end
|
334
|
+
return [true, msg]
|
335
|
+
end
|
336
|
+
return [false, "Repository #{repo_name} doesn't exist."]
|
337
|
+
end
|
322
338
|
|
323
339
|
end
|
324
340
|
end
|
data/lib/gritano/plugin.rb
CHANGED
@@ -47,7 +47,8 @@ module Gritano
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def self.inherited(subclass)
|
50
|
-
@subclass
|
50
|
+
@subclass ||= Hash.new
|
51
|
+
@subclass[subclass.name] = {klass: subclass, installed: lambda { subclass.check_install }}
|
51
52
|
end
|
52
53
|
|
53
54
|
def self.add_command(command, parameters = "", &block)
|
@@ -80,4 +81,5 @@ module Gritano
|
|
80
81
|
end
|
81
82
|
end
|
82
83
|
|
83
|
-
require File.join(ROOT_PATH, 'gritano/plugin/ssh')
|
84
|
+
require File.join(ROOT_PATH, 'gritano/plugin/ssh')
|
85
|
+
require File.join(ROOT_PATH, 'gritano/plugin/http')
|
@@ -0,0 +1,72 @@
|
|
1
|
+
module Gritano
|
2
|
+
class Http < Plugin
|
3
|
+
|
4
|
+
def self.info
|
5
|
+
"TODO"
|
6
|
+
end
|
7
|
+
|
8
|
+
def on_add
|
9
|
+
config = Config.new(File.join(@home_dir, '.gritano', 'config.yml'))
|
10
|
+
config.http = true
|
11
|
+
config.save
|
12
|
+
end
|
13
|
+
|
14
|
+
def on_remove
|
15
|
+
config = Config.new(File.join(@home_dir, '.gritano', 'config.yml'))
|
16
|
+
config.http = false
|
17
|
+
config.save
|
18
|
+
end
|
19
|
+
|
20
|
+
def self.check_install
|
21
|
+
home = Etc.getpwuid.dir
|
22
|
+
if File.exist?(File.join(home, '.gritano', 'config.yml'))
|
23
|
+
config = Config.new(File.join(home, '.gritano', 'config.yml'))
|
24
|
+
if config.http
|
25
|
+
return config.http
|
26
|
+
else
|
27
|
+
return false
|
28
|
+
end
|
29
|
+
else
|
30
|
+
return false
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def self.servername
|
35
|
+
home = Etc.getpwuid.dir
|
36
|
+
config = Config.new(File.join(home, '.gritano', 'config.yml'))
|
37
|
+
if config.http_servername
|
38
|
+
return config.http_servername
|
39
|
+
else
|
40
|
+
return "http://git.server.com"
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
add_command "help" do |params|
|
45
|
+
Http.help
|
46
|
+
end
|
47
|
+
|
48
|
+
add_command "install", "install_dir" do |params|
|
49
|
+
install_dir, = params
|
50
|
+
puts "[git] Cloning"
|
51
|
+
if system "git clone git://github.com/igorbonadio/gritano-grack.git #{install_dir}"
|
52
|
+
puts "Please, edit the gritano-grack/config.yml file to finish your installation."
|
53
|
+
return "Done"
|
54
|
+
end
|
55
|
+
return "error"
|
56
|
+
end
|
57
|
+
|
58
|
+
add_command "servername:get" do |params|
|
59
|
+
return Http.servername
|
60
|
+
end
|
61
|
+
|
62
|
+
add_command "servername:set", "servername" do |params|
|
63
|
+
servername, = params
|
64
|
+
home = Etc.getpwuid.dir
|
65
|
+
config = Config.new(File.join(home, '.gritano', 'config.yml'))
|
66
|
+
config.http_servername = servername
|
67
|
+
config.save
|
68
|
+
return "done!"
|
69
|
+
end
|
70
|
+
|
71
|
+
end
|
72
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gritano
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.10.
|
4
|
+
version: 0.10.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-05-
|
12
|
+
date: 2013-05-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|
@@ -463,6 +463,7 @@ files:
|
|
463
463
|
- lib/gritano/models/repository.rb
|
464
464
|
- lib/gritano/models/user.rb
|
465
465
|
- lib/gritano/plugin.rb
|
466
|
+
- lib/gritano/plugin/http.rb
|
466
467
|
- lib/gritano/plugin/ssh.rb
|
467
468
|
- spec/cli_spec.rb
|
468
469
|
- spec/config_spec.rb
|
@@ -496,7 +497,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
496
497
|
version: '0'
|
497
498
|
segments:
|
498
499
|
- 0
|
499
|
-
hash:
|
500
|
+
hash: 2308429539270069393
|
500
501
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
501
502
|
none: false
|
502
503
|
requirements:
|