File tree Expand file tree Collapse file tree 1 file changed +16
-2
lines changed Expand file tree Collapse file tree 1 file changed +16
-2
lines changed Original file line number Diff line number Diff line change 11
11
import pathlib
12
12
import shutil
13
13
import subprocess
14
+ import platform
15
+ import time
14
16
from python .runfiles import runfiles
15
17
16
18
runfiles = runfiles .Create ()
42
44
script = runfiles .Rlocation (opts .pkg_install_script )
43
45
44
46
if destdir .exists () and opts .cleanup :
45
- shutil .rmtree (destdir )
46
-
47
+ if platform .system () == 'Windows' :
48
+ # On Windows we might have virus scanner still looking at the path so
49
+ # attempt removal a couple of times sleeping between each attempt.
50
+ for attempt in [1 , 2 ]:
51
+ try :
52
+ shutil .rmtree (destdir )
53
+ break
54
+ except OSError as e :
55
+ if e .winerror == 32 :
56
+ time .sleep (attempt )
57
+ else :
58
+ raise
59
+ else :
60
+ shutil .rmtree (destdir )
47
61
destdir .mkdir (parents = True , exist_ok = True )
48
62
subprocess .run ([script , "--destdir" , destdir ], check = True )
49
63
You can’t perform that action at this time.
0 commit comments