[147032] branches/vcs-fetch/base/src/port1.0/portfetch.tcl

raimue at macports.org raimue at macports.org
Wed Mar 23 18:14:02 PDT 2016


Revision: 147032
          https://trac.macports.org/changeset/147032
Author:   raimue at macports.org
Date:     2016-03-23 18:14:01 -0700 (Wed, 23 Mar 2016)
Log Message:
-----------
Generate tarball in tmpdir for gitfetch

Modified Paths:
--------------
    branches/vcs-fetch/base/src/port1.0/portfetch.tcl

Modified: branches/vcs-fetch/base/src/port1.0/portfetch.tcl
===================================================================
--- branches/vcs-fetch/base/src/port1.0/portfetch.tcl	2016-03-23 23:51:56 UTC (rev 147031)
+++ branches/vcs-fetch/base/src/port1.0/portfetch.tcl	2016-03-24 01:14:01 UTC (rev 147032)
@@ -451,18 +451,18 @@
     }
 
     ui_info "$UI_PREFIX Cloning ${fetch.type} repository"
-    set generatedpath "${workpath}/${fetch.type}"
-    set cmdstring "${git.cmd} clone $options ${git.url} ${generatedpath} 2>&1"
+    set tmppath [mkdtemp "/tmp/macports.portfetch.${name}.XXXXXXXX"]
+    set cmdstring "${git.cmd} clone $options ${git.url} ${tmppath} 2>&1"
     ui_debug "Executing: $cmdstring"
     if {[catch {system $cmdstring} result]} {
-        if {[file exists "${generatedpath}"]} {
-            delete ${generatedpath}
+        if {[file exists "${tmppath}"]} {
+            delete ${tmppath}
         }
         return -code error [msgcat::mc "Git clone failed"]
     }
 
     if {![git_tarballable]} {
-        file rename ${generatedpath} ${worksrcpath}
+        file rename ${tmppath} ${worksrcpath}
         return 0
     }
 
@@ -471,7 +471,7 @@
     set xz [findBinary xz ${portutil::autoconf::xz_path}]
     set cmdstring "${git.cmd} -c \"tar.tar.xz.command=xz -c\" archive --prefix=\"${git.file_prefix}/\" --format=tar.xz --output=${generatedfile}.TMP ${git.branch} 2>&1"
     ui_debug "Executing $cmdstring"
-    if {[catch {system -W ${generatedpath} $cmdstring} result]} {
+    if {[catch {system -W ${tmppath} $cmdstring} result]} {
         if {[file exists "${generatedfile}.TMP"]} {
             delete "${generatedfile}.TMP"
         }
@@ -479,6 +479,11 @@
     }
     file rename -force "${generatedfile}.TMP" "${generatedfile}"
 
+    # cleanup
+    if {[file exists "${tmppath}"]} {
+        delete ${tmppath}
+    }
+
     return 0
 }
 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20160323/952290fc/attachment.html>


More information about the macports-changes mailing list