Permalink
Browse files

Merge pull request #9 from arunagw/update-build-pack

Update to heroku-buildpack-ruby v127
  • Loading branch information...
2 parents c1129ad + e206d25 commit a5e8cde80cdec778e8f32da999b2c00352ed3eb3 @ndbroadbent committed Oct 15, 2014
View
@@ -9,15 +9,13 @@ before_script: bundle exec rake hatchet:setup_travis
script: bundle exec parallel_rspec -n 11 spec/
after_script:
- - heroku keys:remove ~/.ssh/id_rsa
+ - heroku keys:remove $USER@`hostname`
env:
global:
- HATCHET_RETRIES=3
- IS_RUNNING_ON_TRAVIS=true
- HATCHET_DEPLOY_STRATEGY=git
+ - HATCHET_APP_LIMIT=80
# sets the HEROKU_API_KEY to a dummy user for Heroku deploys
- - secure: |-
- ccqb7fKumq2+VEkSrkCqmLjALj5R/ZDgAQGZULSFYeD0O0man3hezUEbMB53
- U+7gLkbqz5saFX9S5Sz26f99vmhWz1bMHkC2UtlyFSlgaqSvXMZNHJAweqRY
- ptqugqtvT0VVl1g3DInVgjDZhjINICv/CIorNuHijOFanP1Zmxg=
+ - secure: QvDqQQV/Gtk1Og5s8879i+mYLdK6WtVkZMKlCWvJrztYwcRMOGsVVbXjq5EkEJCfxs4GWv7KqXfPPPLDS5Wumzkt4zXVh3ZS+rzQZ2IYC0XbKZYt2e14ZpSTgDUY20J0Ex/GG5dTulJaG9FBe452UDiqYrianE4p8h8w18JBfCs=
View
@@ -1,5 +1,126 @@
## Master
+## v127 (9/18/2014)
+
+* rbx is now stack aware
+
+## v126 (8/4/2014)
+
+* fix bundler cache clearing on ruby version change
+* vendor the jvm when yui-compressor is detected
+
+## v125 (8/1/2014)
+
+* bump to node 0.10.30 on cedar-14
+
+## v124 (8/1/2014)
+
+* use node 0.10.29 on cedar-14
+* properly use vendored jvm, so not to be dependent on java on the stack image
+
+## v123 (7/25/2014)
+
+* fix permission denied edge cases when copying the bundler cache with minitest
+
+## v122 (7/25/2014)
+
+* handle bundler cache for stack changes on existing apps
+
+## v121 (6/30/2014)
+
+* on new apps, source default envs instead of replacing them
+* support different stacks for new apps
+
+## v120 (6/16/2014)
+
+* Bump bundler to 1.6.3 which includes improved dependency resolver
+
+## v119 (5/9/2014)
+
+* Temporarily disable default ruby cache
+
+## v118 (5/6/2014)
+
+* Ruby version detection now loads user environment variables
+
+## v117 (4/14/2014)
+
+Features:
+
+
+Bugfixes:
+
+* fix anvil use case of multibuildpack with node
+
+
+## v116 (4/10/2014)
+
+Features:
+
+
+Bugfixes:
+
+* Revert back to Bundler 1.5.2
+
+
+## v115 (4/9/2014)
+
+Features:
+
+
+Bugfixes:
+
+* Add default process types to all apps deployed regardless of `Procfile`
+
+## v114 (4/9/2014)
+
+Features:
+
+* Bundler 1.6.1
+* Warn when not using a Procfile (looking at you webrick)
+
+Bugfixes:
+
+
+## v113 (4/8/2014)
+
+Features:
+
+* use heroku-buildpack-nodejs's node binary
+* `CURL_CONNECT_TIMEOUT` and `CURL_TIMEOUT` are configurable as ENV vars
+
+Bugfixes:
+
+* Don't double print "Running: rake assets:precompile" on Ruby apps
+
+
+## v112 (3/27/2014)
+
+Features:
+
+
+Bugfixes:
+
+* compile psych with libyaml 0.1.6 for CVE-2014-2525
+
+## v111 (3/20/2014)
+
+Features:
+
+
+Bugfixes:
+
+* spelling
+
+
+## v110 (3/20/2014)
+
+Features:
+
+* Better message when running `assets:precompile` without a database
+
+Bugfixes:
+
## v108 (2/27/2014)
Features:
View
@@ -8,23 +8,22 @@ GIT
GEM
remote: https://rubygems.org/
specs:
- activesupport (4.0.3)
- i18n (~> 0.6, >= 0.6.4)
- minitest (~> 4.2)
- multi_json (~> 1.3)
+ activesupport (4.1.4)
+ i18n (~> 0.6, >= 0.6.9)
+ json (~> 1.7, >= 1.7.7)
+ minitest (~> 5.1)
thread_safe (~> 0.1)
- tzinfo (~> 0.3.37)
+ tzinfo (~> 1.1)
anvil-cli (0.16.1)
progress (~> 2.4.0)
rest-client (~> 1.6.7)
thor (~> 0.15.2)
- atomic (1.1.14)
diff-lcs (1.1.3)
- excon (0.31.0)
- heroku-api (0.3.17)
- excon (~> 0.27)
- multi_json (~> 1.8.2)
- heroku_hatchet (1.3.2)
+ excon (0.38.0)
+ heroku-api (0.3.19)
+ excon (~> 0.38)
+ multi_json (~> 1.8)
+ heroku_hatchet (1.3.4)
activesupport (~> 4)
anvil-cli (~> 0)
excon (~> 0)
@@ -33,20 +32,24 @@ GEM
rrrretry (~> 1)
thor (~> 0)
threaded (~> 0)
- i18n (0.6.9)
- mime-types (2.1)
- minitest (4.7.5)
- multi_json (1.8.4)
+ i18n (0.6.11)
+ json (1.8.1)
+ mime-types (1.25.1)
+ minitest (5.4.0)
+ multi_json (1.10.1)
netrc (0.7.7)
parallel (0.6.5)
parallel_tests (0.13.1)
parallel
progress (2.4.0)
rake (10.0.4)
+ rdoc (4.1.1)
+ json (~> 1.4)
repl_runner (0.0.3)
activesupport
- rest-client (1.6.7)
- mime-types (>= 1.16)
+ rest-client (1.6.8)
+ mime-types (~> 1.16)
+ rdoc (>= 2.4.2)
rrrretry (1.0.0)
rspec (2.2.0)
rspec-core (~> 2.2)
@@ -59,10 +62,10 @@ GEM
rspec-retry (0.2.1)
rspec
thor (0.15.4)
- thread_safe (0.1.3)
- atomic
+ thread_safe (0.3.4)
threaded (0.0.4)
- tzinfo (0.3.38)
+ tzinfo (1.2.1)
+ thread_safe (~> 0.1)
PLATFORMS
ruby
View
@@ -39,16 +39,16 @@ def in_gem_env(gem_home, &block)
ENV['GEM_PATH'] = old_gem_path
end
-def install_gem(gem, version)
- name = "#{gem}-#{version}"
- Dir.mktmpdir("#{gem}-#{version}") do |tmpdir|
+def install_gem(gem_name, version)
+ name = "#{gem_name}-#{version}"
+ Dir.mktmpdir("#{gem_name}-#{version}") do |tmpdir|
Dir.chdir(tmpdir) do |dir|
FileUtils.rm_rf("#{tmpdir}/*")
in_gem_env(tmpdir) do
- sh("unset RUBYOPT; gem install #{gem} --version #{version} --no-ri --no-rdoc --env-shebang")
- sh("rm #{gem}-#{version}.gem")
- sh("rm -rf cache/#{gem}-#{version}.gem")
+ sh("unset RUBYOPT; gem install #{gem_name} --version #{version} --no-ri --no-rdoc --env-shebang")
+ sh("rm #{gem_name}-#{version}.gem")
+ sh("rm -rf cache/#{gem_name}-#{version}.gem")
sh("tar czvf #{tmpdir}/#{name}.tgz *")
s3_upload(tmpdir, name)
end
@@ -246,7 +246,6 @@ FILE
}
end
- desc "publish buildpack"
task :publish do
buildpack_name = "heroku/ruby"
puts "Publishing #{buildpack_name} buildpack"
View
@@ -4,6 +4,7 @@
"sharpstone/asset_precompile_pass",
"sharpstone/asset_precompile_not_found",
"sharpstone/database_url_expected_in_rakefile",
+ "sharpstone/connect_to_database_on_first_push",
"sharpstone/no_rakefile",
"sharpstone/bad_rakefile",
"sharpstone/mri_187_no_rake",
@@ -20,8 +21,10 @@
],
"ruby": [
"sharpstone/mri_187",
+ "sharpstone/mri_193_p484",
"sharpstone/ruby_193_jruby_173",
- "sharpstone/ruby_193_jruby_176"
+ "sharpstone/ruby_193_jruby_176",
+ "sharpstone/empty-procfile"
],
"rack": [
"sharpstone/default_ruby",
@@ -50,5 +53,8 @@
],
"rails41": [
"sharpstone/rails41_scaffold"
+ ],
+ "multibuildpack": [
+ "sharpstone/node_multi"
]
}
View
@@ -4,6 +4,7 @@
require "digest/sha1"
require "language_pack/shell_helpers"
require "language_pack/cache"
+require "language_pack/helpers/bundler_cache"
require "language_pack/metadata"
require "language_pack/fetcher"
require "language_pack/instrument"
@@ -14,7 +15,8 @@
class LanguagePack::Base
include LanguagePack::ShellHelpers
- VENDOR_URL = "https://s3-external-1.amazonaws.com/heroku-buildpack-ruby"
+ VENDOR_URL = ENV['BUILDPACK_VENDOR_URL'] || "https://s3-external-1.amazonaws.com/heroku-buildpack-ruby"
+ DEFAULT_LEGACY_STACK = "cedar"
attr_reader :build_path, :cache
@@ -23,13 +25,15 @@ class LanguagePack::Base
# @param [String] the path of the cache dir this is nil during detect and release
def initialize(build_path, cache_path=nil)
self.class.instrument "base.initialize" do
- @build_path = build_path
- @cache = LanguagePack::Cache.new(cache_path) if cache_path
- @metadata = LanguagePack::Metadata.new(@cache)
- @id = Digest::SHA1.hexdigest("#{Time.now.to_f}-#{rand(1000000)}")[0..10]
- @warnings = []
- @deprecations = []
- @fetchers = {:buildpack => LanguagePack::Fetcher.new(VENDOR_URL) }
+ @build_path = build_path
+ @stack = ENV["STACK"]
+ @cache = LanguagePack::Cache.new(cache_path) if cache_path
+ @metadata = LanguagePack::Metadata.new(@cache)
+ @bundler_cache = LanguagePack::BundlerCache.new(@cache, @stack)
+ @id = Digest::SHA1.hexdigest("#{Time.now.to_f}-#{rand(1000000)}")[0..10]
+ @warnings = []
+ @deprecations = []
+ @fetchers = {:buildpack => LanguagePack::Fetcher.new(VENDOR_URL) }
Dir.chdir build_path
end
@@ -76,9 +80,11 @@ def default_process_types
def compile
write_release_yaml
instrument 'base.compile' do
- if @warnings.any?
- topic "WARNINGS:"
- puts @warnings.join("\n")
+ Kernel.puts ""
+ @warnings.each do |warning|
+ Kernel.puts "###### WARNING:"
+ puts warning
+ Kernel.puts ""
end
if @deprecations.any?
topic "DEPRECATIONS:"
@@ -90,12 +96,18 @@ def compile
def write_release_yaml
release = {}
release["addons"] = default_addons
- release["default_process_types"] = default_process_types
release["config_vars"] = default_config_vars
+ release["default_process_types"] = default_process_types
FileUtils.mkdir("tmp") unless File.exists?("tmp")
File.open("tmp/heroku-buildpack-release-step.yml", 'w') do |f|
f.write(release.to_yaml)
end
+
+ unless File.exist?("Procfile")
+ msg = "No Procfile detected, using the default web server (webrick)\n"
+ msg << "https://devcenter.heroku.com/articles/ruby-default-web-server"
+ warn msg
+ end
end
# log output
Oops, something went wrong.

0 comments on commit a5e8cde

Please sign in to comment.