##// END OF EJS Templates
reposman: change #log arguments....
Jean-Philippe Lang -
r1873:36aeeb99d901
parent child
Show More
@@ -90,9 +90,10 $test = false
90 $force = false
90 $force = false
91 $scm = 'Subversion'
91 $scm = 'Subversion'
92
92
93 def log(text,level=0, exit=false)
93 def log(text, options={})
94 level = options[:level] || 0
94 puts text unless $quiet or level > $verbose
95 puts text unless $quiet or level > $verbose
95 exit 1 if exit
96 exit 1 if options[:exit]
96 end
97 end
97
98
98 def system_or_raise(command)
99 def system_or_raise(command)
@@ -126,7 +127,7 begin
126 when '--redmine-host'; $redmine_host = arg.dup
127 when '--redmine-host'; $redmine_host = arg.dup
127 when '--owner'; $svn_owner = arg.dup; $use_groupid = false;
128 when '--owner'; $svn_owner = arg.dup; $use_groupid = false;
128 when '--url'; $svn_url = arg.dup
129 when '--url'; $svn_url = arg.dup
129 when '--scm'; $scm = arg.dup.capitalize; log("Invalid SCM: #{$scm}", 0, true) unless SUPPORTED_SCM.include?($scm)
130 when '--scm'; $scm = arg.dup.capitalize; log("Invalid SCM: #{$scm}", :exit => true) unless SUPPORTED_SCM.include?($scm)
130 when '--command'; $command = arg.dup
131 when '--command'; $command = arg.dup
131 when '--verbose'; $verbose += 1
132 when '--verbose'; $verbose += 1
132 when '--test'; $test = true
133 when '--test'; $test = true
@@ -149,7 +150,7 if $command.nil?
149 begin
150 begin
150 scm_module = SCM.const_get($scm)
151 scm_module = SCM.const_get($scm)
151 rescue
152 rescue
152 log("Please use --command option to specify how to create a #{$scm} repository.", 0, true)
153 log("Please use --command option to specify how to create a #{$scm} repository.", :exit => true)
153 end
154 end
154 end
155 end
155
156
@@ -160,10 +161,10 if ($redmine_host.empty? or $repos_base.empty?)
160 end
161 end
161
162
162 unless File.directory?($repos_base)
163 unless File.directory?($repos_base)
163 log("directory '#{$repos_base}' doesn't exists", 0, true)
164 log("directory '#{$repos_base}' doesn't exists", :exit => true)
164 end
165 end
165
166
166 log("querying Redmine for projects...", 1);
167 log("querying Redmine for projects...", :level => 1);
167
168
168 $redmine_host.gsub!(/^/, "http://") unless $redmine_host.match("^https?://")
169 $redmine_host.gsub!(/^/, "http://") unless $redmine_host.match("^https?://")
169 $redmine_host.gsub!(/\/$/, '')
170 $redmine_host.gsub!(/\/$/, '')
@@ -173,16 +174,16 wsdl_url = "#{$redmine_host}/sys/service.wsdl";
173 begin
174 begin
174 soap = SOAP::WSDLDriverFactory.new(wsdl_url).create_rpc_driver
175 soap = SOAP::WSDLDriverFactory.new(wsdl_url).create_rpc_driver
175 rescue => e
176 rescue => e
176 log("Unable to connect to #{wsdl_url} : #{e}", 0, true)
177 log("Unable to connect to #{wsdl_url} : #{e}", :exit => true)
177 end
178 end
178
179
179 projects = soap.ProjectsWithRepositoryEnabled
180 projects = soap.ProjectsWithRepositoryEnabled
180
181
181 if projects.nil?
182 if projects.nil?
182 log('no project found, perhaps you forgot to "Enable WS for repository management"', 0, true)
183 log('no project found, perhaps you forgot to "Enable WS for repository management"', :exit => true)
183 end
184 end
184
185
185 log("retrieved #{projects.size} projects", 1)
186 log("retrieved #{projects.size} projects", :level => 1)
186
187
187 def set_owner_and_rights(project, repos_path, &block)
188 def set_owner_and_rights(project, repos_path, &block)
188 if RUBY_PLATFORM =~ /mswin/
189 if RUBY_PLATFORM =~ /mswin/
@@ -209,7 +210,7 def owner_name(file)
209 end
210 end
210
211
211 projects.each do |project|
212 projects.each do |project|
212 log("treating project #{project.name}", 1)
213 log("treating project #{project.name}", :level => 1)
213
214
214 if project.identifier.empty?
215 if project.identifier.empty?
215 log("\tno identifier for project #{project.name}")
216 log("\tno identifier for project #{project.name}")
@@ -247,7 +248,7 projects.each do |project|
247 # if repository is already declared in redmine, we don't create
248 # if repository is already declared in redmine, we don't create
248 # unless user use -f with reposman
249 # unless user use -f with reposman
249 if $force == false and not project.repository.nil?
250 if $force == false and not project.repository.nil?
250 log("\trepository for project #{project.identifier} already exists in Redmine", 1)
251 log("\trepository for project #{project.identifier} already exists in Redmine", :level => 1)
251 next
252 next
252 end
253 end
253
254
General Comments 0
You need to be logged in to leave comments. Login now