Skip to content
This repository was archived by the owner on Aug 4, 2022. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/CloudAndEdgeLibs/FnOEnvironmentDeploymentMetadata.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace CloudAndEdgeLibs
namespace CloudAndEdgeLibs.Contracts
{
using System.Collections.Generic;
using Newtonsoft.Json;
Expand Down
2 changes: 1 addition & 1 deletion src/CloudAndEdgeLibs/FnOModelInfo.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace CloudAndEdgeLibs
namespace CloudAndEdgeLibs.Contracts
{
using System;
using Newtonsoft.Json;
Expand Down
2 changes: 1 addition & 1 deletion src/CloudAndEdgeLibs/Query.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace CloudAndEdgeLibs
namespace CloudAndEdgeLibs.Contracts
{
using Newtonsoft.Json;

Expand Down
2 changes: 1 addition & 1 deletion src/CloudAndEdgeLibs/SystemMetadata.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace CloudAndEdgeLibs
namespace CloudAndEdgeLibs.Contracts
{
using System;
using System.Collections.Generic;
Expand Down
17 changes: 17 additions & 0 deletions src/ScaleUnitManagement/Utilities/WorkloadExtensions.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
using System.Collections.Generic;
using CloudAndEdgeLibs;
using CloudAndEdgeLibs.Contracts;

namespace ScaleUnitManagement.WorkloadSetupOrchestrator.Utilities
{
public static class WorkloadExtensions
{
public static void PruneRedundancies(this List<Workload> workloads)
{
foreach (Workload workload in workloads)
{
workload.__DependentSystemMetadata = new SortedSet<SystemMetadata>();
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,8 @@ public async Task<List<WorkloadInstance>> CreateWorkloadInstances()
}

List<Workload> workloads = await client.GetWorkloads();
workloads.PruneRedundancies();

var workloadInstances = new List<WorkloadInstance>();
var sysWorkloadInstances = new List<WorkloadInstance>();

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,17 @@ public WorkloadDefinitionManager() : base() { }
public async Task UpgradeWorkloadsDefinition()
{
IAOSClient scaleUnitAosClient = await GetScaleUnitAosClient();
IAOSClient hubAosClient = await GetHubAosClient();

List<Workload> workloads = null;
await ReliableRun.Execute(async () => workloads = await hubAosClient.GetWorkloads(), "Getting workloads");

List<WorkloadInstance> workloadInstances = null;
await ReliableRun.Execute(async () => workloadInstances = await scaleUnitAosClient.GetWorkloadInstances(), "Getting workload instances");

await EnsureWorkloadsAreDrained(workloadInstances);
await EnsureWorkloadsAreDrained(workloadInstances, scaleUnitAosClient);

IAOSClient hubAosClient = await GetHubAosClient();

List<Workload> workloads = null;
await ReliableRun.Execute(async () => workloads = await hubAosClient.GetWorkloads(), "Getting workloads");
workloads.PruneRedundancies();

foreach (WorkloadInstance workloadInstance in workloadInstances)
{
Expand All @@ -36,10 +38,8 @@ public async Task UpgradeWorkloadsDefinition()
}
}

private async Task EnsureWorkloadsAreDrained(List<WorkloadInstance> workloadInstances)
private async Task EnsureWorkloadsAreDrained(List<WorkloadInstance> workloadInstances, IAOSClient aosClient)
{
IAOSClient aosClient = await GetScaleUnitAosClient();

foreach (WorkloadInstance workloadInstance in workloadInstances)
{
if (WorkloadInstanceManager.IsWorkloadSYSOnSpoke(workloadInstance))
Expand Down