pkgr 1.7.0 → 1.7.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5bc2c3b54c7392441fcb7245dd55d92f50c079d7
4
- data.tar.gz: 651f0aace529cd1fb2b4094cee35664544febb82
3
+ metadata.gz: 4295eff26d27f2e59538234d2dd56bbd3cd1f414
4
+ data.tar.gz: 4cbbec7b378bc664c72f8cf7ab2d146e9311607e
5
5
  SHA512:
6
- metadata.gz: f3056964307ef13fb6d2180451bde13ef3dbdcb1b8e7aaf78aad32de65d075eff37237bcc78559ed20b3ac0626f4840a525f7fa59c828de0c1fadf6ca88fa929
7
- data.tar.gz: adfc0cc6caa99afa30339503b98a65f8efa5fc9665d2aa67939f209a5f46f538df8e0ce2cc07a95bfdb4b34de53454b0661537dff4de178c1315df650546d38e
6
+ metadata.gz: 482bb1d56b8d58727326f8e39dfa31b44a6702b04d3d74e871d47b644ed3615233304881b31c8b9fbdfb0dc2f152f689e2ad4129c55c51f386e2ac5b7d431df1
7
+ data.tar.gz: ba7d6a6bc42b625d0912edcae450f76717820c8ca80bafff7a3a17af3b536eb794c491256fc78bad55f1ab31dfbb0ffd7efd556ebdd9e7a49eb62d5501a81b3c
@@ -7,8 +7,14 @@ module Pkgr
7
7
  attr_writer :buildpacks_cache_dir
8
8
 
9
9
  def buildpacks_cache_dir
10
- @buildpacks_cache_dir ||= File.expand_path("~/.pkgr/buildpacks").tap do |dir|
11
- FileUtils.mkdir_p(dir)
10
+ default_buildpacks_cache_dir = File.expand_path("~/.pkgr/buildpacks")
11
+ @buildpacks_cache_dir ||= begin
12
+ default_buildpacks_cache_dir.tap do |dir|
13
+ FileUtils.mkdir_p(dir)
14
+ end
15
+ rescue
16
+ Pkgr.warn "Unable to create directory at #{default_buildpacks_cache_dir.inspect}. Using temporary directory."
17
+ Dir.mktmpdir
12
18
  end
13
19
  end
14
20
  end
@@ -36,7 +42,10 @@ module Pkgr
36
42
  end
37
43
 
38
44
  def compile(path, compile_cache_dir, compile_env_dir)
39
- cmd = %{env -i #{compound_environment(path)} #{dir}/bin/compile "#{path}" "#{compile_cache_dir}" "#{compile_env_dir}" }
45
+ compile_home_dir = Dir.mktmpdir
46
+ # Required to work around bundler forcing a writable home dir
47
+ local_env = Env.new(["HOME=#{compile_home_dir}"])
48
+ cmd = %{env -i #{compound_environment(path, local_env)} #{dir}/bin/compile "#{path}" "#{compile_cache_dir}" "#{compile_env_dir}" }
40
49
  Pkgr.debug "Running #{cmd.inspect}"
41
50
 
42
51
  Dir.chdir(path) do
@@ -48,7 +57,8 @@ module Pkgr
48
57
  end
49
58
  raise "compile failed" unless $?.exitstatus.zero?
50
59
  end
51
-
60
+ ensure
61
+ FileUtils.remove_entry_secure compile_home_dir
52
62
  true
53
63
  end
54
64
 
@@ -107,8 +117,8 @@ module Pkgr
107
117
 
108
118
  private
109
119
 
110
- def compound_environment(path)
111
- Env.new(['PATH=$PATH']).merge(env).merge(exported_environment(File.join(path, "export")))
120
+ def compound_environment(path, local_env = Env.new)
121
+ Env.new(['PATH=$PATH']).merge(local_env).merge(env).merge(exported_environment(File.join(path, "export")))
112
122
  end
113
123
 
114
124
  def exported_environment(path)
@@ -42,7 +42,7 @@ module Pkgr
42
42
  v = (Git.new(path).latest_tag || "").gsub(/^[^\d]+(\d.*)/, '\1')
43
43
  # If it's not a Git archive, try to figure out svn revision number
44
44
  begin
45
- v = `cd #{path.to_s}&&svn info|grep Revision`.to_s.gsub!(/\D/, "") if (v !~ /^\d/)
45
+ v = `cd #{path.to_s} && svn info 2>/dev/null | grep Revision`.to_s.gsub!(/\D/, "") if (v !~ /^\d/)
46
46
  rescue
47
47
  end
48
48
  v = "0.0.0" if v !~ /^\d/
@@ -1,3 +1,3 @@
1
1
  module Pkgr
2
- VERSION = "1.7.0"
2
+ VERSION = "1.7.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pkgr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.7.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cyril Rohr