mirror of
https://github.com/velopack/velopack.git
synced 2025-10-25 15:19:22 +00:00
Run clean *after* apply, dummy
This commit is contained in:
@@ -150,7 +150,7 @@ namespace Squirrel
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void BuildReleasesFile(string releasePackagesDir)
|
public static List<ReleaseEntry> BuildReleasesFile(string releasePackagesDir)
|
||||||
{
|
{
|
||||||
var packagesDir = new DirectoryInfo(releasePackagesDir);
|
var packagesDir = new DirectoryInfo(releasePackagesDir);
|
||||||
|
|
||||||
@@ -176,6 +176,7 @@ namespace Squirrel
|
|||||||
}
|
}
|
||||||
|
|
||||||
File.Move(tempFile, target);
|
File.Move(tempFile, target);
|
||||||
|
return entries;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool filenameIsDeltaFile(string filename)
|
static bool filenameIsDeltaFile(string filename)
|
||||||
|
|||||||
@@ -29,16 +29,16 @@ namespace Squirrel
|
|||||||
{
|
{
|
||||||
progress = progress ?? (_ => { });
|
progress = progress ?? (_ => { });
|
||||||
|
|
||||||
await cleanDeadVersions(updateInfo.CurrentlyInstalledVersion != null ? updateInfo.CurrentlyInstalledVersion.Version : null);
|
var release = await createFullPackagesFromDeltas(updateInfo.ReleasesToApply, updateInfo.CurrentlyInstalledVersion);
|
||||||
progress(10);
|
progress(10);
|
||||||
|
|
||||||
var release = await createFullPackagesFromDeltas(updateInfo.ReleasesToApply, updateInfo.CurrentlyInstalledVersion);
|
await installPackageToAppDir(updateInfo, release);
|
||||||
progress(50);
|
progress(50);
|
||||||
|
|
||||||
await installPackageToAppDir(updateInfo, release);
|
var currentReleases = await updateLocalReleasesFile();
|
||||||
progress(95);
|
progress(75);
|
||||||
|
|
||||||
await updateLocalReleasesFile();
|
await cleanDeadVersions(currentReleases.MaxBy(x => x.Version).First().Version);
|
||||||
progress(100);
|
progress(100);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -47,7 +47,6 @@ namespace Squirrel
|
|||||||
version = version ?? new Version(255, 255, 255, 255);
|
version = version ?? new Version(255, 255, 255, 255);
|
||||||
this.Log().Info("Uninstalling version '{0}'", version);
|
this.Log().Info("Uninstalling version '{0}'", version);
|
||||||
|
|
||||||
|
|
||||||
// find all the old releases (and this one)
|
// find all the old releases (and this one)
|
||||||
var directoriesToDelete = getOldReleases(version)
|
var directoriesToDelete = getOldReleases(version)
|
||||||
.Concat(new [] { getDirectoryForRelease(version) })
|
.Concat(new [] { getDirectoryForRelease(version) })
|
||||||
@@ -302,16 +301,16 @@ namespace Squirrel
|
|||||||
|
|
||||||
await toCleanup.ForEachAsync(async x => {
|
await toCleanup.ForEachAsync(async x => {
|
||||||
try {
|
try {
|
||||||
await Utility.DeleteDirectory(x.FullName);
|
await Utility.DeleteDirectoryWithFallbackToNextReboot(x.FullName);
|
||||||
} catch (UnauthorizedAccessException ex) {
|
} catch (UnauthorizedAccessException ex) {
|
||||||
this.Log().WarnException("Couldn't delete directory: " + x.FullName, ex);
|
this.Log().WarnException("Couldn't delete directory: " + x.FullName, ex);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
internal async Task updateLocalReleasesFile()
|
internal async Task<List<ReleaseEntry>> updateLocalReleasesFile()
|
||||||
{
|
{
|
||||||
await Task.Run(() => ReleaseEntry.BuildReleasesFile(Utility.PackageDirectoryForAppDir(rootAppDirectory)));
|
return await Task.Run(() => ReleaseEntry.BuildReleasesFile(Utility.PackageDirectoryForAppDir(rootAppDirectory)));
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerable<DirectoryInfo> getReleases()
|
IEnumerable<DirectoryInfo> getReleases()
|
||||||
|
|||||||
Reference in New Issue
Block a user