File tree 11 files changed +42
-31
lines changed
forms/plugin_settings_validation
views/settings/redmine_git_hosting
11 files changed +42
-31
lines changed Original file line number Diff line number Diff line change @@ -9,18 +9,16 @@ module StorageConfig
9
9
add_accessor :gitolite_global_storage_dir ,
10
10
:gitolite_redmine_storage_dir ,
11
11
:gitolite_recycle_bin_dir ,
12
- :gitolite_local_code_dir ,
13
- :gitolite_lib_dir
12
+ :gitolite_local_code_dir
14
13
15
14
before_validation do
16
15
self . gitolite_global_storage_dir = strip_value ( gitolite_global_storage_dir )
17
16
self . gitolite_redmine_storage_dir = strip_value ( gitolite_redmine_storage_dir )
18
17
self . gitolite_recycle_bin_dir = strip_value ( gitolite_recycle_bin_dir )
19
18
self . gitolite_local_code_dir = strip_value ( gitolite_local_code_dir )
20
- self . gitolite_lib_dir = strip_value ( gitolite_lib_dir )
21
19
end
22
20
23
- validates_presence_of :gitolite_global_storage_dir , :gitolite_recycle_bin_dir , :gitolite_lib_dir
21
+ validates_presence_of :gitolite_global_storage_dir , :gitolite_recycle_bin_dir
24
22
validates_presence_of :gitolite_local_code_dir , if : Proc . new { RedmineGitHosting ::Config . gitolite_version == 3 }
25
23
26
24
validates_each PATHS_TO_VALIDATE do |record , attr , value |
Original file line number Diff line number Diff line change 3
3
- gitolite_redmine_storage_dir = RedmineGitHosting::Config.get_setting(:gitolite_redmine_storage_dir)
4
4
- gitolite_recycle_bin_dir = RedmineGitHosting::Config.get_setting(:gitolite_recycle_bin_dir)
5
5
- gitolite_local_code_dir = RedmineGitHosting::Config.get_setting(:gitolite_local_code_dir)
6
- - gitolite_lib_dir = RedmineGitHosting::Config.get_setting(:gitolite_lib_dir)
7
6
8
7
%h3 = l(:label_gitolite_storage_config)
9
8
40
39
= surround '(', ')' do
41
40
= l(:label_gitolite_local_code_dir_desc) + ','
42
41
= link_to 'Gitolite non-core programs', 'http://gitolite.com/gitolite/non-core.html#localcode', target: 'blank'
43
-
44
- %p
45
- %label = l(:label_gitolite_lib_dir)
46
- = text_field_tag 'settings[gitolite_lib_dir]', gitolite_lib_dir, size: 60
47
- %br
48
- %em
49
- = surround '(', ')' do
50
- = l(:label_gitolite_lib_dir_desc)
Original file line number Diff line number Diff line change 20
20
%td= l(:label_sudo_redmine_to_gitolite_user)
21
21
%td= image_tag (RedmineGitHosting::Config.can_redmine_sudo_to_gitolite_user? ? 'true.png' : 'exclamation.png')
22
22
23
+ %tr
24
+ %td= l(:label_gitolite_bin_dir)
25
+ %td
26
+ - if RedmineGitHosting::Config.gitolite_bin_dir
27
+ %span{ class: 'label label-success' }= RedmineGitHosting::Config.gitolite_bin_dir
28
+ - else
29
+ = image_tag('exclamation.png')
30
+
31
+ %tr
32
+ %td= l(:label_gitolite_lib_dir)
33
+ %td
34
+ - if RedmineGitHosting::Config.gitolite_lib_dir
35
+ %span{ class: 'label label-success' }= RedmineGitHosting::Config.gitolite_lib_dir
36
+ - else
37
+ = image_tag('exclamation.png')
38
+
23
39
- gitolite_checks = RedmineGitHosting::Config.check_hooks_install!
24
40
25
41
%tr
Original file line number Diff line number Diff line change 28
28
label_gitolite_redmine_storage_dir_desc : Relative to Gitolite repositories base path
29
29
label_gitolite_local_code_dir : Gitolite non-core hooks directory
30
30
label_gitolite_local_code_dir_desc : Relative to Gitolite user home
31
- label_gitolite_lib_dir : Gitolite librairies directory
32
- label_gitolite_lib_dir_desc : /usr/share/gitolite3/lib under Debian, bin/lib/ if installed by hand
33
31
34
32
# Gitolite Config File
35
33
label_tab_config_file : Configuration file
170
168
label_gitolite_repository_count : Count of physical repositories in Gitolite
171
169
label_gitolite_rugged_features : Rugged compiled features
172
170
label_gitolite_libgit2_version : libgit2 version
171
+ label_gitolite_bin_dir : Gitolite binaries directory
172
+ label_gitolite_lib_dir : Gitolite librairies directory
173
173
174
174
# Recycle Bin
175
175
label_tab_gitolite_recycle_bin : Recycle Bin
Original file line number Diff line number Diff line change 28
28
label_gitolite_redmine_storage_dir_desc : Relativa al directorio de repositorios de Gitolite
29
29
label_gitolite_local_code_dir : Carpeta de hooks non-core de Gitolite
30
30
label_gitolite_local_code_dir_desc : Relativa al directorio del usuario de Gitolite
31
- label_gitolite_lib_dir : Carpeta de bibliotecas de Gitolite
32
- label_gitolite_lib_dir_desc : /usr/share/gitolite3/lib en Debian, bin/lib/ si se ha instalado a mano
33
31
34
32
# Gitolite Config File
35
33
label_tab_config_file : Fichero de configuración
169
167
label_gitolite_repository_count : Recuento de repositorios físicos en Gitolite
170
168
label_gitolite_rugged_features : Características de Rugged compiladas
171
169
label_gitolite_libgit2_version : Versión de libgit2
170
+ label_gitolite_bin_dir : Carpeta de binarios de Gitolite
171
+ label_gitolite_lib_dir : Carpeta de bibliotecas de Gitolite
172
172
173
173
# Recycle Bin
174
174
label_tab_gitolite_recycle_bin : Papelera de reciclaje
Original file line number Diff line number Diff line change 28
28
label_gitolite_redmine_storage_dir_desc : Relatif au répertoire personnel de l'utilisateur Gitolite
29
29
label_gitolite_local_code_dir : Répertoire de stockage des hooks non-core
30
30
label_gitolite_local_code_dir_desc : Relatif au répertoire personnel de l'utilisateur Gitolite
31
- label_gitolite_lib_dir : Répertoire contenant les librairies Gitolite
32
- label_gitolite_lib_dir_desc : /usr/share/gitolite3/lib sous Debian, bin/lib/ si installé à la main
33
31
34
32
# Gitolite Config File
35
33
label_tab_config_file : Fichier de configuration
170
168
label_gitolite_repository_count : Nombre de dépôts physiques dans Gitolite
171
169
label_gitolite_rugged_features : Fonctionnalités compilées dans Rugged
172
170
label_gitolite_libgit2_version : Version de libgit2
171
+ label_gitolite_bin_dir : Répertoire des binaires Gitolite
172
+ label_gitolite_lib_dir : Répertoire des librairies Gitolite
173
173
174
174
# Recycle Bin
175
175
label_tab_gitolite_recycle_bin : Corbeille
Original file line number Diff line number Diff line change 28
28
label_gitolite_redmine_storage_dir_desc : Относительно каталога репозиториев Gitolite
29
29
label_gitolite_local_code_dir : Каталог внешних хуков Gitolite
30
30
label_gitolite_local_code_dir_desc : Относительно домашнего каталога пользователя Gitolite
31
- label_gitolite_lib_dir : Каталог с библиотеками Gitolite
32
- label_gitolite_lib_dir_desc : /usr/share/gitolite3/lib в Debian, bin/lib/ если была ручная установка
33
31
34
32
# Gitolite Config File
35
33
label_tab_config_file : Конфиг. файл
169
167
label_gitolite_repository_count : Количество репозиториев в Gitolite
170
168
label_gitolite_rugged_features : Rugged скомпилирован с поддержкой
171
169
label_gitolite_libgit2_version : Версия libgit2
170
+ label_gitolite_bin_dir : Каталог с двоичный Gitolite
171
+ label_gitolite_lib_dir : Каталог с библиотеками Gitolite
172
172
173
173
# Recycle Bin
174
174
label_tab_gitolite_recycle_bin : Корзина
Original file line number Diff line number Diff line change @@ -11,7 +11,6 @@ gitolite_global_storage_dir: 'repositories/'
11
11
gitolite_redmine_storage_dir : ' '
12
12
gitolite_recycle_bin_dir : ' recycle_bin/'
13
13
gitolite_local_code_dir : ' local/'
14
- gitolite_lib_dir : ' bin/lib/'
15
14
16
15
# Gitolite Config File
17
16
gitolite_config_file : ' gitolite.conf'
Original file line number Diff line number Diff line change @@ -153,7 +153,8 @@ def git_command_with_chdir
153
153
def smart_http_args
154
154
[
155
155
'env' ,
156
- "GL_LIBDIR=#{ RedmineGitHosting ::Config . gitolite_lib_dir_path } " ,
156
+ "GL_BINDIR=#{ RedmineGitHosting ::Config . gitolite_bin_dir } " ,
157
+ "GL_LIBDIR=#{ RedmineGitHosting ::Config . gitolite_lib_dir } " ,
157
158
"GL_REPO=#{ repository_object . gitolite_repository_name } " ,
158
159
"GL_USER=#{ @env [ 'REMOTE_USER' ] } "
159
160
]
Original file line number Diff line number Diff line change @@ -15,6 +15,16 @@ def gitolite_infos
15
15
end
16
16
17
17
18
+ def sudo_gitolite_query_rc ( param )
19
+ begin
20
+ sudo_capture ( 'gitolite' , 'query-rc' , param )
21
+ rescue RedmineGitHosting ::Error ::GitoliteCommandException => e
22
+ logger . error ( "Can't retrieve Gitolite param : #{ e . output } " )
23
+ nil
24
+ end
25
+ end
26
+
27
+
18
28
def sudo_update_gitolite!
19
29
if gitolite_command . nil?
20
30
logger . error ( "gitolite_command is nil, can't update Gitolite !" )
Original file line number Diff line number Diff line change @@ -28,17 +28,13 @@ def gitolite_home_dir
28
28
end
29
29
30
30
31
- def gitolite_lib_dir
32
- get_setting ( :gitolite_lib_dir )
31
+ def gitolite_bin_dir
32
+ @gitolite_bin_dir ||= RedmineGitHosting :: Commands . sudo_gitolite_query_rc ( 'GL_BINDIR' )
33
33
end
34
34
35
35
36
- def gitolite_lib_dir_path
37
- if gitolite_lib_dir . starts_with? ( '/' )
38
- gitolite_lib_dir
39
- else
40
- File . join ( gitolite_home_dir , gitolite_lib_dir )
41
- end
36
+ def gitolite_lib_dir
37
+ @gitolite_lib_dir ||= RedmineGitHosting ::Commands . sudo_gitolite_query_rc ( 'GL_LIBDIR' )
42
38
end
43
39
44
40
You can’t perform that action at this time.
0 commit comments