tidy_reset 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/.document +5 -0
- data/Gemfile +16 -0
- data/Gemfile.lock +90 -0
- data/LICENSE.txt +3 -0
- data/README.md +73 -0
- data/Rakefile +49 -0
- data/VERSION +1 -0
- data/lib/tidy_reset/configuration.rb +11 -0
- data/lib/tidy_reset/tasks/tidy.rake +78 -0
- data/lib/tidy_reset/version.rb +3 -0
- data/lib/tidy_reset.rb +49 -0
- data/test/helper.rb +34 -0
- data/test/test_tidy_reset.rb +7 -0
- data/tidy_reset.gemspec +67 -0
- metadata +143 -0
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ODI1ZDgyOTFlYzg2MjY2ZTIzNWRlZmZmNGRjNWU1NzQ2NjJjZWVhMQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
MzQzY2VlMmYxYjU2M2JhMDc5ZjE2MmJmZTE5NjFhZDI5MjlkYWE0ZA==
|
7
|
+
!binary "U0hBNTEy":
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
YThhOGE0ZmVhZjhmMDhjZGZlYTcwMDAwNTEyOTllZjZjMjBmYTI1ZTZlZDAy
|
10
|
+
NDdhYzVlYWQzODg5NGExYTU4MDRiNjBhYjM1OWZmYjE0ODA0M2JjNTk5MGY5
|
11
|
+
MDRmNjc0ODY5MzgwY2Y2MDViNWYyMzE5MTVhNDQ0MDY1Y2Y4MjQ=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NjZlOTAzYWZmZTI3NjE5NTNmOTEyY2NmNDFlNmMzMmIwZDg4N2VhODNiN2Ix
|
14
|
+
Y2M4NjY2YWRhMjgzOGM5ZGUxYmU2YjllNzkxY2JmZTc5ZWM0NWViNGIyM2Zi
|
15
|
+
ZDYxNmJlNTFlNzgwMjE0NjU1MjY2MmMxMjkxNzBjNzY0NzQ2MDM=
|
data/.document
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
source "http://rubygems.org"
|
2
|
+
# Add dependencies required to use your gem here.
|
3
|
+
# Example:
|
4
|
+
# gem "activesupport", ">= 2.3.5"
|
5
|
+
|
6
|
+
gem "bundler", "~> 1.0"
|
7
|
+
gem "activerecord", "~> 4.0.5"
|
8
|
+
|
9
|
+
# Add dependencies to develop your gem here.
|
10
|
+
# Include everything needed to run rake, tests, features, etc.
|
11
|
+
group :development do
|
12
|
+
gem "shoulda", ">= 0"
|
13
|
+
gem "rdoc", "~> 3.12"
|
14
|
+
gem "jeweler", "~> 2.0.1"
|
15
|
+
gem "simplecov", ">= 0"
|
16
|
+
end
|
data/Gemfile.lock
ADDED
@@ -0,0 +1,90 @@
|
|
1
|
+
GEM
|
2
|
+
remote: http://rubygems.org/
|
3
|
+
specs:
|
4
|
+
activemodel (4.0.5)
|
5
|
+
activesupport (= 4.0.5)
|
6
|
+
builder (~> 3.1.0)
|
7
|
+
activerecord (4.0.5)
|
8
|
+
activemodel (= 4.0.5)
|
9
|
+
activerecord-deprecated_finders (~> 1.0.2)
|
10
|
+
activesupport (= 4.0.5)
|
11
|
+
arel (~> 4.0.0)
|
12
|
+
activerecord-deprecated_finders (1.0.3)
|
13
|
+
activesupport (4.0.5)
|
14
|
+
i18n (~> 0.6, >= 0.6.9)
|
15
|
+
minitest (~> 4.2)
|
16
|
+
multi_json (~> 1.3)
|
17
|
+
thread_safe (~> 0.1)
|
18
|
+
tzinfo (~> 0.3.37)
|
19
|
+
addressable (2.3.6)
|
20
|
+
arel (4.0.2)
|
21
|
+
builder (3.1.4)
|
22
|
+
descendants_tracker (0.0.4)
|
23
|
+
thread_safe (~> 0.3, >= 0.3.1)
|
24
|
+
docile (1.1.5)
|
25
|
+
faraday (0.9.0)
|
26
|
+
multipart-post (>= 1.2, < 3)
|
27
|
+
git (1.2.7)
|
28
|
+
github_api (0.11.3)
|
29
|
+
addressable (~> 2.3)
|
30
|
+
descendants_tracker (~> 0.0.1)
|
31
|
+
faraday (~> 0.8, < 0.10)
|
32
|
+
hashie (>= 1.2)
|
33
|
+
multi_json (>= 1.7.5, < 2.0)
|
34
|
+
nokogiri (~> 1.6.0)
|
35
|
+
oauth2
|
36
|
+
hashie (3.0.0)
|
37
|
+
highline (1.6.21)
|
38
|
+
i18n (0.6.9)
|
39
|
+
jeweler (2.0.1)
|
40
|
+
builder
|
41
|
+
bundler (>= 1.0)
|
42
|
+
git (>= 1.2.5)
|
43
|
+
github_api
|
44
|
+
highline (>= 1.6.15)
|
45
|
+
nokogiri (>= 1.5.10)
|
46
|
+
rake
|
47
|
+
rdoc
|
48
|
+
json (1.8.1)
|
49
|
+
jwt (1.0.0)
|
50
|
+
mini_portile (0.6.0)
|
51
|
+
minitest (4.7.5)
|
52
|
+
multi_json (1.10.1)
|
53
|
+
multi_xml (0.5.5)
|
54
|
+
multipart-post (2.0.0)
|
55
|
+
nokogiri (1.6.2.1)
|
56
|
+
mini_portile (= 0.6.0)
|
57
|
+
oauth2 (0.9.4)
|
58
|
+
faraday (>= 0.8, < 0.10)
|
59
|
+
jwt (~> 1.0)
|
60
|
+
multi_json (~> 1.3)
|
61
|
+
multi_xml (~> 0.5)
|
62
|
+
rack (~> 1.2)
|
63
|
+
rack (1.5.2)
|
64
|
+
rake (10.3.2)
|
65
|
+
rdoc (3.12.2)
|
66
|
+
json (~> 1.4)
|
67
|
+
shoulda (3.5.0)
|
68
|
+
shoulda-context (~> 1.0, >= 1.0.1)
|
69
|
+
shoulda-matchers (>= 1.4.1, < 3.0)
|
70
|
+
shoulda-context (1.2.1)
|
71
|
+
shoulda-matchers (2.6.1)
|
72
|
+
activesupport (>= 3.0.0)
|
73
|
+
simplecov (0.8.2)
|
74
|
+
docile (~> 1.1.0)
|
75
|
+
multi_json
|
76
|
+
simplecov-html (~> 0.8.0)
|
77
|
+
simplecov-html (0.8.0)
|
78
|
+
thread_safe (0.3.4)
|
79
|
+
tzinfo (0.3.39)
|
80
|
+
|
81
|
+
PLATFORMS
|
82
|
+
ruby
|
83
|
+
|
84
|
+
DEPENDENCIES
|
85
|
+
activerecord (~> 4.0.5)
|
86
|
+
bundler (~> 1.0)
|
87
|
+
jeweler (~> 2.0.1)
|
88
|
+
rdoc (~> 3.12)
|
89
|
+
shoulda
|
90
|
+
simplecov
|
data/LICENSE.txt
ADDED
data/README.md
ADDED
@@ -0,0 +1,73 @@
|
|
1
|
+
# TidyReset
|
2
|
+
|
3
|
+
## Disclamer
|
4
|
+
|
5
|
+
This is written for the Thinknear organization. It is not intended and will not be supported for other projeccts. Use at your own risk.
|
6
|
+
|
7
|
+
## Using TidyReset rake tasks
|
8
|
+
|
9
|
+
TidyReset expects there to be a heroku app called #{your_app_name}-#{stage} where stage is either 'test' or 'sandbox'.
|
10
|
+
|
11
|
+
TidyReset will purge the database, push a GIT_REF, reset dynos, reset environment variables, and restart the app server.
|
12
|
+
|
13
|
+
See what TidyReset can do
|
14
|
+
|
15
|
+
```
|
16
|
+
rake -T tidy
|
17
|
+
```
|
18
|
+
|
19
|
+
## Using the gem in your Rails project
|
20
|
+
|
21
|
+
Add the gem to your Gemfile
|
22
|
+
|
23
|
+
```ruby
|
24
|
+
gem 'tidy_reset'
|
25
|
+
```
|
26
|
+
|
27
|
+
Create a rake task that loads the TidyReset tasks.
|
28
|
+
|
29
|
+
```ruby
|
30
|
+
# lib/tasks/tidy.rake
|
31
|
+
load 'tidy_reset/tasks/tidy.rake'
|
32
|
+
```
|
33
|
+
|
34
|
+
Configure tidy in an initializer
|
35
|
+
|
36
|
+
```ruby
|
37
|
+
# config/initializers/tidy.rb
|
38
|
+
TidyReset.configure do |config|
|
39
|
+
config.app = 'myapp'
|
40
|
+
config.databases = [ActiveRecord::Base.configurations[Rails.env]]
|
41
|
+
config.database_encoding = ActiveRecord::Tasks::PostgreSQLDatabaseTasks::DEFAULT_ENCODING
|
42
|
+
end
|
43
|
+
```
|
44
|
+
|
45
|
+
Create default configurations for Heroku dynos size and Heroku enviornment variables. These should be named ```config/tidy/vars.yml``` and ```config/tidy/dynos.yml```
|
46
|
+
|
47
|
+
```ruby
|
48
|
+
# config/tidy/vars.yml
|
49
|
+
sandbox:
|
50
|
+
MY_HEROKU_VAR: some_value
|
51
|
+
test:
|
52
|
+
MY_HEROKU_VAR: different_for_test
|
53
|
+
```
|
54
|
+
|
55
|
+
```ruby
|
56
|
+
# config/tidy/dynos.yml
|
57
|
+
sandbox:
|
58
|
+
web: 2
|
59
|
+
test:
|
60
|
+
web: 1
|
61
|
+
```
|
62
|
+
|
63
|
+
## Contributing to tidy_reset
|
64
|
+
|
65
|
+
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
66
|
+
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
|
67
|
+
* Fork the project.
|
68
|
+
* Start a feature/bugfix branch.
|
69
|
+
* Commit and push until you are happy with your contribution.
|
70
|
+
* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
|
71
|
+
* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
|
72
|
+
|
73
|
+
|
data/Rakefile
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'bundler'
|
5
|
+
begin
|
6
|
+
Bundler.setup(:default, :development)
|
7
|
+
rescue Bundler::BundlerError => e
|
8
|
+
$stderr.puts e.message
|
9
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
+
exit e.status_code
|
11
|
+
end
|
12
|
+
require 'rake'
|
13
|
+
|
14
|
+
require 'jeweler'
|
15
|
+
Jeweler::Tasks.new do |gem|
|
16
|
+
# gem is a Gem::Specification... see http://guides.rubygems.org/specification-reference/ for more options
|
17
|
+
gem.name = "tidy_reset"
|
18
|
+
gem.homepage = "http://github.com/ThinkNear/tidy"
|
19
|
+
gem.summary = %Q{Resets Heroku applications}
|
20
|
+
gem.description = %Q{Reset dynos, environment variables, deploys master git branch, and purges the database.}
|
21
|
+
gem.authors = ["Thinknear"]
|
22
|
+
gem.email = "software@thinknear.com"
|
23
|
+
end
|
24
|
+
Jeweler::RubygemsDotOrgTasks.new
|
25
|
+
|
26
|
+
require 'rake/testtask'
|
27
|
+
Rake::TestTask.new(:test) do |test|
|
28
|
+
test.libs << 'lib' << 'test'
|
29
|
+
test.pattern = 'test/**/test_*.rb'
|
30
|
+
test.verbose = true
|
31
|
+
end
|
32
|
+
|
33
|
+
desc "Code coverage detail"
|
34
|
+
task :simplecov do
|
35
|
+
ENV['COVERAGE'] = "true"
|
36
|
+
Rake::Task['test'].execute
|
37
|
+
end
|
38
|
+
|
39
|
+
task :default => :test
|
40
|
+
|
41
|
+
require 'rdoc/task'
|
42
|
+
Rake::RDocTask.new do |rdoc|
|
43
|
+
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
44
|
+
|
45
|
+
rdoc.rdoc_dir = 'rdoc'
|
46
|
+
rdoc.title = "tidy_reset #{version}"
|
47
|
+
rdoc.rdoc_files.include('README*')
|
48
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
49
|
+
end
|
data/VERSION
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
0.1.1
|
@@ -0,0 +1,78 @@
|
|
1
|
+
namespace :tidy do
|
2
|
+
desc "Makes application pristine."
|
3
|
+
task :all, [:stage] => [:validate, :dynos, :vars, :git, :db, :cache, :restart] do |t, args|
|
4
|
+
# Executes all tasks
|
5
|
+
end
|
6
|
+
|
7
|
+
# Prevents mistakes. Raises an error for stages not test or sandbox.
|
8
|
+
# All tidy tasks should :validate as a task dependency.
|
9
|
+
task :validate, [:stage] => [:environment] do |t, args|
|
10
|
+
if (args.stage && !['test', 'sandbox'].include?(args.stage)) || !['test', 'sandbox'].include?(STAGE)
|
11
|
+
raise "ERROR: tasks are meant for 'test' and 'sandbox' ONLY."
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
desc "Deploys the master branch to a remote application."
|
16
|
+
task :git, [:stage] => [:validate] do |t, args|
|
17
|
+
app = TidyReset.app_name(args.stage)
|
18
|
+
# Ensure the remote is set
|
19
|
+
TidyReset.execute("[[ -n $(git remote -v | grep -E '^#{args.stage}') ]] || git remote add #{args.stage} git@heroku.com:#{app}.git")
|
20
|
+
if ENV['GIT_REF'] == 'none'
|
21
|
+
# show ref on heroku remote
|
22
|
+
TidyReset.execute("git ls-remote #{args.stage} | grep HEAD")
|
23
|
+
else
|
24
|
+
ref = ENV['GIT_REF'] || 'master'
|
25
|
+
TidyReset.execute("git push -f #{args.stage} #{ref}:master")
|
26
|
+
end
|
27
|
+
end
|
28
|
+
|
29
|
+
desc "Scales the application dynos to a default configuration."
|
30
|
+
task :dynos, [:stage] => [:validate] do |t, args|
|
31
|
+
app = TidyReset.app_name(args.stage)
|
32
|
+
yaml_config = YAML.load_file("#{Rails.root}/config/tidy/dynos.yml")
|
33
|
+
scale_command = yaml_config[args.stage].inject("") { |command, config| command += "#{config.first}='#{config.last}' " }
|
34
|
+
TidyReset.execute("heroku ps:scale #{scale_command} --app #{app}")
|
35
|
+
end
|
36
|
+
|
37
|
+
desc "Sets default environment variables."
|
38
|
+
task :vars, [:stage] => [:validate] do |t, args|
|
39
|
+
app = TidyReset.app_name(args.stage)
|
40
|
+
yaml_config = YAML.load_file("#{Rails.root}/config/tidy/vars.yml")
|
41
|
+
set_vars_command = yaml_config[args.stage].inject("") { |command, config| command += "#{config.first}='#{config.last}' " }
|
42
|
+
TidyReset.execute("heroku config:set #{set_vars_command} --app #{app}")
|
43
|
+
end
|
44
|
+
|
45
|
+
desc "Purges remotely configured databases, runs migrations, and creates db seeds."
|
46
|
+
task :db, [:stage] => [:validate] do |t, args|
|
47
|
+
app = TidyReset.app_name(args.stage)
|
48
|
+
TidyReset.execute("heroku run rake tidy:db:purge --app #{app}")
|
49
|
+
TidyReset.execute("heroku run rake db:migrate --app #{app}")
|
50
|
+
TidyReset.execute("heroku run rake db:seed --app #{app}")
|
51
|
+
end
|
52
|
+
|
53
|
+
namespace :db do
|
54
|
+
# Purges the locally configured databases. Should be called from tidy:db.
|
55
|
+
task :purge => [:validate, :environment] do |t, args|
|
56
|
+
TidyReset.configuration.databases.each do |database|
|
57
|
+
TidyReset.database_purge(database)
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
desc "Clears the Rails.cache on a remote application."
|
63
|
+
task :cache, [:stage] => [:validate] do |t, args|
|
64
|
+
app = TidyReset.app_name(args.stage)
|
65
|
+
TidyReset.execute("heroku run rake tidy:cache_local --app #{app}")
|
66
|
+
end
|
67
|
+
|
68
|
+
# Clear's a local Rails cache. Should be called by tidy:cache.
|
69
|
+
task :cache_local => [:validate, :environment] do
|
70
|
+
Rails.cache.clear
|
71
|
+
end
|
72
|
+
|
73
|
+
desc "Restarts Heroku dynos for a remote application."
|
74
|
+
task :restart, [:stage] => [:validate] do |t, args|
|
75
|
+
app = TidyReset.app_name(args.stage)
|
76
|
+
TidyReset.execute("heroku restart --app #{app}")
|
77
|
+
end
|
78
|
+
end
|
data/lib/tidy_reset.rb
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
require 'tidy_reset/configuration'
|
2
|
+
require 'tidy_reset/version'
|
3
|
+
|
4
|
+
module TidyReset
|
5
|
+
class << self
|
6
|
+
attr_accessor :configuration
|
7
|
+
|
8
|
+
def configuration
|
9
|
+
@configuration ||= Configuration.new
|
10
|
+
end
|
11
|
+
|
12
|
+
def configure
|
13
|
+
yield(configuration)
|
14
|
+
end
|
15
|
+
|
16
|
+
def execute(command)
|
17
|
+
puts "running: #{command}"
|
18
|
+
Bundler.with_clean_env do
|
19
|
+
unless system(command)
|
20
|
+
raise RuntimeError, "Error running last command. Return code was #{$?}"
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def app_name(postfix)
|
26
|
+
"#{configuration.app}-#{postfix}"
|
27
|
+
end
|
28
|
+
|
29
|
+
def database_purge(db_config)
|
30
|
+
begin
|
31
|
+
encoding = configuration.database_encoding
|
32
|
+
master_connection = ActiveRecord::Base.establish_connection(db_config.merge(
|
33
|
+
'database' => 'postgres',
|
34
|
+
'schema_search_path' => 'public'
|
35
|
+
)).connection
|
36
|
+
master_connection.select_all("SELECT pg_terminate_backend(pg_stat_activity.pid) FROM pg_stat_activity WHERE datname='#{db_config['database']}' AND state='idle';")
|
37
|
+
master_connection.drop_database(db_config['database'])
|
38
|
+
master_connection.create_database(db_config['database'], db_config.merge('encoding' => encoding))
|
39
|
+
ActiveRecord::Base.establish_connection(db_config).connection.execute("CREATE EXTENSION IF NOT EXISTS postgis")
|
40
|
+
rescue ActiveRecord::StatementInvalid => error
|
41
|
+
if /database .* already exists/ === error.message
|
42
|
+
raise DatabaseAlreadyExists
|
43
|
+
else
|
44
|
+
raise
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
data/test/helper.rb
ADDED
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
|
3
|
+
module SimpleCov::Configuration
|
4
|
+
def clean_filters
|
5
|
+
@filters = []
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
9
|
+
SimpleCov.configure do
|
10
|
+
clean_filters
|
11
|
+
load_adapter 'test_frameworks'
|
12
|
+
end
|
13
|
+
|
14
|
+
ENV["COVERAGE"] && SimpleCov.start do
|
15
|
+
add_filter "/.rvm/"
|
16
|
+
end
|
17
|
+
require 'rubygems'
|
18
|
+
require 'bundler'
|
19
|
+
begin
|
20
|
+
Bundler.setup(:default, :development)
|
21
|
+
rescue Bundler::BundlerError => e
|
22
|
+
$stderr.puts e.message
|
23
|
+
$stderr.puts "Run `bundle install` to install missing gems"
|
24
|
+
exit e.status_code
|
25
|
+
end
|
26
|
+
require 'test/unit'
|
27
|
+
require 'shoulda'
|
28
|
+
|
29
|
+
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
30
|
+
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
31
|
+
require 'tidy_reset'
|
32
|
+
|
33
|
+
class Test::Unit::TestCase
|
34
|
+
end
|
data/tidy_reset.gemspec
ADDED
@@ -0,0 +1,67 @@
|
|
1
|
+
# Generated by jeweler
|
2
|
+
# DO NOT EDIT THIS FILE DIRECTLY
|
3
|
+
# Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
|
4
|
+
# -*- encoding: utf-8 -*-
|
5
|
+
|
6
|
+
Gem::Specification.new do |s|
|
7
|
+
s.name = "tidy_reset"
|
8
|
+
s.version = "0.1.1"
|
9
|
+
|
10
|
+
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
|
+
s.authors = ["Thinknear"]
|
12
|
+
s.date = "2014-06-25"
|
13
|
+
s.description = "Reset dynos, environment variables, deploys master git branch, and purges the database."
|
14
|
+
s.email = "software@thinknear.com"
|
15
|
+
s.extra_rdoc_files = [
|
16
|
+
"LICENSE.txt",
|
17
|
+
"README.md"
|
18
|
+
]
|
19
|
+
s.files = [
|
20
|
+
".document",
|
21
|
+
"Gemfile",
|
22
|
+
"Gemfile.lock",
|
23
|
+
"LICENSE.txt",
|
24
|
+
"README.md",
|
25
|
+
"Rakefile",
|
26
|
+
"VERSION",
|
27
|
+
"lib/tidy_reset.rb",
|
28
|
+
"lib/tidy_reset/configuration.rb",
|
29
|
+
"lib/tidy_reset/tasks/tidy.rake",
|
30
|
+
"lib/tidy_reset/version.rb",
|
31
|
+
"test/helper.rb",
|
32
|
+
"test/test_tidy_reset.rb",
|
33
|
+
"tidy_reset.gemspec"
|
34
|
+
]
|
35
|
+
s.homepage = "http://github.com/ThinkNear/tidy"
|
36
|
+
s.require_paths = ["lib"]
|
37
|
+
s.rubygems_version = "2.0.5"
|
38
|
+
s.summary = "Resets Heroku applications"
|
39
|
+
|
40
|
+
if s.respond_to? :specification_version then
|
41
|
+
s.specification_version = 4
|
42
|
+
|
43
|
+
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
44
|
+
s.add_runtime_dependency(%q<bundler>, ["~> 1.0"])
|
45
|
+
s.add_runtime_dependency(%q<activerecord>, ["~> 4.0.5"])
|
46
|
+
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
47
|
+
s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
|
48
|
+
s.add_development_dependency(%q<jeweler>, ["~> 2.0.1"])
|
49
|
+
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
50
|
+
else
|
51
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
52
|
+
s.add_dependency(%q<activerecord>, ["~> 4.0.5"])
|
53
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
54
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
55
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
56
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
57
|
+
end
|
58
|
+
else
|
59
|
+
s.add_dependency(%q<bundler>, ["~> 1.0"])
|
60
|
+
s.add_dependency(%q<activerecord>, ["~> 4.0.5"])
|
61
|
+
s.add_dependency(%q<shoulda>, [">= 0"])
|
62
|
+
s.add_dependency(%q<rdoc>, ["~> 3.12"])
|
63
|
+
s.add_dependency(%q<jeweler>, ["~> 2.0.1"])
|
64
|
+
s.add_dependency(%q<simplecov>, [">= 0"])
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
metadata
ADDED
@@ -0,0 +1,143 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: tidy_reset
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Thinknear
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2014-06-25 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ~>
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ~>
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.0'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: activerecord
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - ~>
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 4.0.5
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - ~>
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 4.0.5
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: shoulda
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ! '>='
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rdoc
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '3.12'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ~>
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '3.12'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: jeweler
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ~>
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: 2.0.1
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ~>
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: 2.0.1
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: simplecov
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ! '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ! '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
97
|
+
description: Reset dynos, environment variables, deploys master git branch, and purges
|
98
|
+
the database.
|
99
|
+
email: software@thinknear.com
|
100
|
+
executables: []
|
101
|
+
extensions: []
|
102
|
+
extra_rdoc_files:
|
103
|
+
- LICENSE.txt
|
104
|
+
- README.md
|
105
|
+
files:
|
106
|
+
- .document
|
107
|
+
- Gemfile
|
108
|
+
- Gemfile.lock
|
109
|
+
- LICENSE.txt
|
110
|
+
- README.md
|
111
|
+
- Rakefile
|
112
|
+
- VERSION
|
113
|
+
- lib/tidy_reset.rb
|
114
|
+
- lib/tidy_reset/configuration.rb
|
115
|
+
- lib/tidy_reset/tasks/tidy.rake
|
116
|
+
- lib/tidy_reset/version.rb
|
117
|
+
- test/helper.rb
|
118
|
+
- test/test_tidy_reset.rb
|
119
|
+
- tidy_reset.gemspec
|
120
|
+
homepage: http://github.com/ThinkNear/tidy
|
121
|
+
licenses: []
|
122
|
+
metadata: {}
|
123
|
+
post_install_message:
|
124
|
+
rdoc_options: []
|
125
|
+
require_paths:
|
126
|
+
- lib
|
127
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ! '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
133
|
+
requirements:
|
134
|
+
- - ! '>='
|
135
|
+
- !ruby/object:Gem::Version
|
136
|
+
version: '0'
|
137
|
+
requirements: []
|
138
|
+
rubyforge_project:
|
139
|
+
rubygems_version: 2.0.5
|
140
|
+
signing_key:
|
141
|
+
specification_version: 4
|
142
|
+
summary: Resets Heroku applications
|
143
|
+
test_files: []
|