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 11# frozen_string_literal: true
22
3+ require "debug"
4+
35module Pgpm
46 module Deb
57 class Builder
@@ -31,8 +33,32 @@ def prepare
3133 @pgpm_dir = Dir . mktmpdir
3234 Dir . mkdir "#{ @pgpm_dir } /source"
3335 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+
3662 end
3763
3864 def pull_image
You can’t perform that action at this time.
0 commit comments