tidy_reset 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
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
@@ -0,0 +1,5 @@
1
+ lib/**/*.rb
2
+ bin/*
3
+ -
4
+ features/**/*.feature
5
+ LICENSE.txt
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
@@ -0,0 +1,3 @@
1
+ Copyright (c) 2014 Thinknear
2
+
3
+ The gem and source code are not available for use or copying. No license is provided.
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,11 @@
1
+ module TidyReset
2
+ class Configuration
3
+ attr_accessor :databases, :app, :database_encoding
4
+
5
+ def initialize
6
+ @databases = []
7
+ @database_encoding = 'utf8'
8
+ @app = ''
9
+ end
10
+ end
11
+ end
@@ -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
@@ -0,0 +1,3 @@
1
+ module TidyReset
2
+ VERSION = "0.1.0"
3
+ 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
@@ -0,0 +1,7 @@
1
+ require 'helper'
2
+
3
+ class TestTidyReset < Test::Unit::TestCase
4
+ should "probably rename this file and start testing for real" do
5
+ flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ end
7
+ end
@@ -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: []