heroku_hatchet 1.3.7 → 1.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +3 -2
  3. data/CHANGELOG.md +5 -0
  4. data/hatchet.gemspec +2 -0
  5. data/hatchet.json +2 -1
  6. data/lib/hatchet.rb +1 -1
  7. data/lib/hatchet/app.rb +4 -3
  8. data/lib/hatchet/version.rb +1 -1
  9. data/test/hatchet/allow_failure_anvil_test.rb +0 -29
  10. data/test/hatchet/anvil_test.rb +0 -16
  11. data/test/hatchet/app_test.rb +9 -0
  12. data/test/hatchet/config_test.rb +9 -6
  13. data/test/hatchet/edit_repo_test.rb +3 -3
  14. data/test/hatchet/heroku_api_test.rb +7 -2
  15. data/test/hatchet/multi_cmd_runner_test.rb +2 -6
  16. data/test/hatchet/runner_test.rb +2 -2
  17. metadata +33 -65
  18. data/test/fixtures/buildpacks/heroku-buildpack-ruby/.gitignore +0 -4
  19. data/test/fixtures/buildpacks/heroku-buildpack-ruby/CHANGELOG.md +0 -378
  20. data/test/fixtures/buildpacks/heroku-buildpack-ruby/Gemfile +0 -10
  21. data/test/fixtures/buildpacks/heroku-buildpack-ruby/LICENSE +0 -9
  22. data/test/fixtures/buildpacks/heroku-buildpack-ruby/README.md +0 -192
  23. data/test/fixtures/buildpacks/heroku-buildpack-ruby/Rakefile +0 -358
  24. data/test/fixtures/buildpacks/heroku-buildpack-ruby/bin/compile +0 -13
  25. data/test/fixtures/buildpacks/heroku-buildpack-ruby/bin/detect +0 -12
  26. data/test/fixtures/buildpacks/heroku-buildpack-ruby/bin/release +0 -9
  27. data/test/fixtures/buildpacks/heroku-buildpack-ruby/hatchet.json +0 -25
  28. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack.rb +0 -27
  29. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/base.rb +0 -175
  30. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/bundler_lockfile.rb +0 -19
  31. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/disable_deploys.rb +0 -17
  32. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/no_lockfile.rb +0 -16
  33. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rack.rb +0 -43
  34. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails2.rb +0 -91
  35. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails3.rb +0 -86
  36. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails4.rb +0 -66
  37. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/ruby.rb +0 -681
  38. data/test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/shell_helpers.rb +0 -62
  39. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/bugs_spec.rb +0 -11
  40. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/no_lockfile_spec.rb +0 -10
  41. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails23_spec.rb +0 -11
  42. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails3_spec.rb +0 -22
  43. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails4_spec.rb +0 -12
  44. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rubies_spec.rb +0 -38
  45. data/test/fixtures/buildpacks/heroku-buildpack-ruby/spec/spec_helper.rb +0 -35
  46. data/test/fixtures/buildpacks/heroku-buildpack-ruby/support/s3/hmac +0 -79
  47. data/test/fixtures/buildpacks/heroku-buildpack-ruby/support/s3/s3 +0 -223
  48. data/test/fixtures/buildpacks/heroku-buildpack-ruby/vendor/syck_hack.rb +0 -64
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c74757094475d36e22da978d34262c77a17782ba
4
- data.tar.gz: ed32e6db14808f5902877e150f80825a1ac3f228
3
+ metadata.gz: 85641de59bccc166a11c79ae67676af865b3be63
4
+ data.tar.gz: 1d72d1da0c070b24cea2025a77e31365c61a52fa
5
5
  SHA512:
6
- metadata.gz: 71523ba20d417cbb299d2593a57dd64267cd5b147bc3c572bdf5485094756aef6a074fb37248863422982d33d9e34ba1176c3cf66493f3eb51c5286fb3d879b8
7
- data.tar.gz: deb75b66c51d9279f0b9e71c8ff395967379d02e69efe06196e01215831908ada536992068dbe3aaf5f0af29f1295e517fb002cf675ef5e61417a08c572105db
6
+ metadata.gz: 815178819199dc926155789f1495b89042c7e4ff42493780f9f664401a8691cc8fdb53e65755daa74c7ed7d60fe88cf8717598b584565cd0f4d933c833102a9a
7
+ data.tar.gz: ecbdce8901244371372846eb96435082c41f70d6d3fce9b2565516bd2d32a3675d2435a9ebde28bb50bd20b99c5f53ace8c2cfad08ba1561ea6bdef86cf0a42f
@@ -6,6 +6,7 @@ script: bundle exec parallel_test test/hatchet -n 9
6
6
  after_script: bundle exec rake hatchet:teardown_travis
7
7
  env:
8
8
  global:
9
- - HATCHET_RETRIES=3
10
9
  - HATCHET_BUILDPACK_BRANCH=master
11
- - secure: QP6PJWH/0loXYyeecwpg47ydV3cWFM/7+kQ3qnB37YB8d1VeADbi5+38Lv3PUVayKT52j1CELRfVPSjexlvGElqk4tvZm/wjN2utvUp6U2WuKuP2UloHXBtK/7DsFe2ZEdG8UWmFx+bEUElwpOY2pVcWZOc83rXWI/G1mJNvbK0=
10
+ - HATCHET_RETRIES=3
11
+ - HATCHET_APP_LIMIT=80
12
+ - secure: IuwT8MLmcdWIZvuD+XgHE9jh/49NcZ5Q6Wh7M2ROIQPsNjQ9jPHFpTTdL6p0/63eq948WUKrrPqDFRm/jh/JKyJPmQfDgWq4ScoPdurhgLlGg1CH81gi22t9VwO5QeoYLufMyueqazGbQCAl+xsa+hsKcs6nb836yDHsmBud6z0=
@@ -1,5 +1,10 @@
1
1
  ## HEAD
2
2
 
3
+ ## 1.4.0
4
+
5
+ - The App#setup! method now automatically tries to reap unused apps if the request fails.
6
+ - Default app deploy type is now :git
7
+
3
8
  ## 1.3.7
4
9
 
5
10
  - Return self from setup!
@@ -28,9 +28,11 @@ Gem::Specification.new do |gem|
28
28
  gem.add_dependency "threaded", "~> 0"
29
29
 
30
30
 
31
+ gem.add_development_dependency "test-unit", "~> 3.0"
31
32
  gem.add_development_dependency "minitest", "~> 4.0"
32
33
  gem.add_development_dependency "rake", "~> 10"
33
34
  gem.add_development_dependency "mocha", "~> 1"
34
35
  gem.add_development_dependency "parallel_tests", "~> 0"
36
+ gem.add_development_dependency "travis", "~> 1"
35
37
  end
36
38
 
@@ -2,5 +2,6 @@
2
2
  "hatchet": {"directory": "test/fixtures"},
3
3
  "rails3": ["sharpstone/rails3_mri_193"],
4
4
  "rails2": ["sharpstone/rails2blog"],
5
- "bundler": ["sharpstone/no_lockfile"]
5
+ "bundler": ["sharpstone/no_lockfile"],
6
+ "default": ["sharpstone/default_ruby"]
6
7
  }
@@ -24,7 +24,7 @@ module Hatchet
24
24
  end
25
25
 
26
26
  def self.set_deploy_strategy!
27
- deploy_strat = (ENV['HATCHET_DEPLOY_STRATEGY'] || :anvil).to_sym
27
+ deploy_strat = (ENV['HATCHET_DEPLOY_STRATEGY'] || :git).to_sym
28
28
  case Hatchet::const_set("DEPLOY_STRATEGY", deploy_strat)
29
29
  when :anvil
30
30
  Hatchet.const_set("Runner", Hatchet::AnvilApp)
@@ -1,6 +1,6 @@
1
1
  module Hatchet
2
2
  class App
3
- attr_reader :name, :directory, :repo_name
3
+ attr_reader :name, :stack, :directory, :repo_name
4
4
 
5
5
  class FailedDeploy < StandardError
6
6
  def initialize(app, output)
@@ -16,6 +16,7 @@ module Hatchet
16
16
  @repo_name = repo_name
17
17
  @directory = config.path_for_name(@repo_name)
18
18
  @name = options[:name] || "hatchet-t-#{SecureRandom.hex(10)}"
19
+ @stack = options[:stack]
19
20
  @debug = options[:debug] || options[:debugging]
20
21
  @allow_failure = options[:allow_failure] || false
21
22
  @labs = ([] << options[:labs]).flatten.compact
@@ -99,7 +100,7 @@ module Hatchet
99
100
  def create_app
100
101
  3.times.retry do
101
102
  begin
102
- heroku.post_app(name: name)
103
+ heroku.post_app({ name: name, stack: stack }.delete_if {|k,v| v.nil? })
103
104
  rescue Heroku::API::Errors::RequestFailed => e
104
105
  @reaper.cycle if e.message.match(/app limit/)
105
106
  raise e
@@ -111,7 +112,7 @@ module Hatchet
111
112
  def setup!
112
113
  return self if @app_is_setup
113
114
  puts "Hatchet setup: #{name.inspect} for #{repo_name.inspect}"
114
- heroku.post_app(name: name)
115
+ create_app
115
116
  set_labs!
116
117
  @app_is_setup = true
117
118
  self
@@ -1,3 +1,3 @@
1
1
  module Hatchet
2
- VERSION = "1.3.7"
2
+ VERSION = "1.4.0"
3
3
  end
@@ -1,33 +1,4 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class AllowFailureAnvilTest < Test::Unit::TestCase
4
-
5
- def setup
6
- @buildpack_path = File.expand_path 'test/fixtures/buildpacks/heroku-buildpack-ruby'
7
- end
8
-
9
- def test_allowed_failure
10
- Hatchet::AnvilApp.new("no_lockfile", buildpack: @buildpack_path, allow_failure: true).deploy do |app, heroku, output|
11
- refute app.deployed?
12
- assert_match "Gemfile.lock required", output
13
- end
14
- end
15
-
16
- def test_failure_with_no_flag
17
- assert_raise(Anvil::Builder::BuildError) do
18
- Hatchet::AnvilApp.new("no_lockfile", buildpack: @buildpack_path).deploy
19
- end
20
- end
21
-
22
- def test_retries
23
- orig_retries = Hatchet::RETRIES
24
- Hatchet.const_set(:RETRIES, 2)
25
- assert_raise(Anvil::Builder::BuildError) do
26
- app = Hatchet::AnvilApp.new("no_lockfile", buildpack: @buildpack_path)
27
- app.expects(:push_without_retry!).twice.raises(Anvil::Builder::BuildError)
28
- app.deploy
29
- end
30
- ensure
31
- Hatchet.const_set(:RETRIES, orig_retries)
32
- end
33
4
  end
@@ -4,20 +4,4 @@ class AnvilTest < Test::Unit::TestCase
4
4
  def setup
5
5
  @buildpack_path = File.expand_path 'test/fixtures/buildpacks/heroku-buildpack-ruby'
6
6
  end
7
-
8
- def test_deploy
9
- Hatchet::AnvilApp.new("rails3_mri_193", buildpack: @buildpack_path).deploy do |app, heroku, output|
10
- assert true
11
-
12
- assert_match '1.9.3', app.run("ruby -v")
13
- app.run("bash") do |cmd|
14
- cmd.run("cat Gemfile") {|r| assert_match "gem 'pg'", r}
15
- cmd.run("ls public/assets") {|r| assert_match "application.css", r}
16
- end
17
-
18
- app.run(:irb, "rails c") do |cmd|
19
- cmd.run("1+1") {|r| assert_match "2", r }
20
- end
21
- end
22
- end
23
7
  end
@@ -0,0 +1,9 @@
1
+ require 'test_helper'
2
+
3
+ class AppTest < Test::Unit::TestCase
4
+ def test_create_app_with_stack
5
+ app = Hatchet::App.new("rails3_mri_193", stack: "cedar")
6
+ app.create_app
7
+ assert_equal 'cedar', app.heroku.get_app(app.name).body["stack"]
8
+ end
9
+ end
@@ -11,16 +11,19 @@ class ConfigTest < Test::Unit::TestCase
11
11
  end
12
12
 
13
13
  def test_config_dirs
14
- expected_dirs = { "test/fixtures/repos/rails3/rails3_mri_193" => "git://github.com/sharpstone/rails3_mri_193.git",
15
- "test/fixtures/repos/rails2/rails2blog" => "git://github.com/sharpstone/rails2blog.git",
16
- "test/fixtures/repos/bundler/no_lockfile" => "git://github.com/sharpstone/no_lockfile.git" }
14
+ expected_dirs = {"test/fixtures/repos/bundler/no_lockfile" => "git://github.com/sharpstone/no_lockfile.git",
15
+ "test/fixtures/repos/default/default_ruby" => "git://github.com/sharpstone/default_ruby.git",
16
+ "test/fixtures/repos/default/default_ruby" => "git://github.com/sharpstone/default_ruby.git",
17
+ "test/fixtures/repos/rails2/rails2blog" => "git://github.com/sharpstone/rails2blog.git",
18
+ "test/fixtures/repos/rails3/rails3_mri_193" => "git://github.com/sharpstone/rails3_mri_193.git"}
17
19
  assert_equal expected_dirs, @config.dirs
18
20
  end
19
21
 
20
22
  def test_config_repos
21
- expected_repos = { "rails3_mri_193" => "test/fixtures/repos/rails3/rails3_mri_193",
22
- "rails2blog" => "test/fixtures/repos/rails2/rails2blog",
23
- "no_lockfile" => "test/fixtures/repos/bundler/no_lockfile"}
23
+ expected_repos = {"default_ruby" => "test/fixtures/repos/default/default_ruby",
24
+ "no_lockfile" => "test/fixtures/repos/bundler/no_lockfile",
25
+ "rails2blog" => "test/fixtures/repos/rails2/rails2blog",
26
+ "rails3_mri_193" => "test/fixtures/repos/rails3/rails3_mri_193"}
24
27
  assert_equal expected_repos, @config.repos
25
28
  end
26
29
 
@@ -2,7 +2,7 @@ require 'test_helper'
2
2
 
3
3
  class EditRepoTest < Test::Unit::TestCase
4
4
  def test_can_deploy_git_app
5
- Hatchet::GitApp.new("rails3_mri_193").in_directory do |app|
5
+ Hatchet::GitApp.new("default_ruby").in_directory do |app|
6
6
  msg = `touch foo`
7
7
  assert $?.success?, msg
8
8
 
@@ -12,8 +12,8 @@ class EditRepoTest < Test::Unit::TestCase
12
12
  assert_match "foo", `ls`
13
13
  end
14
14
 
15
- Hatchet::GitApp.new("rails3_mri_193").in_directory do |app|
16
- refute_match "foo", `ls`
15
+ Hatchet::GitApp.new("default_ruby").in_directory do |app|
16
+ refute_match /foo/, `ls`
17
17
  end
18
18
  end
19
19
  end
@@ -5,10 +5,15 @@ class HerokuApiTest < Test::Unit::TestCase
5
5
  def test_config_vars
6
6
  runner = Hatchet::Runner.new("no_lockfile").setup!
7
7
  expected = {}
8
- assert_equal expected, runner.get_config
8
+ actual = runner.get_config
9
+ actual.delete("BUILDPACK_URL")
10
+ assert_equal expected, actual
11
+
9
12
  runner.set_config("foo" => "bar")
10
13
  expected = {"foo" => "bar"}
11
- assert_equal expected, runner.get_config
14
+ actual = runner.get_config
15
+ actual.delete("BUILDPACK_URL")
16
+ assert_equal expected, actual
12
17
  ensure
13
18
  runner.teardown! if runner
14
19
  end
@@ -1,14 +1,10 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class MultiCmdRunnerTest < Test::Unit::TestCase
4
- def setup
5
- @buildpack_path = File.expand_path 'test/fixtures/buildpacks/heroku-buildpack-ruby'
6
- end
7
-
8
4
  # slow but needed, there are ghosts in the machine
9
5
  # by running common command multiple times we can find them
10
6
  def test_multi_repl_commands
11
- Hatchet::AnvilApp.new("rails3_mri_193", buildpack: @buildpack_path).deploy do |app|
7
+ Hatchet::GitApp.new("default_ruby").deploy do |app|
12
8
  app.add_database
13
9
 
14
10
  assert_raise ReplRunner::UnregisteredCommand do
@@ -18,7 +14,7 @@ class MultiCmdRunnerTest < Test::Unit::TestCase
18
14
  end
19
15
 
20
16
  rand(3..7).times do
21
- app.run("rails console") do |console|
17
+ app.run("irb") do |console|
22
18
  console.run("`ls`")
23
19
  console.run("'foo' * 5") {|r| assert_match "foofoofoofoofoo", r }
24
20
  console.run("'hello ' + 'world'") {|r| assert_match "hello world", r }
@@ -13,8 +13,8 @@ class HatchetRunnerTest < Test::Unit::TestCase
13
13
 
14
14
  def test_defaults
15
15
  assert_equal nil, ENV['HATCHET_DEPLOY_STRATEGY']
16
- assert_equal :anvil, Hatchet::DEPLOY_STRATEGY
17
- assert_equal Hatchet::AnvilApp, Hatchet::Runner
16
+ assert_equal :git, Hatchet::DEPLOY_STRATEGY
17
+ assert_equal Hatchet::GitApp, Hatchet::Runner
18
18
  end
19
19
 
20
20
  def test_change_deploy_strat
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: heroku_hatchet
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.7
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Richard Schneeman
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-11-05 00:00:00.000000000 Z
11
+ date: 2015-01-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: heroku-api
@@ -122,6 +122,20 @@ dependencies:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
124
  version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: test-unit
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '3.0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '3.0'
125
139
  - !ruby/object:Gem::Dependency
126
140
  name: minitest
127
141
  requirement: !ruby/object:Gem::Requirement
@@ -178,6 +192,20 @@ dependencies:
178
192
  - - "~>"
179
193
  - !ruby/object:Gem::Version
180
194
  version: '0'
195
+ - !ruby/object:Gem::Dependency
196
+ name: travis
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '1'
202
+ type: :development
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '1'
181
209
  description: Hatchet is a an integration testing library for developing Heroku buildpacks.
182
210
  email:
183
211
  - richard.schneeman+rubygems@gmail.com
@@ -204,37 +232,6 @@ files:
204
232
  - lib/hatchet/reaper.rb
205
233
  - lib/hatchet/tasks.rb
206
234
  - lib/hatchet/version.rb
207
- - test/fixtures/buildpacks/heroku-buildpack-ruby/.gitignore
208
- - test/fixtures/buildpacks/heroku-buildpack-ruby/CHANGELOG.md
209
- - test/fixtures/buildpacks/heroku-buildpack-ruby/Gemfile
210
- - test/fixtures/buildpacks/heroku-buildpack-ruby/LICENSE
211
- - test/fixtures/buildpacks/heroku-buildpack-ruby/README.md
212
- - test/fixtures/buildpacks/heroku-buildpack-ruby/Rakefile
213
- - test/fixtures/buildpacks/heroku-buildpack-ruby/bin/compile
214
- - test/fixtures/buildpacks/heroku-buildpack-ruby/bin/detect
215
- - test/fixtures/buildpacks/heroku-buildpack-ruby/bin/release
216
- - test/fixtures/buildpacks/heroku-buildpack-ruby/hatchet.json
217
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack.rb
218
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/base.rb
219
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/bundler_lockfile.rb
220
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/disable_deploys.rb
221
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/no_lockfile.rb
222
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rack.rb
223
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails2.rb
224
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails3.rb
225
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails4.rb
226
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/ruby.rb
227
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/shell_helpers.rb
228
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/bugs_spec.rb
229
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/no_lockfile_spec.rb
230
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails23_spec.rb
231
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails3_spec.rb
232
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails4_spec.rb
233
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rubies_spec.rb
234
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/spec_helper.rb
235
- - test/fixtures/buildpacks/heroku-buildpack-ruby/support/s3/hmac
236
- - test/fixtures/buildpacks/heroku-buildpack-ruby/support/s3/s3
237
- - test/fixtures/buildpacks/heroku-buildpack-ruby/vendor/syck_hack.rb
238
235
  - test/fixtures/buildpacks/null-buildpack/bin/compile
239
236
  - test/fixtures/buildpacks/null-buildpack/bin/detect
240
237
  - test/fixtures/buildpacks/null-buildpack/bin/release
@@ -243,6 +240,7 @@ files:
243
240
  - test/hatchet/allow_failure_anvil_test.rb
244
241
  - test/hatchet/allow_failure_git_test.rb
245
242
  - test/hatchet/anvil_test.rb
243
+ - test/hatchet/app_test.rb
246
244
  - test/hatchet/config_test.rb
247
245
  - test/hatchet/edit_repo_test.rb
248
246
  - test/hatchet/git_test.rb
@@ -272,42 +270,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
272
270
  version: '0'
273
271
  requirements: []
274
272
  rubyforge_project:
275
- rubygems_version: 2.2.2
273
+ rubygems_version: 2.4.1
276
274
  signing_key:
277
275
  specification_version: 4
278
276
  summary: Hatchet is a an integration testing library for developing Heroku buildpacks.
279
277
  test_files:
280
- - test/fixtures/buildpacks/heroku-buildpack-ruby/.gitignore
281
- - test/fixtures/buildpacks/heroku-buildpack-ruby/CHANGELOG.md
282
- - test/fixtures/buildpacks/heroku-buildpack-ruby/Gemfile
283
- - test/fixtures/buildpacks/heroku-buildpack-ruby/LICENSE
284
- - test/fixtures/buildpacks/heroku-buildpack-ruby/README.md
285
- - test/fixtures/buildpacks/heroku-buildpack-ruby/Rakefile
286
- - test/fixtures/buildpacks/heroku-buildpack-ruby/bin/compile
287
- - test/fixtures/buildpacks/heroku-buildpack-ruby/bin/detect
288
- - test/fixtures/buildpacks/heroku-buildpack-ruby/bin/release
289
- - test/fixtures/buildpacks/heroku-buildpack-ruby/hatchet.json
290
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack.rb
291
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/base.rb
292
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/bundler_lockfile.rb
293
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/disable_deploys.rb
294
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/no_lockfile.rb
295
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rack.rb
296
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails2.rb
297
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails3.rb
298
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/rails4.rb
299
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/ruby.rb
300
- - test/fixtures/buildpacks/heroku-buildpack-ruby/lib/language_pack/shell_helpers.rb
301
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/bugs_spec.rb
302
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/no_lockfile_spec.rb
303
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails23_spec.rb
304
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails3_spec.rb
305
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rails4_spec.rb
306
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/rubies_spec.rb
307
- - test/fixtures/buildpacks/heroku-buildpack-ruby/spec/spec_helper.rb
308
- - test/fixtures/buildpacks/heroku-buildpack-ruby/support/s3/hmac
309
- - test/fixtures/buildpacks/heroku-buildpack-ruby/support/s3/s3
310
- - test/fixtures/buildpacks/heroku-buildpack-ruby/vendor/syck_hack.rb
311
278
  - test/fixtures/buildpacks/null-buildpack/bin/compile
312
279
  - test/fixtures/buildpacks/null-buildpack/bin/detect
313
280
  - test/fixtures/buildpacks/null-buildpack/bin/release
@@ -316,6 +283,7 @@ test_files:
316
283
  - test/hatchet/allow_failure_anvil_test.rb
317
284
  - test/hatchet/allow_failure_git_test.rb
318
285
  - test/hatchet/anvil_test.rb
286
+ - test/hatchet/app_test.rb
319
287
  - test/hatchet/config_test.rb
320
288
  - test/hatchet/edit_repo_test.rb
321
289
  - test/hatchet/git_test.rb
@@ -1,4 +0,0 @@
1
- repos/*
2
- .DS_Store
3
- vendor/bundler/*
4
- vendor/bundle/*
@@ -1,378 +0,0 @@
1
- ## v61 (4/18/2013)
2
-
3
- Features:
4
-
5
- * Start caching the rubygems version used.
6
-
7
- Bugfixes:
8
-
9
- * Rebuild bundler cache if rubygems 2 is detected. Bugfixes in later rubygems.
10
-
11
- ## v60 (4/17/2013)
12
-
13
- Security:
14
-
15
- * Disable Java RMI Remote Classloading for CVE-2013-1537, <https://bugzilla.redhat.com/show_bug.cgi?id=952387>
16
-
17
- ## v59 (4/4/2013)
18
-
19
- Bugfixes:
20
-
21
- * Change JVM S3 bucket
22
-
23
- ## v58 (3/19/2013)
24
-
25
- Bugfixes:
26
-
27
- * Fix ruby 1.8.7 not being able to compile native extensions
28
-
29
- ## v57 (3/18/2013)
30
-
31
- Bugfixes:
32
-
33
- * Fix git gemspec bug in bundler
34
-
35
- ## v56 (3/11/2013)
36
-
37
- Bugfixes:
38
-
39
- * Upgrade bundler to 1.3.2 to fix --dry-clean/Would have removed bug in bundle clean, part 2.
40
-
41
- ## v55 (3/7/2013)
42
-
43
- Bugfixes:
44
-
45
- * Revert back to Bundler 1.3.0.pre.5, see https://gist.github.com/mattonrails/e063caf86962995e7ba0
46
-
47
- ## v54 (3/7/2013)
48
-
49
- Bugfixes:
50
-
51
- * Upgrade bundler to 1.3.2 to fix --dry-clean/Would have removed bug in bundle clean
52
-
53
- ## v53 (3/6/2013)
54
-
55
- Bugfixes:
56
-
57
- * bin/detect for Rails 3 and 4 will use railties for detection vs the rails gem
58
- * bin/detect does not error out when Gemfile + Gemfile.lock are missing
59
-
60
- ## v52 (2/25/2013)
61
-
62
- Bugfixes:
63
-
64
- * Revert back to 1.3.0.pre.5 due to bundler warnings
65
-
66
- ## v51 (2/25/2013)
67
-
68
- Features:
69
-
70
- * Initial Rails 4 beta support
71
- * Upgrade bundler to 1.3.0
72
-
73
- Bugfixes:
74
-
75
- * Better buildpack detection through Gemfile.lock gems
76
-
77
- ## v50 (1/31/2013)
78
-
79
- Features:
80
-
81
- * Restore ruby deploys back to normal
82
-
83
- ## v49 (1/30/2013)
84
-
85
- Features:
86
-
87
- * Re-enable ruby deploys for apps just using the heroku cache
88
- * Display ruby version change when busting the cache
89
-
90
- ## v48 (1/30/2013)
91
-
92
- Features:
93
-
94
- * Update deploy error message copy to link to status incident.
95
-
96
- ## v47 (1/30/2013)
97
-
98
- Features:
99
-
100
- * Disable ruby deploys due to rubygems.org compromise
101
-
102
- ## v46 (1/10/2013)
103
-
104
- Features:
105
-
106
- * Upgrade Bundler to 1.3.0.pre.5
107
- * bundler binstubs now go in vendor/bundle/bin
108
-
109
- ## v45 (12/14/2012)
110
-
111
- Features:
112
-
113
- * Stop setting env vars in bin/release now that login-shell is released
114
- * Enable Invoke Dynamic on JRuby by default
115
- * GEM_PATH is now updated on each push
116
-
117
- ## v44 (12/14/2012)
118
-
119
- Faulty Release
120
-
121
- ## v43 (12/13/2012)
122
-
123
- Features:
124
-
125
- * Upgrade Bundler to 1.3.0.pre.2
126
-
127
- ## v42 (11/26/2012)
128
-
129
- Features:
130
-
131
- * Upgrade Bundler to 1.2.2 to fix Ruby 2.0.0/YAML issues
132
-
133
- ## v41 (11/1/2012)
134
-
135
- Features:
136
-
137
- * Enable ruby 2.0.0 support for testing
138
-
139
- ## v40 (10/14/2012)
140
-
141
- Features:
142
-
143
- * Cache version of the buildpack we used to deploy
144
- * Purge cache when v38 is detected
145
-
146
- ## v39 (10/14/2012)
147
-
148
- Bugfixes:
149
-
150
- * Don't display cache clearing message for new apps
151
- * Actually clear bundler cache on ruby version change
152
-
153
- ## v38 (10/14/2012)
154
-
155
- Bugfixes:
156
-
157
- * Stop bundle cache from continually growing
158
-
159
- ## v37 (10/12/2012)
160
-
161
- Bugfixes:
162
-
163
- * Remove temporary workaround from v36.
164
- * Clear bundler cache upon Ruby version change
165
-
166
- ## v36 (10/12/2012)
167
-
168
- Bugfixes:
169
-
170
- * Always clear the cache for ruby 1.9.3 as a temporary workaround due to the security upgrade
171
-
172
- ## v35 (9/19/2012)
173
-
174
- Features:
175
-
176
- * Upgrade to Bundler 1.2.1
177
- * Display bundle clean output
178
- * More resilent to rubygems.org API outages
179
-
180
- Bugfixes:
181
-
182
- * `bundle clean` works again
183
-
184
- ## v34 (8/30/2012)
185
-
186
- Features:
187
-
188
- * Upgrade to Bundler 1.2.0
189
-
190
- ## v33 (8/9/2012)
191
-
192
- Features:
193
-
194
- * Upgrade to Bundler 1.2.0.rc.2
195
- * vendor JDK7 for JRuby, but disable invoke dynamic
196
-
197
- ## v29 (7/19/2012)
198
-
199
- Features:
200
-
201
- * support .profile.d/ruby.sh
202
- * sync stdout so that the buildpack streams even in non-interactive shells
203
- * Upgrade to Bundler 1.2.0.rc
204
-
205
- ## v28 (7/16/2012)
206
-
207
- Features:
208
-
209
- * Vendor OpenJDK6 into slug when using JRuby
210
- * ruby version support for ruby 1.8.7 via bundler's ruby DSL
211
-
212
- Bugfixes:
213
-
214
- * sqlite3 error gets displayed again
215
-
216
- ## v27 (6/14/2012)
217
-
218
- Bugfixes:
219
-
220
- * Remove `vendor/bundle` message only appears when dir actually exists
221
-
222
- ## v26 (6/14/2012)
223
-
224
- Features:
225
-
226
- * print message when assets:precompile finishes successfully
227
- * Remove `vendor/bundle` if user commits it to their git repo.
228
-
229
- ## v25 (6/12/2012)
230
-
231
- Features:
232
-
233
- * support "ruby-xxx-jruby-yyy" for jruby detection packages
234
-
235
- ## v24 (6/7/2012)
236
-
237
- Features:
238
-
239
- * removes bundler cache in the slug, to minimize slug size (@stevenh512, #16)
240
- * optimize push time with caching
241
-
242
- ## v23 (5/8/2012)
243
-
244
- Bugfixes:
245
-
246
- * fix ruby version bug with "fatal:-Not-a-git-repository"
247
-
248
- ## v22 (5/7/2012)
249
-
250
- Features:
251
-
252
- * bundler 1.2.0.pre
253
- * ruby version support for ruby 1.9.2/1.9.3 via bundler's ruby DSL
254
-
255
- Deprecation:
256
-
257
- * ENV['RUBY_VERSION'] in favor of bundler's ruby DSL
258
-
259
- ## v21 (3/21/2012)
260
-
261
- Features:
262
-
263
- * bundler 1.1.2
264
-
265
- ## v20 (3/12/2012)
266
-
267
- Features:
268
-
269
- * bundler 1.1.0 \o/
270
-
271
- ## v19 (1/25/2012)
272
-
273
- Bugfixes:
274
-
275
- * fix native extension building for rbx 2.0.0dev
276
-
277
- ## v18 (1/18/2012)
278
-
279
- Features:
280
-
281
- * JRuby support
282
- * rbx 2.0.0dev support
283
-
284
- Bugfixes:
285
-
286
- * force db password to be a string in the yaml file
287
-
288
- ## v17 (12/29/2011)
289
-
290
- Features:
291
-
292
- * bundler 1.1.rc.7
293
-
294
- ## v16 (12/29/2011)
295
-
296
- Features:
297
-
298
- * pass DATABASE_URL to rails 3.1 assets:precompile rake task detection
299
-
300
- ## v15 (12/27/2011)
301
-
302
- Features:
303
-
304
- * bundler 1.1.rc.6
305
-
306
- ## v14 (12/22/2011)
307
-
308
- Bugfixes:
309
-
310
- * stop freedom patching syck in ruby 1.9.3+
311
-
312
- ## v13 (12/15/2011)
313
-
314
- Features:
315
-
316
- * bundler 1.1.rc.5
317
-
318
- ## v12 (12/13/2011)
319
-
320
- Bugfixes:
321
-
322
- * syck workaround for yaml/psych issues
323
-
324
- ## v11 (12/12/2011)
325
-
326
- Features:
327
-
328
- * bundler 1.1.rc.3
329
-
330
- ## v10 (11/23/2011)
331
-
332
- Features:
333
-
334
- * bundler binstubs
335
- * dynamic slug_vendor_base detection
336
-
337
- Bugfixes:
338
-
339
- * don't show sqlite3 error if it's in a bundle without group on failed bundle install
340
-
341
- ## v9 (11/14/2011)
342
-
343
- Features:
344
-
345
- * rbx 1.2.4 support
346
- * print out RUBY_VERSION being used
347
-
348
- Bugfixes:
349
-
350
- * don't leave behind ruby_versions.yml
351
-
352
- ## v8 (11/8/2011)
353
-
354
- Features:
355
-
356
- * use vm as part of RUBY_VERSION
357
-
358
- ## v7 (11/8/2011)
359
-
360
- Features:
361
-
362
- * ruby 1.9.3 support
363
- * specify ruby versions using RUBY_VERSION build var
364
-
365
- Bugfixes:
366
-
367
- * move "bin/" to the front of the PATH, so apps can override existing bins
368
-
369
- ## v6 (11/2/2011)
370
-
371
- Features:
372
-
373
- * add sqlite3 warning when detected on bundle install error
374
-
375
- Bugfixes:
376
-
377
- * Change gem detection to use lockfile parser
378
- * use `$RACK_ENV` when thin is detected for rack apps