Removed recently added method to inspect docker logs

The method was doing the same thing as the existing DockerLogs method.
This commit is contained in:
Ava S
2022-09-06 23:13:20 +02:00
parent 2f9ced96c6
commit 94e504c40e
3 changed files with 10 additions and 41 deletions

View File

@@ -32,7 +32,6 @@ namespace GitHub.Runner.Worker.Container
Task<int> DockerExec(IExecutionContext context, string containerId, string options, string command); Task<int> DockerExec(IExecutionContext context, string containerId, string options, string command);
Task<int> DockerExec(IExecutionContext context, string containerId, string options, string command, List<string> outputs); Task<int> DockerExec(IExecutionContext context, string containerId, string options, string command, List<string> outputs);
Task<List<string>> DockerInspect(IExecutionContext context, string dockerObject, string options); Task<List<string>> DockerInspect(IExecutionContext context, string dockerObject, string options);
Task<List<string>> DockerInspectLogs(IExecutionContext context, string dockerContainerId);
Task<List<PortMapping>> DockerPort(IExecutionContext context, string containerId); Task<List<PortMapping>> DockerPort(IExecutionContext context, string containerId);
Task<int> DockerLogin(IExecutionContext context, string configFileDirectory, string registry, string username, string password); Task<int> DockerLogin(IExecutionContext context, string configFileDirectory, string registry, string username, string password);
} }
@@ -352,11 +351,7 @@ namespace GitHub.Runner.Worker.Container
{ {
return await ExecuteDockerCommandAsync(context, "inspect", $"{options} {dockerObject}"); return await ExecuteDockerCommandAsync(context, "inspect", $"{options} {dockerObject}");
} }
public async Task<List<string>> DockerInspectLogs(IExecutionContext context, string dockerContainerId)
{
return await ExecuteDockerCommandAsync(context, "logs", $"{dockerContainerId}");
}
public async Task<List<PortMapping>> DockerPort(IExecutionContext context, string containerId) public async Task<List<PortMapping>> DockerPort(IExecutionContext context, string containerId)
{ {

View File

@@ -430,7 +430,7 @@ namespace GitHub.Runner.Worker
else else
{ {
executionContext.Output($"##[group] Container {container.ContainerImage} failed healthchecks, printing logs:"); executionContext.Output($"##[group] Container {container.ContainerImage} failed healthchecks, printing logs:");
await _dockerManager.DockerInspectLogs(context: executionContext, dockerContainerId: container.ContainerId); await _dockerManager.DockerLogs(context: executionContext, containerId: container.ContainerId);
executionContext.Output("##[endgroup]"); executionContext.Output("##[endgroup]");
} }
} }

View File

@@ -47,48 +47,25 @@ namespace GitHub.Runner.Common.Tests.Worker
var result = await containerOperationProvider.Healthcheck(_ec.Object, containerInfo); var result = await containerOperationProvider.Healthcheck(_ec.Object, containerInfo);
//Assert //Assert
_dockerManager.Verify(dm => dm.DockerInspectLogs(It.IsAny<IExecutionContext>(), It.IsAny<string>()), Times.Never()); _dockerManager.Verify(dm => dm.DockerLogs(It.IsAny<IExecutionContext>(), It.IsAny<string>()), Times.Never());
} }
[Fact] [Fact]
[Trait("Level", "L0")] [Trait("Level", "L0")]
[Trait("Category", "Worker")] [Trait("Category", "Worker")]
public async void Healthchecktest_dockerError() public async void HealthcheckTestDockerErrorLogs()
{ {
//Arrange //Arrange
Setup(); Setup();
_dockerManager.Setup(x => x.DockerInspectLogs(_ec.Object, containerInfo.ContainerId)).Returns(Task.FromResult(dockerLogs)); _dockerManager.Setup(x => x.DockerLogs(_ec.Object, containerInfo.ContainerId)).Returns(Task.FromResult<int>(1));
//Act //Act
//Asert await containerOperationProvider.ContainerHealthcheckLogs(_ec.Object, containerInfo, "error");
await Assert.ThrowsAsync<InvalidOperationException>(() => containerOperationProvider.ContainerHealthcheckLogs(_ec.Object, containerInfo, "error"));
}
[Fact]
[Trait("Level", "L0")]
[Trait("Category", "Worker")]
public async void Healthchecktest_dockerError_inspectLogs()
{
//Arrange
Setup();
_dockerManager.Setup(x => x.DockerInspectLogs(_ec.Object, containerInfo.ContainerId)).Returns(Task.FromResult(dockerLogs));
try
{
//Act
await containerOperationProvider.ContainerHealthcheckLogs(_ec.Object, containerInfo, "error");
}
catch (InvalidOperationException)
{
//Assert
_ec.Verify(pL => pL.Write(It.IsAny<string>(), It.IsAny<string>()), Times.Exactly(3));
}
//Assert
_ec.Verify(dm => dm.Write(It.IsAny<string>(), It.IsAny<string>()), Times.Exactly(2));
_ec.Verify(dm => dm.Write(null, $"##[group] Container {containerInfo.ContainerImage} failed healthchecks, printing logs:"), Times.AtLeastOnce());
_ec.Verify(dm => dm.Write(null, "##[endgroup]"), Times.AtLeastOnce());
} }
private void Setup([CallerMemberName] string testName = "") private void Setup([CallerMemberName] string testName = "")
@@ -110,9 +87,6 @@ namespace GitHub.Runner.Common.Tests.Worker
_hc.SetSingleton<IDockerCommandManager>(_dockerManager.Object); _hc.SetSingleton<IDockerCommandManager>(_dockerManager.Object);
_hc.SetSingleton<IContainerHookManager>(_containerHookManager.Object); _hc.SetSingleton<IContainerHookManager>(_containerHookManager.Object);
var list = new List<string>();
list.Add("result");
_ec.Setup(x => x.Global).Returns(new GlobalContext()); _ec.Setup(x => x.Global).Returns(new GlobalContext());
containerOperationProvider.Initialize(_hc); containerOperationProvider.Initialize(_hc);