@@ -8,6 +8,7 @@ export class UpdateCommand implements ICommand {
8
8
private $platformsData : IPlatformsData ,
9
9
private $pluginsService : IPluginsService ,
10
10
private $projectDataService : IProjectDataService ,
11
+ private $fs : IFileSystem ,
11
12
private $logger : ILogger ,
12
13
private $options : IOptions ,
13
14
private $errors : IErrors ) { }
@@ -22,7 +23,10 @@ export class UpdateCommand implements ICommand {
22
23
shelljs . mkdir ( tmpDir ) ;
23
24
shelljs . cp ( path . join ( this . $projectData . projectDir , "package.json" ) , tmpDir ) ;
24
25
for ( let folder of folders ) {
25
- shelljs . cp ( "-rf" , path . join ( this . $projectData . projectDir , folder ) , tmpDir ) ;
26
+ let folderToCopy = path . join ( this . $projectData . projectDir , folder ) ;
27
+ if ( this . $fs . exists ( folderToCopy ) ) {
28
+ shelljs . cp ( "-rf" , folderToCopy , tmpDir ) ;
29
+ }
26
30
}
27
31
} catch ( error ) {
28
32
this . $logger . error ( "Could not backup project folders!" ) ;
@@ -35,7 +39,10 @@ export class UpdateCommand implements ICommand {
35
39
shelljs . cp ( "-f" , path . join ( tmpDir , "package.json" ) , this . $projectData . projectDir ) ;
36
40
for ( let folder of folders ) {
37
41
shelljs . rm ( "-rf" , path . join ( this . $projectData . projectDir , folder ) ) ;
38
- shelljs . cp ( "-fr" , path . join ( tmpDir , folder ) , this . $projectData . projectDir ) ;
42
+ let folderToCopy = path . join ( tmpDir , folder ) ;
43
+ if ( this . $fs . exists ( folderToCopy ) ) {
44
+ shelljs . cp ( "-fr" , folderToCopy , this . $projectData . projectDir ) ;
45
+ }
39
46
}
40
47
this . $logger . error ( "Could not update the project!" ) ;
41
48
} finally {
0 commit comments