File tree Expand file tree Collapse file tree 1 file changed +28
-2
lines changed Expand file tree Collapse file tree 1 file changed +28
-2
lines changed Original file line number Diff line number Diff line change 1
1
# frozen_string_literal: true
2
2
3
+ require "debug"
4
+
3
5
module Pgpm
4
6
module Deb
5
7
class Builder
@@ -31,8 +33,32 @@ def prepare
31
33
@pgpm_dir = Dir . mktmpdir
32
34
Dir . mkdir "#{ @pgpm_dir } /source"
33
35
Dir . mkdir "#{ @pgpm_dir } /out"
34
- puts " Copying #{ @spec . package . source . to_s } to #{ @pgpm_dir } /source/"
35
- FileUtils . copy_entry @spec . package . source . to_s , "#{ @pgpm_dir } /source/"
36
+
37
+ puts " Downloading and unpacking sources to #{ @pgpm_dir } "
38
+
39
+ fn = nil
40
+ @spec . sources . map do |src |
41
+ srcfile = File . join ( "#{ @pgpm_dir } " , src . name )
42
+ File . write ( srcfile , src . read )
43
+ fn = src . name
44
+ end
45
+
46
+ system ( "tar -xf #{ @pgpm_dir } /#{ fn } -C #{ @pgpm_dir } /source/" )
47
+ FileUtils . remove ( "#{ @pgpm_dir } /#{ fn } " )
48
+
49
+ untar_dir_entries = Dir . entries ( "#{ @pgpm_dir } /source/" ) . select do |entry |
50
+ !( [ "." , ".." ] . include? ( entry ) )
51
+ end
52
+
53
+ if untar_dir_entries . size == 1
54
+ entry = untar_dir_entries [ 0 ]
55
+ if File . directory? ( "#{ @pgpm_dir } /source/#{ entry } " )
56
+ FileUtils . mv "#{ @pgpm_dir } /source/#{ entry } " , "#{ @pgpm_dir } /"
57
+ FileUtils . remove_dir "#{ @pgpm_dir } /source/"
58
+ FileUtils . mv "#{ @pgpm_dir } /#{ entry } " , "#{ @pgpm_dir } /source"
59
+ end
60
+ end
61
+
36
62
end
37
63
38
64
def pull_image
You can’t perform that action at this time.
0 commit comments