Skip to content

Commit bdd485b

Browse files
committed
Create GRADLE_USER_HOME if it doesn't exist before symlinking caches
os.Symlink fails with "no such file or directory" when the parent directory of the link target doesn't exist. Add MkdirAll so the restore command works on machines where ~/.gradle has never been created.
1 parent afc33de commit bdd485b

1 file changed

Lines changed: 3 additions & 0 deletions

File tree

cmd/gradle-cache/main.go

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -274,6 +274,9 @@ func (c *RestoreCmd) Run(ctx context.Context) error {
274274
return errors.Errorf("extracted bundle does not contain a caches/ directory: %w", err)
275275
}
276276
localCaches := filepath.Join(c.GradleUserHome, "caches")
277+
if err := os.MkdirAll(c.GradleUserHome, 0o750); err != nil {
278+
return errors.Wrap(err, "create gradle user home dir")
279+
}
277280
if err := os.RemoveAll(localCaches); err != nil {
278281
return errors.Wrap(err, "remove existing caches dir")
279282
}

0 commit comments

Comments
 (0)