@@ -377,7 +377,7 @@ func (ftc *fileTypeChecker) IsFile() bool {
377
377
}
378
378
379
379
func (ftc * fileTypeChecker ) MakeFile () error {
380
- return ftc . hu . MakeFile (ftc .path )
380
+ return makeFile (ftc .path )
381
381
}
382
382
383
383
func (ftc * fileTypeChecker ) IsDir () bool {
@@ -392,7 +392,7 @@ func (ftc *fileTypeChecker) IsDir() bool {
392
392
}
393
393
394
394
func (ftc * fileTypeChecker ) MakeDir () error {
395
- return ftc . hu . MakeDir (ftc .path )
395
+ return makeDir (ftc .path )
396
396
}
397
397
398
398
func (ftc * fileTypeChecker ) IsBlock () bool {
@@ -470,3 +470,29 @@ func checkTypeInternal(ftc hostPathTypeChecker, pathType *v1.HostPathType) error
470
470
471
471
return nil
472
472
}
473
+
474
+ // makeDir creates a new directory.
475
+ // If pathname already exists as a directory, no error is returned.
476
+ // If pathname already exists as a file, an error is returned.
477
+ func makeDir (pathname string ) error {
478
+ err := os .MkdirAll (pathname , os .FileMode (0755 ))
479
+ if err != nil {
480
+ if ! os .IsExist (err ) {
481
+ return err
482
+ }
483
+ }
484
+ return nil
485
+ }
486
+
487
+ // makeFile creates an empty file.
488
+ // If pathname already exists, whether a file or directory, no error is returned.
489
+ func makeFile (pathname string ) error {
490
+ f , err := os .OpenFile (pathname , os .O_CREATE , os .FileMode (0644 ))
491
+ defer f .Close ()
492
+ if err != nil {
493
+ if ! os .IsExist (err ) {
494
+ return err
495
+ }
496
+ }
497
+ return nil
498
+ }
0 commit comments