in e2etest/GuestProxyAgentTest/Utilities/RunCommandRunner.cs [24:48]
public static async Task<RunCommandOutputDetails> ExecuteRunCommandOnVM(VirtualMachineResource vmr
, RunCommandSettingBuilder runCommandSettingBuilder
, CancellationToken cancellationToken
, Func<RunCommandSettingBuilder, RunCommandSettingBuilder> runCommandParameterSetter = null!)
{
var vmrcs = vmr.GetVirtualMachineRunCommands();
Console.WriteLine("Creating runcommand on vm.");
if (null != runCommandParameterSetter)
{
runCommandSettingBuilder = runCommandParameterSetter(runCommandSettingBuilder);
}
var runCommandSetting = runCommandSettingBuilder.Build();
await vmrcs.CreateOrUpdateAsync(WaitUntil.Completed, runCommandSetting.runCommandName, toVMRunCommandData(runCommandSetting), cancellationToken: cancellationToken);
var iv = vmrcs.Get(runCommandSetting.runCommandName, "InstanceView").Value.Data.InstanceView;
return new RunCommandOutputDetails
{
StdOut = runCommandSetting.outputBlobSAS,
StdErr = runCommandSetting.errorBlobSAS,
CustomOut = runCommandSetting.customOutputSAS,
Succeed = iv.ExecutionState == ExecutionState.Succeeded && iv.ExitCode == 0,
};
}