@@ -133,6 +133,12 default: | |||||
133 | scm_bazaar_command: |
|
133 | scm_bazaar_command: | |
134 | scm_darcs_command: |
|
134 | scm_darcs_command: | |
135 |
|
135 | |||
|
136 | # Absolute path to the scm commands errors (stderr) log file. | |||
|
137 | # The default is to log in the 'log' directory of your Redmine instance. | |||
|
138 | # Example: | |||
|
139 | # scm_stderr_log_file: /var/log/redmine_scm_stderr.log | |||
|
140 | scm_stderr_log_file: | |||
|
141 | ||||
136 | # Key used to encrypt sensitive data in the database (SCM and LDAP passwords). |
|
142 | # Key used to encrypt sensitive data in the database (SCM and LDAP passwords). | |
137 | # If you don't want to enable data encryption, just leave it blank. |
|
143 | # If you don't want to enable data encryption, just leave it blank. | |
138 | # WARNING: losing/changing this key will make encrypted data unreadable. |
|
144 | # WARNING: losing/changing this key will make encrypted data unreadable. |
@@ -218,14 +218,19 module Redmine | |||||
218 | Rails.logger |
|
218 | Rails.logger | |
219 | end |
|
219 | end | |
220 |
|
220 | |||
|
221 | # Path to the file where scm stderr output is logged | |||
|
222 | def self.stderr_log_file | |||
|
223 | @stderr_log_path ||= | |||
|
224 | Redmine::Configuration['scm_stderr_log_file'].presence || | |||
|
225 | Rails.root.join("log/#{Rails.env}.scm.stderr.log").to_s | |||
|
226 | end | |||
|
227 | ||||
221 | def self.shellout(cmd, options = {}, &block) |
|
228 | def self.shellout(cmd, options = {}, &block) | |
222 | if logger && logger.debug? |
|
229 | if logger && logger.debug? | |
223 | logger.debug "Shelling out: #{strip_credential(cmd)}" |
|
230 | logger.debug "Shelling out: #{strip_credential(cmd)}" | |
224 | end |
|
231 | end | |
225 | if Rails.env == 'development' |
|
232 | # Capture stderr in a log file | |
226 | # Capture stderr when running in dev environment |
|
233 | cmd = "#{cmd} 2>>#{shell_quote(stderr_log_file)}" | |
227 | cmd = "#{cmd} 2>>#{shell_quote(Rails.root.join('log/scm.stderr.log').to_s)}" |
|
|||
228 | end |
|
|||
229 | begin |
|
234 | begin | |
230 | mode = "r+" |
|
235 | mode = "r+" | |
231 | IO.popen(cmd, mode) do |io| |
|
236 | IO.popen(cmd, mode) do |io| |
General Comments 0
You need to be logged in to leave comments.
Login now