Skip to content

Commit 923b319

Browse files
committed
auto drop workload...
1 parent 755d2be commit 923b319

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

tools/rune-cli/Properties/launchSettings.json

+1-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55
},
66
"install workload with manifest": {
77
"commandName": "Project",
8-
"commandLineArgs": "run",
9-
"workingDirectory": "C:\\Users\\ls-mi\\.vein\\te"
8+
"commandLineArgs": "workload install vein.runtime"
109
}
1110
}
1211
}

tools/rune-cli/cmd/InstallWorkloadCommand.cs

+9-6
Original file line numberDiff line numberDiff line change
@@ -95,16 +95,19 @@ public static async Task<int> InstallWorkloadAsync(WorkloadInstallingContext con
9595
var tagFolder = WorkloadDirectory
9696
.SubDirectory(name)
9797
.SubDirectory(version);
98-
98+
static void RecursiveDelete(DirectoryInfo baseDir)
99+
{
100+
if (!baseDir.Exists)
101+
return;
102+
foreach (var dir in baseDir.EnumerateDirectories()) RecursiveDelete(dir);
103+
baseDir.Delete(true);
104+
}
99105
if (tagFolder.Exists)
100106
{
101-
task.FailTask();
102-
Log.Error($"Workload package [orange3]'{name}@{version}'[/] already installed, maybe u need [gray]'workload uninstall'[/]?");
103-
return -1;
107+
RecursiveDelete(tagFolder);
108+
tagFolder.Ensure();
104109
}
105110

106-
107-
108111
var loader = new WorkloadRegistryLoader(query, storage, manifest, tagFolder, workloadDb, ctx);
109112

110113
if (await loader.InstallManifestForCurrentOS())

0 commit comments

Comments
 (0)