소스 검색

Merge pull request #2091 from jaypea/archivemanager

cleanup temporary download location when archiving
Jordi Boggiano 11 년 전
부모
커밋
af1f5a3423
2개의 변경된 파일11개의 추가작업 그리고 1개의 파일을 삭제
  1. 8 1
      src/Composer/Package/Archiver/ArchiveManager.php
  2. 3 0
      tests/Composer/Test/Package/Archiver/ArchiveManagerTest.php

+ 8 - 1
src/Composer/Package/Archiver/ArchiveManager.php

@@ -142,6 +142,13 @@ class ArchiveManager
         }
 
         // Create the archive
-        return $usableArchiver->archive($sourcePath, $target, $format, $package->getArchiveExcludes());
+        $archivePath = $usableArchiver->archive($sourcePath, $target, $format, $package->getArchiveExcludes());
+
+        //cleanup temporary download
+        if (!$package instanceof RootPackage) {
+            $filesystem->removeDirectory($sourcePath);
+        }
+
+        return $archivePath;
     }
 }

+ 3 - 0
tests/Composer/Test/Package/Archiver/ArchiveManagerTest.php

@@ -49,6 +49,9 @@ class ArchiveManagerTest extends ArchiverTest
 
         $target = $this->getTargetName($package, 'tar');
         $this->assertFileExists($target);
+        
+        $tmppath = sys_get_temp_dir().'/composer_archiver/'.$this->manager->getPackageFilename($package);
+        $this->assertFileNotExists($tmppath);
 
         unlink($target);
     }