redmine_plugin_support 0.0.4 → 0.0.5
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/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.0.
|
1
|
+
0.0.5
|
@@ -7,22 +7,16 @@ require 'rake/tasklib'
|
|
7
7
|
require 'redmine_plugin_support/redmine_helper'
|
8
8
|
require 'redmine_plugin_support/general_task'
|
9
9
|
require 'redmine_plugin_support/environment_task'
|
10
|
-
require 'redmine_plugin_support/database_task'
|
11
|
-
require 'redmine_plugin_support/cucumber_task'
|
12
|
-
require 'redmine_plugin_support/metrics_task'
|
13
|
-
require 'redmine_plugin_support/rdoc_task'
|
14
|
-
require 'redmine_plugin_support/release_task'
|
15
|
-
require 'redmine_plugin_support/rspec_task'
|
16
|
-
require 'redmine_plugin_support/stats_task'
|
17
|
-
require 'redmine_plugin_support/test_unit_task'
|
18
10
|
|
19
11
|
module RedminePluginSupport
|
20
|
-
VERSION = '0.0.
|
12
|
+
VERSION = '0.0.5'
|
21
13
|
|
22
14
|
@@options = { }
|
23
15
|
|
24
16
|
class Base
|
25
17
|
include Singleton
|
18
|
+
include Rake::DSL
|
19
|
+
extend Rake::DSL
|
26
20
|
|
27
21
|
attr_accessor :project_name
|
28
22
|
attr_accessor :tasks
|
@@ -49,20 +43,28 @@ module RedminePluginSupport
|
|
49
43
|
plugin.tasks.each do |task|
|
50
44
|
case task
|
51
45
|
when :db
|
46
|
+
require 'redmine_plugin_support/database_task'
|
52
47
|
RedminePluginSupport::DatabaseTask.new(:db)
|
53
48
|
when :doc
|
49
|
+
require 'redmine_plugin_support/rdoc_task'
|
54
50
|
RedminePluginSupport::RDocTask.new(:doc)
|
55
51
|
when :spec
|
52
|
+
require 'redmine_plugin_support/rspec_task'
|
56
53
|
RedminePluginSupport::RspecTask.new(:spec)
|
57
54
|
when :test
|
55
|
+
require 'redmine_plugin_support/test_unit_task'
|
58
56
|
RedminePluginSupport::TestUnitTask.new(:test)
|
59
57
|
when :cucumber
|
58
|
+
require 'redmine_plugin_support/cucumber_task'
|
60
59
|
RedminePluginSupport::CucumberTask.new(:features)
|
61
60
|
when :release
|
61
|
+
require 'redmine_plugin_support/release_task'
|
62
62
|
RedminePluginSupport::ReleaseTask.new(:release)
|
63
63
|
when :stats
|
64
|
+
require 'redmine_plugin_support/stats_task'
|
64
65
|
RedminePluginSupport::StatsTask.new(:stats)
|
65
66
|
when :metrics
|
67
|
+
require 'redmine_plugin_support/metrics_task'
|
66
68
|
RedminePluginSupport::MetricsTask.new(:metrics)
|
67
69
|
when :clean
|
68
70
|
require 'rake/clean'
|
@@ -1,8 +1,9 @@
|
|
1
|
-
require 'cucumber/rake/task'
|
2
|
-
|
3
1
|
module RedminePluginSupport
|
4
2
|
class CucumberTask < GeneralTask
|
5
3
|
def define
|
4
|
+
|
5
|
+
require 'cucumber/rake/task'
|
6
|
+
|
6
7
|
# TODO: Requires webrat to be installed as a plugin....
|
7
8
|
Cucumber::Rake::Task.new(:features) do |t|
|
8
9
|
t.cucumber_opts = "--format pretty"
|
@@ -174,6 +174,55 @@ module RedminePluginSupport
|
|
174
174
|
end
|
175
175
|
end
|
176
176
|
|
177
|
+
def create_database(config)
|
178
|
+
begin
|
179
|
+
if config['adapter'] =~ /sqlite/
|
180
|
+
if File.exist?(config['database'])
|
181
|
+
$stderr.puts "#{config['database']} already exists"
|
182
|
+
else
|
183
|
+
begin
|
184
|
+
# Create the SQLite database
|
185
|
+
ActiveRecord::Base.establish_connection(config)
|
186
|
+
ActiveRecord::Base.connection
|
187
|
+
rescue
|
188
|
+
$stderr.puts $!, *($!.backtrace)
|
189
|
+
$stderr.puts "Couldn't create database for #{config.inspect}"
|
190
|
+
end
|
191
|
+
end
|
192
|
+
return # Skip the else clause of begin/rescue
|
193
|
+
else
|
194
|
+
ActiveRecord::Base.establish_connection(config)
|
195
|
+
ActiveRecord::Base.connection
|
196
|
+
end
|
197
|
+
rescue
|
198
|
+
case config['adapter']
|
199
|
+
when 'mysql'
|
200
|
+
@charset = ENV['CHARSET'] || 'utf8'
|
201
|
+
@collation = ENV['COLLATION'] || 'utf8_unicode_ci'
|
202
|
+
begin
|
203
|
+
ActiveRecord::Base.establish_connection(config.merge('database' => nil))
|
204
|
+
ActiveRecord::Base.connection.create_database(config['database'], :charset => (config['charset'] || @charset), :collation => (config['collation'] || @collation))
|
205
|
+
ActiveRecord::Base.establish_connection(config)
|
206
|
+
rescue
|
207
|
+
$stderr.puts "Couldn't create database for #{config.inspect}, charset: #{config['charset'] || @charset}, collation: #{config['collation'] || @collation} (if you set the charset manually, make sure you have a matching collation)"
|
208
|
+
end
|
209
|
+
when 'postgresql'
|
210
|
+
@encoding = config[:encoding] || ENV['CHARSET'] || 'utf8'
|
211
|
+
begin
|
212
|
+
ActiveRecord::Base.establish_connection(config.merge('database' => 'postgres', 'schema_search_path' => 'public'))
|
213
|
+
ActiveRecord::Base.connection.create_database(config['database'], config.merge('encoding' => @encoding))
|
214
|
+
ActiveRecord::Base.establish_connection(config)
|
215
|
+
rescue
|
216
|
+
$stderr.puts $!, *($!.backtrace)
|
217
|
+
$stderr.puts "Couldn't create database for #{config.inspect}"
|
218
|
+
end
|
219
|
+
end
|
220
|
+
else
|
221
|
+
$stderr.puts "#{config['database']} already exists"
|
222
|
+
end
|
223
|
+
end
|
224
|
+
|
225
|
+
|
177
226
|
def set_firebird_env(config)
|
178
227
|
ENV["ISC_USER"] = config["username"].to_s if config["username"]
|
179
228
|
ENV["ISC_PASSWORD"] = config["password"].to_s if config["password"]
|
@@ -1,11 +1,11 @@
|
|
1
|
-
gem 'rspec'
|
2
|
-
gem 'rspec-rails'
|
3
|
-
require 'spec/rake/spectask'
|
4
|
-
|
5
1
|
module RedminePluginSupport
|
6
2
|
class RspecTask < GeneralTask
|
7
3
|
def define
|
8
4
|
|
5
|
+
gem 'rspec'
|
6
|
+
gem 'rspec-rails'
|
7
|
+
require 'spec/rake/spectask'
|
8
|
+
|
9
9
|
desc "Run all specs in spec directory (excluding plugin specs)"
|
10
10
|
Spec::Rake::SpecTask.new(:spec) do |t|
|
11
11
|
t.spec_opts = ['--options', "\"#{RedmineHelper.plugin_root}/spec/spec.opts\""]
|
metadata
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: redmine_plugin_support
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 21
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 0
|
7
8
|
- 0
|
8
|
-
-
|
9
|
-
version: 0.0.
|
9
|
+
- 5
|
10
|
+
version: 0.0.5
|
10
11
|
platform: ruby
|
11
12
|
authors:
|
12
13
|
- Eric Davis
|
@@ -14,16 +15,18 @@ autorequire:
|
|
14
15
|
bindir: bin
|
15
16
|
cert_chain: []
|
16
17
|
|
17
|
-
date:
|
18
|
+
date: 2011-12-14 00:00:00 -08:00
|
18
19
|
default_executable:
|
19
20
|
dependencies:
|
20
21
|
- !ruby/object:Gem::Dependency
|
21
22
|
name: thoughtbot-shoulda
|
22
23
|
prerelease: false
|
23
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
24
26
|
requirements:
|
25
27
|
- - ">="
|
26
28
|
- !ruby/object:Gem::Version
|
29
|
+
hash: 3
|
27
30
|
segments:
|
28
31
|
- 0
|
29
32
|
version: "0"
|
@@ -66,31 +69,34 @@ homepage: http://github.com/edavis10/redmine_plugin_support
|
|
66
69
|
licenses: []
|
67
70
|
|
68
71
|
post_install_message:
|
69
|
-
rdoc_options:
|
70
|
-
|
72
|
+
rdoc_options: []
|
73
|
+
|
71
74
|
require_paths:
|
72
75
|
- lib
|
73
76
|
required_ruby_version: !ruby/object:Gem::Requirement
|
77
|
+
none: false
|
74
78
|
requirements:
|
75
79
|
- - ">="
|
76
80
|
- !ruby/object:Gem::Version
|
81
|
+
hash: 3
|
77
82
|
segments:
|
78
83
|
- 0
|
79
84
|
version: "0"
|
80
85
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
86
|
+
none: false
|
81
87
|
requirements:
|
82
88
|
- - ">="
|
83
89
|
- !ruby/object:Gem::Version
|
90
|
+
hash: 3
|
84
91
|
segments:
|
85
92
|
- 0
|
86
93
|
version: "0"
|
87
94
|
requirements: []
|
88
95
|
|
89
96
|
rubyforge_project: redmine_plugin_support
|
90
|
-
rubygems_version: 1.3.
|
97
|
+
rubygems_version: 1.3.7
|
91
98
|
signing_key:
|
92
99
|
specification_version: 3
|
93
100
|
summary: Libraries to automate the creation and management of Redmine plugins
|
94
|
-
test_files:
|
95
|
-
|
96
|
-
- test/redmine_plugin_support_test.rb
|
101
|
+
test_files: []
|
102
|
+
|