schema_dev 1.1.0 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2cdd31b14bba71a19c6c1764fc8f201ead99a3ab
4
- data.tar.gz: 73055b38a000ef5051a423486863e1780a34e4d3
3
+ metadata.gz: a0d9cde1b34a1acfd8971e30649fcafd4bd69a77
4
+ data.tar.gz: 0a5287d96e1c2927ace6029dc415e5d44f2198c3
5
5
  SHA512:
6
- metadata.gz: 3f84a4ca4271970f102f5a807e4398f9886e8ffb899865acdaf38b7046349002f555bdbaf3a97e3df49f20efcc3484f4e57d27ede0d4976d7602f4f63b17003a
7
- data.tar.gz: 6590d0ca2576ce33b39c7dbc242125758ac363f3f1653f170d168042743eb36c1c6b2bd9590ed3a10531852a1a82f392af5b364f339640e3b91823b4d2fb7e1f
6
+ metadata.gz: 09459d47cd0c7c76662a00e4b8f8ea3e9aff984f9dc41fab9934f749bfa240f5a5e2589e574b055a6825e101d3a4a278d3c72b0e6d9404744dee1bd64425f92c
7
+ data.tar.gz: 6e6b276d4ce6e4b9fbf9fb260bb2b3549952044dc01c3434673ed20f73d6d1face55adf0ead6d8e3f28bd737b93d03a526c992ef96cd383721ebc4048628d300
@@ -1,49 +1,4 @@
1
- require_relative 'config'
1
+ require_relative 'tasks/dbms'
2
+ require_relative 'tasks/coveraalls'
2
3
 
3
- dbms = SchemaDev::Config.load.dbms
4
-
5
- DATABASES = %w[schema_plus_test]
6
-
7
- if dbms.any?
8
- {
9
- postgresql: { uservar: 'POSTGRESQL_DB_USER', defaultuser: 'schema_plus', create: "createdb -U '%{user}' %{dbname}", drop: "dropdb -U '%{user}' %{dbname}" },
10
- mysql: { uservar: 'MYSQL_DB_USER', defaultuser: 'schema_plus', create: "mysqladmin -u '%{user}' create %{dbname}", drop: "mysqladmin -u '%{user}' -f drop %{dbname}" }
11
- }.slice(*dbms).each do |dbm, info|
12
- namespace dbm do
13
- user = ENV.fetch info[:uservar], info[:defaultuser]
14
- task :create_databases do
15
- DATABASES.each do |dbname|
16
- system(info[:create] % {user: user, dbname: dbname})
17
- end
18
- end
19
- task :drop_databases do
20
- DATABASES.each do |dbname|
21
- system(info[:drop] % {user: user, dbname: dbname})
22
- end
23
- end
24
- end
25
- end
26
-
27
- desc 'Create test databases'
28
- task :create_databases do
29
- invoke_multiple(dbms, "create_databases")
30
- end
31
-
32
- desc 'Drop test databases'
33
- task :drop_databases do
34
- invoke_multiple(dbms, "drop_databases")
35
- end
36
-
37
- def invoke_multiple(namespaces, task)
38
- failed = namespaces.reject { |adapter|
39
- begin
40
- Rake::Task["#{adapter}:#{task}"].invoke
41
- true
42
- rescue => e
43
- warn "\n#{e}\n"
44
- false
45
- end
46
- }
47
- fail "Failure in: #{failed.join(', ')}" if failed.any?
48
- end
49
- end
4
+ task :travis => :spec_with_coveralls
@@ -0,0 +1,3 @@
1
+ require 'coveralls/rake/task'
2
+ Coveralls::RakeTask.new
3
+ task :spec_with_coveralls => [:spec, 'coveralls:push']
@@ -0,0 +1,49 @@
1
+ require 'schema_dev/config'
2
+
3
+ dbms = SchemaDev::Config.load.dbms
4
+
5
+ DATABASES = %w[schema_plus_test]
6
+
7
+ if dbms.any?
8
+ {
9
+ postgresql: { uservar: 'POSTGRESQL_DB_USER', defaultuser: 'schema_plus', create: "createdb -U '%{user}' %{dbname}", drop: "dropdb -U '%{user}' %{dbname}" },
10
+ mysql: { uservar: 'MYSQL_DB_USER', defaultuser: 'schema_plus', create: "mysqladmin -u '%{user}' create %{dbname}", drop: "mysqladmin -u '%{user}' -f drop %{dbname}" }
11
+ }.slice(*dbms).each do |dbm, info|
12
+ namespace dbm do
13
+ user = ENV.fetch info[:uservar], info[:defaultuser]
14
+ task :create_databases do
15
+ DATABASES.each do |dbname|
16
+ system(info[:create] % {user: user, dbname: dbname})
17
+ end
18
+ end
19
+ task :drop_databases do
20
+ DATABASES.each do |dbname|
21
+ system(info[:drop] % {user: user, dbname: dbname})
22
+ end
23
+ end
24
+ end
25
+ end
26
+
27
+ desc 'Create test databases'
28
+ task :create_databases do
29
+ invoke_multiple(dbms, "create_databases")
30
+ end
31
+
32
+ desc 'Drop test databases'
33
+ task :drop_databases do
34
+ invoke_multiple(dbms, "drop_databases")
35
+ end
36
+
37
+ def invoke_multiple(namespaces, task)
38
+ failed = namespaces.reject { |adapter|
39
+ begin
40
+ Rake::Task["#{adapter}:#{task}"].invoke
41
+ true
42
+ rescue => e
43
+ warn "\n#{e}\n"
44
+ false
45
+ end
46
+ }
47
+ fail "Failure in: #{failed.join(', ')}" if failed.any?
48
+ end
49
+ end
@@ -25,10 +25,11 @@ module SchemaDev
25
25
  travis["rvm"] = config.ruby.sort
26
26
  travis["gemfile"] = gemfiles.sort
27
27
  if config.dbms.any?
28
+ travis["env"] = env
28
29
  travis["before_script"] = 'bundle exec rake create_databases'
29
30
  travis["after_script"] = 'bundle exec rake drop_databases'
30
- travis["env"] = env
31
31
  end
32
+ travis["script"] = "bundle exec rake travis"
32
33
  travis["notifications"] = { "email" => config.notify } if config.notify.any?
33
34
  travis["matrix"] = { "exclude" => exclude.sort_by{|ex| [ex["rvm"], ex["gemfile"]]} } if exclude.any?
34
35
  }
@@ -1,3 +1,3 @@
1
1
  module SchemaDev
2
- VERSION = "1.1.0"
2
+ VERSION = "1.2.0"
3
3
  end
@@ -19,6 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ["lib"]
20
20
 
21
21
  spec.add_dependency "activesupport"
22
+ spec.add_dependency "coveralls"
22
23
  spec.add_dependency "fastandand"
23
24
  spec.add_dependency "hash_keyword_args"
24
25
  spec.add_dependency "its-it"
@@ -24,9 +24,10 @@ gemfile:
24
24
  - gemfiles/rails-4.0/Gemfile.sqlite3
25
25
  - gemfiles/rails-4.1/Gemfile.postgresql
26
26
  - gemfiles/rails-4.1/Gemfile.sqlite3
27
+ env: POSTGRESQL_DB_USER=postgres
27
28
  before_script: bundle exec rake create_databases
28
29
  after_script: bundle exec rake drop_databases
29
- env: POSTGRESQL_DB_USER=postgres
30
+ script: bundle exec rake travis
30
31
  notifications:
31
32
  email:
32
33
  - me@example.com
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schema_dev
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ronen barzel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-11 00:00:00.000000000 Z
11
+ date: 2014-12-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: coveralls
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: fastandand
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -176,6 +190,8 @@ files:
176
190
  - lib/schema_dev/ruby_selector.rb
177
191
  - lib/schema_dev/runner.rb
178
192
  - lib/schema_dev/tasks.rb
193
+ - lib/schema_dev/tasks/coveralls.rb
194
+ - lib/schema_dev/tasks/dbms.rb
179
195
  - lib/schema_dev/travis.rb
180
196
  - lib/schema_dev/version.rb
181
197
  - schema_dev.gemspec