浏览代码

Do not delete cwd (#86)

eric sciple 5 年之前
父节点
当前提交
689bf84be4
共有 2 个文件被更改,包括 12 次插入4 次删除
  1. 6 2
      dist/index.js
  2. 6 2
      src/git-source-provider.ts

+ 6 - 2
dist/index.js

@@ -4978,8 +4978,12 @@ function getSource(settings) {
         // Try prepare existing directory, otherwise recreate
         if (isExisting &&
             !(yield tryPrepareExistingDirectory(git, settings.repositoryPath, repositoryUrl, settings.clean))) {
-            yield io.rmRF(settings.repositoryPath);
-            yield io.mkdirP(settings.repositoryPath);
+            // Delete the contents of the directory. Don't delete the directory itself
+            // since it may be the current working directory.
+            core.info(`Deleting the contents of '${settings.repositoryPath}'`);
+            for (const file of yield fs.promises.readdir(settings.repositoryPath)) {
+                yield io.rmRF(path.join(settings.repositoryPath, file));
+            }
         }
         // Initialize the repository
         if (!fsHelper.directoryExistsSync(path.join(settings.repositoryPath, '.git'))) {

+ 6 - 2
src/git-source-provider.ts

@@ -59,8 +59,12 @@ export async function getSource(settings: ISourceSettings): Promise<void> {
       settings.clean
     ))
   ) {
-    await io.rmRF(settings.repositoryPath)
-    await io.mkdirP(settings.repositoryPath)
+    // Delete the contents of the directory. Don't delete the directory itself
+    // since it may be the current working directory.
+    core.info(`Deleting the contents of '${settings.repositoryPath}'`)
+    for (const file of await fs.promises.readdir(settings.repositoryPath)) {
+      await io.rmRF(path.join(settings.repositoryPath, file))
+    }
   }
 
   // Initialize the repository