grafana-cli: Fix installing of plugins missing directory entries in zip (#26945)

This commit is contained in:
Adrián López
2020-08-12 17:08:12 +02:00
committed by GitHub
parent 3403db190d
commit 2093f7c1f0

View File

@ -233,6 +233,12 @@ func extractFiles(archiveFile string, pluginName string, filePath string, allowS
return fmt.Errorf(permissionsDeniedMessage, newFile) return fmt.Errorf(permissionsDeniedMessage, newFile)
} }
} else { } else {
// Create needed directories to extract file
err := os.MkdirAll(filepath.Dir(newFile), 0755)
if err != nil {
return errutil.Wrap("failed to create directory to extract plugin files", err)
}
if isSymlink(zf) { if isSymlink(zf) {
if !allowSymlinks { if !allowSymlinks {
logger.Errorf("%v: plugin archive contains symlink which is not allowed. Skipping \n", zf.Name) logger.Errorf("%v: plugin archive contains symlink which is not allowed. Skipping \n", zf.Name)