mirror of
https://github.com/tgstation/tgstation-server.git
synced 2026-07-12 16:43:01 +01:00
Do not attempt to checkout a detached SHA on reclone
This commit is contained in:
@@ -642,11 +642,10 @@ namespace Tgstation.Server.Host.Components.Repository
|
||||
await deleteTask;
|
||||
}
|
||||
|
||||
IRepository newRepo;
|
||||
try
|
||||
{
|
||||
using var cloneReporter = progressReporter.CreateSection("Cloning New Repository", 0.8);
|
||||
newRepo = await instance.RepositoryManager.CloneRepository(
|
||||
using var cloneReporter = progressReporter.CreateSection("Cloning New Repository", 0.9);
|
||||
using var newRepo = await instance.RepositoryManager.CloneRepository(
|
||||
origin,
|
||||
oldReference,
|
||||
currentModel.AccessUser,
|
||||
@@ -671,19 +670,6 @@ namespace Tgstation.Server.Host.Components.Repository
|
||||
|
||||
throw;
|
||||
}
|
||||
|
||||
using (newRepo)
|
||||
using (var checkoutReporter = progressReporter.CreateSection("Checking out previous Detached Commit", 0.1))
|
||||
{
|
||||
await newRepo.CheckoutObject(
|
||||
oldSha,
|
||||
currentModel.AccessUser,
|
||||
currentModel.AccessToken,
|
||||
false,
|
||||
oldReference != null,
|
||||
checkoutReporter,
|
||||
cancellationToken);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,8 +116,6 @@ namespace Tgstation.Server.Tests.Live.Instance
|
||||
await ApiAssert.ThrowsException<ApiConflictException, RepositoryResponse>(() => Checkout(new RepositoryUpdateRequest { Reference = "master", CheckoutSha = "286bb75" }, false, false, cancellationToken), ErrorCode.RepoMismatchShaAndReference);
|
||||
var updated = await Checkout(new RepositoryUpdateRequest { CheckoutSha = "286bb75" }, false, false, cancellationToken);
|
||||
|
||||
await RecloneTest(cancellationToken);
|
||||
|
||||
// Fake SHA
|
||||
updated = await Checkout(new RepositoryUpdateRequest { CheckoutSha = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" }, true, false, cancellationToken);
|
||||
|
||||
@@ -127,6 +125,8 @@ namespace Tgstation.Server.Tests.Live.Instance
|
||||
// Back
|
||||
updated = await Checkout(new RepositoryUpdateRequest { Reference = "master" }, false, true, cancellationToken);
|
||||
|
||||
await RecloneTest(cancellationToken);
|
||||
|
||||
// enable the good shit if possible
|
||||
if (!String.IsNullOrWhiteSpace(Environment.GetEnvironmentVariable("TGS_TEST_GITHUB_TOKEN"))
|
||||
&& !(Boolean.TryParse(Environment.GetEnvironmentVariable("TGS_TEST_OD_EXCLUSIVE"), out var odExclusive) && odExclusive))
|
||||
|
||||
Reference in New Issue
Block a user