Skip to content
This repository was archived by the owner on Nov 1, 2023. It is now read-only.
7 changes: 2 additions & 5 deletions src/ApiService/ApiService/onefuzzlib/AutoScale.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
using System.Net;
using System.Text.Json;
using System.Text.Json;
using System.Threading.Tasks;
using ApiService.OneFuzzLib.Orm;
using Azure;
Expand All @@ -10,9 +9,7 @@

namespace Microsoft.OneFuzz.Service;

public interface IAutoScaleOperations {

public Async.Task<ResultVoid<(HttpStatusCode Status, string Reason)>> Insert(AutoScale autoScale);
public interface IAutoScaleOperations : IOrm<AutoScale> {

public Async.Task<AutoScale?> GetSettingsForScaleset(ScalesetId scalesetId);

Expand Down
7 changes: 7 additions & 0 deletions src/ApiService/ApiService/onefuzzlib/ScalesetOperations.cs
Original file line number Diff line number Diff line change
Expand Up @@ -499,6 +499,13 @@ public async Async.Task<Scaleset> Halt(Scaleset scaleset) {
_logTracer.AddHttpStatus(r.ErrorV);
_logTracer.LogError("Failed to delete scaleset record {ScalesetId}", scaleset.ScalesetId);
}
var autoscaleEntry = await _context.AutoScaleOperations.GetSettingsForScaleset(scaleset.ScalesetId);
if (autoscaleEntry is null) {
_logTracer.LogInformation("Could not find autoscale settings for scaleset {ScalesetId}", scaleset.ScalesetId);
} else {
_logTracer.LogInformation("Deleting autoscale entry for scaleset {ScalesetId}", scaleset.ScalesetId);
_ = await _context.AutoScaleOperations.Delete(autoscaleEntry);
}
} else {
var r = await Update(scaleset);
if (!r.IsOk) {
Expand Down