diff --git a/build/RuntimeStore.targets b/build/RuntimeStore.targets
index c369b30a0a..89a0e289b1 100644
--- a/build/RuntimeStore.targets
+++ b/build/RuntimeStore.targets
@@ -207,6 +207,7 @@
+
+
+
+
diff --git a/build/tasks/ComposeNewStore.cs b/build/tasks/ComposeNewStore.cs
index 90f601e0a2..2ad23089d2 100644
--- a/build/tasks/ComposeNewStore.cs
+++ b/build/tasks/ComposeNewStore.cs
@@ -17,19 +17,15 @@ namespace RepoTasks
[Required]
public ITaskItem[] NewManifests { get; set; }
- [Required]
public ITaskItem[] RuntimeStoreFiles { get; set; }
- [Required]
public ITaskItem[] RuntimeStoreSymbolFiles { get; set; }
[Required]
public string ManifestDestination { get; set; }
- [Required]
public string StoreDestination { get; set; }
- [Required]
public string SymbolsDestination { get; set; }
public override bool Execute()
@@ -58,45 +54,51 @@ namespace RepoTasks
}
}
- // Insert new runtime store files
- foreach (var storeFile in RuntimeStoreFiles)
+ if (RuntimeStoreFiles != null)
{
- // format: {bitness}}/{tfm}}/{id}/{version}}/...
- var recursiveDir = storeFile.GetMetadata("RecursiveDir");
- var components = recursiveDir.Split(Path.DirectorySeparatorChar);
- var id = components[2];
- var version = components[3];
-
- if (!existingFiles.TryGetValue(id, out var versions) || !versions.Contains(version))
+ // Insert new runtime store files
+ foreach (var storeFile in RuntimeStoreFiles)
{
- var destinationDir = Path.Combine(StoreDestination, recursiveDir);
- if (!Directory.Exists(Path.Combine(StoreDestination, recursiveDir)))
- {
- Directory.CreateDirectory(destinationDir);
- }
+ // format: {bitness}}/{tfm}}/{id}/{version}}/...
+ var recursiveDir = storeFile.GetMetadata("RecursiveDir");
+ var components = recursiveDir.Split(Path.DirectorySeparatorChar);
+ var id = components[2];
+ var version = components[3];
- File.Copy(storeFile.GetMetadata("FullPath"), Path.Combine(destinationDir, $"{storeFile.GetMetadata("Filename")}{storeFile.GetMetadata("Extension")}"), overwrite: true);
+ if (!existingFiles.TryGetValue(id, out var versions) || !versions.Contains(version))
+ {
+ var destinationDir = Path.Combine(StoreDestination, recursiveDir);
+ if (!Directory.Exists(Path.Combine(StoreDestination, recursiveDir)))
+ {
+ Directory.CreateDirectory(destinationDir);
+ }
+
+ File.Copy(storeFile.GetMetadata("FullPath"), Path.Combine(destinationDir, $"{storeFile.GetMetadata("Filename")}{storeFile.GetMetadata("Extension")}"), overwrite: true);
+ }
}
}
- // Insert new runtime store files
- foreach (var symbolFile in RuntimeStoreSymbolFiles)
+ if (RuntimeStoreSymbolFiles != null)
{
- // format: {bitness}}/{tfm}}/{id}/{version}}/...
- var recursiveDir = symbolFile.GetMetadata("RecursiveDir");
- var components = recursiveDir.Split(Path.DirectorySeparatorChar);
- var id = components[2];
- var version = components[3];
-
- if (!existingFiles.TryGetValue(id, out var versions) || !versions.Contains(version))
+ // Insert new runtime store symbol files
+ foreach (var symbolFile in RuntimeStoreSymbolFiles)
{
- var destinationDir = Path.Combine(SymbolsDestination, recursiveDir);
- if (!Directory.Exists(Path.Combine(SymbolsDestination, recursiveDir)))
- {
- Directory.CreateDirectory(destinationDir);
- }
+ // format: {bitness}}/{tfm}}/{id}/{version}}/...
+ var recursiveDir = symbolFile.GetMetadata("RecursiveDir");
+ var components = recursiveDir.Split(Path.DirectorySeparatorChar);
+ var id = components[2];
+ var version = components[3];
- File.Copy(symbolFile.GetMetadata("FullPath"), Path.Combine(destinationDir, $"{symbolFile.GetMetadata("Filename")}{symbolFile.GetMetadata("Extension")}"), overwrite: true);
+ if (!existingFiles.TryGetValue(id, out var versions) || !versions.Contains(version))
+ {
+ var destinationDir = Path.Combine(SymbolsDestination, recursiveDir);
+ if (!Directory.Exists(Path.Combine(SymbolsDestination, recursiveDir)))
+ {
+ Directory.CreateDirectory(destinationDir);
+ }
+
+ File.Copy(symbolFile.GetMetadata("FullPath"), Path.Combine(destinationDir, $"{symbolFile.GetMetadata("Filename")}{symbolFile.GetMetadata("Extension")}"), overwrite: true);
+ }
}
}