app_reset 0.0.1

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/.gitignore ADDED
@@ -0,0 +1,8 @@
1
+ Gemfile.lock
2
+ .bundle/
3
+ log/*.log
4
+ pkg/
5
+ test/dummy/db/*.sqlite3
6
+ test/dummy/log/*.log
7
+ test/dummy/tmp/
8
+ test/dummy/.sass-cache
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source "http://rubygems.org"
2
+
3
+ gemspec
data/README.md ADDED
@@ -0,0 +1,13 @@
1
+ # AppReset
2
+
3
+ Resets (and if available, seeds) your development and test databases via:
4
+
5
+ rake app:reset
6
+
7
+ ## License
8
+
9
+ This gem is released under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
10
+
11
+ ## Author
12
+
13
+ [Fred Wu](https://github.com/fredwu)
data/Rakefile ADDED
@@ -0,0 +1,27 @@
1
+ #!/usr/bin/env rake
2
+ begin
3
+ require 'bundler/setup'
4
+ rescue LoadError
5
+ puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
6
+ end
7
+ begin
8
+ require 'rdoc/task'
9
+ rescue LoadError
10
+ require 'rdoc/rdoc'
11
+ require 'rake/rdoctask'
12
+ RDoc::Task = Rake::RDocTask
13
+ end
14
+
15
+ RDoc::Task.new(:rdoc) do |rdoc|
16
+ rdoc.rdoc_dir = 'rdoc'
17
+ rdoc.title = 'AppReset'
18
+ rdoc.options << '--line-numbers'
19
+ rdoc.rdoc_files.include('README.rdoc')
20
+ rdoc.rdoc_files.include('lib/**/*.rb')
21
+ end
22
+
23
+
24
+
25
+
26
+ Bundler::GemHelper.install_tasks
27
+
data/app_reset.gemspec ADDED
@@ -0,0 +1,19 @@
1
+ $:.push File.expand_path("../lib", __FILE__)
2
+
3
+ require "app_reset/version"
4
+
5
+ Gem::Specification.new do |s|
6
+ s.name = "app_reset"
7
+ s.version = AppReset::VERSION
8
+ s.authors = ["Fred Wu"]
9
+ s.email = ["ifredwu@gmail.com"]
10
+ s.homepage = "https://github.com/fredwu/app_reset"
11
+ s.summary = "Resets (and if available, seeds) your development and test databases."
12
+ s.description = s.summary
13
+
14
+ s.files = `git ls-files`.split($\)
15
+ s.test_files = Dir['spec/**/*']
16
+
17
+ s.add_dependency "rails"
18
+ s.add_dependency "awesome_print"
19
+ end
@@ -0,0 +1,10 @@
1
+ require 'app_reset'
2
+ require 'rails'
3
+
4
+ module AppReset
5
+ class Railtie < Rails::Railtie
6
+ rake_tasks do
7
+ load 'tasks/app_reset_tasks.rake'
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,3 @@
1
+ module AppReset
2
+ VERSION = "0.0.1"
3
+ end
data/lib/app_reset.rb ADDED
@@ -0,0 +1,3 @@
1
+ module AppReset
2
+ require 'app_reset/railtie' if defined?(Rails)
3
+ end
@@ -0,0 +1,34 @@
1
+ require 'awesome_print'
2
+
3
+ if Rails.env.development? || Rails.env.test?
4
+ host_is_engine = ! Rake::Task.tasks.map { |t| t.name =~ /app:/ }.uniq.compact.empty?
5
+ task_name = host_is_engine ? 'reset' : 'app:reset'
6
+
7
+ desc 'Resets (and if available, seeds) your development and test databases'
8
+ task task_name => :environment do
9
+ ['development', 'test'].each do |env|
10
+ ap '=' * 35
11
+ ap "Resetting #{env} database ..."
12
+ ap '=' * 35
13
+
14
+ # this workaround is faster than spawning subprocesses,
15
+ # but due to the nature of it (it re-enables pretty much all tasks),
16
+ # it probably is a bad idea to have it as a dependency for other tasks
17
+ Rake::Task.tasks.each do |task|
18
+ task.reenable unless task.name == 'load_app'
19
+ end
20
+
21
+ Rails.env = env
22
+
23
+ Rake::Task['db:drop'].invoke
24
+ Rake::Task['db:create'].invoke
25
+ Rake::Task['db:migrate'].invoke
26
+
27
+ # execute the main app's seeds.rb file
28
+ load 'db/seeds.rb'
29
+ end
30
+
31
+ # ensure we reset the Rails.env in case other tasks depend on this
32
+ Rails.env = ENV['RAILS_ENV']
33
+ end
34
+ end
metadata ADDED
@@ -0,0 +1,92 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: app_reset
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Fred Wu
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-07-16 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rails
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: awesome_print
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ description: Resets (and if available, seeds) your development and test databases.
47
+ email:
48
+ - ifredwu@gmail.com
49
+ executables: []
50
+ extensions: []
51
+ extra_rdoc_files: []
52
+ files:
53
+ - .gitignore
54
+ - Gemfile
55
+ - README.md
56
+ - Rakefile
57
+ - app_reset.gemspec
58
+ - lib/app_reset.rb
59
+ - lib/app_reset/railtie.rb
60
+ - lib/app_reset/version.rb
61
+ - lib/tasks/app_reset_tasks.rake
62
+ homepage: https://github.com/fredwu/app_reset
63
+ licenses: []
64
+ post_install_message:
65
+ rdoc_options: []
66
+ require_paths:
67
+ - lib
68
+ required_ruby_version: !ruby/object:Gem::Requirement
69
+ none: false
70
+ requirements:
71
+ - - ! '>='
72
+ - !ruby/object:Gem::Version
73
+ version: '0'
74
+ segments:
75
+ - 0
76
+ hash: 787325732472438340
77
+ required_rubygems_version: !ruby/object:Gem::Requirement
78
+ none: false
79
+ requirements:
80
+ - - ! '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ segments:
84
+ - 0
85
+ hash: 787325732472438340
86
+ requirements: []
87
+ rubyforge_project:
88
+ rubygems_version: 1.8.24
89
+ signing_key:
90
+ specification_version: 3
91
+ summary: Resets (and if available, seeds) your development and test databases.
92
+ test_files: []