vendor/github.com/spf13/afero/cacheOnReadFs.go
changeset 256 6d9efbef00a9
parent 242 2a9ec03fe5a1
child 260 445e01aede7e
equal deleted inserted replaced
255:4f153a23adab 256:6d9efbef00a9
   115 		return err
   115 		return err
   116 	}
   116 	}
   117 	return u.layer.Chmod(name, mode)
   117 	return u.layer.Chmod(name, mode)
   118 }
   118 }
   119 
   119 
       
   120 func (u *CacheOnReadFs) Chown(name string, uid, gid int) error {
       
   121 	st, _, err := u.cacheStatus(name)
       
   122 	if err != nil {
       
   123 		return err
       
   124 	}
       
   125 	switch st {
       
   126 	case cacheLocal:
       
   127 	case cacheHit:
       
   128 		err = u.base.Chown(name, uid, gid)
       
   129 	case cacheStale, cacheMiss:
       
   130 		if err := u.copyToLayer(name); err != nil {
       
   131 			return err
       
   132 		}
       
   133 		err = u.base.Chown(name, uid, gid)
       
   134 	}
       
   135 	if err != nil {
       
   136 		return err
       
   137 	}
       
   138 	return u.layer.Chown(name, uid, gid)
       
   139 }
       
   140 
   120 func (u *CacheOnReadFs) Stat(name string) (os.FileInfo, error) {
   141 func (u *CacheOnReadFs) Stat(name string) (os.FileInfo, error) {
   121 	st, fi, err := u.cacheStatus(name)
   142 	st, fi, err := u.cacheStatus(name)
   122 	if err != nil {
   143 	if err != nil {
   123 		return nil, err
   144 		return nil, err
   124 	}
   145 	}