mirror of
https://github.com/actions/runner.git
synced 2025-12-10 12:36:23 +00:00
Compare commits
4 Commits
v2.289.4
...
fhammerl/2
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f2e6c296c7 | ||
|
|
b4e17c4fee | ||
|
|
b1ebc2aae4 | ||
|
|
444f054278 |
@@ -1 +1 @@
|
|||||||
<Update to ./src/runnerversion when creating release>
|
2.287.1
|
||||||
|
|||||||
@@ -1,39 +0,0 @@
|
|||||||
@echo off
|
|
||||||
|
|
||||||
"%~dp0\bin\Runner.Listener.exe" run %*
|
|
||||||
|
|
||||||
rem using `if %ERRORLEVEL% EQU N` insterad of `if ERRORLEVEL N`
|
|
||||||
rem `if ERRORLEVEL N` means: error level is N or MORE
|
|
||||||
|
|
||||||
if %ERRORLEVEL% EQU 0 (
|
|
||||||
echo "Runner listener exit with 0 return code, stop the service, no retry needed."
|
|
||||||
exit /b 0
|
|
||||||
)
|
|
||||||
|
|
||||||
if %ERRORLEVEL% EQU 1 (
|
|
||||||
echo "Runner listener exit with terminated error, stop the service, no retry needed."
|
|
||||||
exit /b 0
|
|
||||||
)
|
|
||||||
|
|
||||||
if %ERRORLEVEL% EQU 2 (
|
|
||||||
echo "Runner listener exit with retryable error, re-launch runner in 5 seconds."
|
|
||||||
ping 127.0.0.1 -n 6 -w 1000 >NUL
|
|
||||||
exit /b 1
|
|
||||||
)
|
|
||||||
|
|
||||||
if %ERRORLEVEL% EQU 3 (
|
|
||||||
rem Sleep 5 seconds to wait for the runner update process finish
|
|
||||||
echo "Runner listener exit because of updating, re-launch runner in 5 seconds"
|
|
||||||
ping 127.0.0.1 -n 6 -w 1000 >NUL
|
|
||||||
exit /b 1
|
|
||||||
)
|
|
||||||
|
|
||||||
if %ERRORLEVEL% EQU 4 (
|
|
||||||
rem Sleep 5 seconds to wait for the ephemeral runner update process finish
|
|
||||||
echo "Runner listener exit because of updating, re-launch ephemeral runner in 5 seconds"
|
|
||||||
ping 127.0.0.1 -n 6 -w 1000 >NUL
|
|
||||||
exit /b 1
|
|
||||||
)
|
|
||||||
|
|
||||||
echo "Exiting after unknown error code: %ERRORLEVEL%"
|
|
||||||
exit /b 0
|
|
||||||
@@ -1,54 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Validate not sudo
|
|
||||||
user_id=`id -u`
|
|
||||||
if [ $user_id -eq 0 -a -z "$RUNNER_ALLOW_RUNASROOT" ]; then
|
|
||||||
echo "Must not run interactively with sudo"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Run
|
|
||||||
shopt -s nocasematch
|
|
||||||
|
|
||||||
safe_sleep() {
|
|
||||||
if [ ! -x "$(command -v sleep)" ]; then
|
|
||||||
if [ ! -x "$(command -v ping)" ]; then
|
|
||||||
COUNT="0"
|
|
||||||
while [[ $COUNT != 5000 ]]; do
|
|
||||||
echo "SLEEP" > /dev/null
|
|
||||||
COUNT=$[$COUNT+1]
|
|
||||||
done
|
|
||||||
else
|
|
||||||
ping -c 5 127.0.0.1 > /dev/null
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
sleep 5
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
bin/Runner.Listener run $*
|
|
||||||
returnCode=$?
|
|
||||||
if [[ $returnCode == 0 ]]; then
|
|
||||||
echo "Runner listener exit with 0 return code, stop the service, no retry needed."
|
|
||||||
exit 0
|
|
||||||
elif [[ $returnCode == 1 ]]; then
|
|
||||||
echo "Runner listener exit with terminated error, stop the service, no retry needed."
|
|
||||||
exit 0
|
|
||||||
elif [[ $returnCode == 2 ]]; then
|
|
||||||
echo "Runner listener exit with retryable error, re-launch runner in 5 seconds."
|
|
||||||
safe_sleep
|
|
||||||
exit 1
|
|
||||||
elif [[ $returnCode == 3 ]]; then
|
|
||||||
# Sleep 5 seconds to wait for the runner update process finish
|
|
||||||
echo "Runner listener exit because of updating, re-launch runner in 5 seconds"
|
|
||||||
safe_sleep
|
|
||||||
exit 1
|
|
||||||
elif [[ $returnCode == 4 ]]; then
|
|
||||||
# Sleep 5 seconds to wait for the ephemeral runner update process finish
|
|
||||||
echo "Runner listener exit because of updating, re-launch ephemeral runner in 5 seconds"
|
|
||||||
safe_sleep
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
echo "Exiting with unknown error code: ${returnCode}"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
@@ -13,19 +13,21 @@ if defined VERBOSE_ARG (
|
|||||||
rem Unblock files in the root of the layout folder. E.g. .cmd files.
|
rem Unblock files in the root of the layout folder. E.g. .cmd files.
|
||||||
powershell.exe -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$VerbosePreference = %VERBOSE_ARG% ; Get-ChildItem -LiteralPath '%~dp0' | ForEach-Object { Write-Verbose ('Unblock: {0}' -f $_.FullName) ; $_ } | Unblock-File | Out-Null"
|
powershell.exe -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$VerbosePreference = %VERBOSE_ARG% ; Get-ChildItem -LiteralPath '%~dp0' | ForEach-Object { Write-Verbose ('Unblock: {0}' -f $_.FullName) ; $_ } | Unblock-File | Out-Null"
|
||||||
|
|
||||||
|
if /i "%~1" equ "localRun" (
|
||||||
|
rem ********************************************************************************
|
||||||
|
rem Local run.
|
||||||
|
rem ********************************************************************************
|
||||||
|
"%~dp0bin\Runner.Listener.exe" %*
|
||||||
|
) else (
|
||||||
|
rem ********************************************************************************
|
||||||
|
rem Run.
|
||||||
|
rem ********************************************************************************
|
||||||
|
"%~dp0bin\Runner.Listener.exe" run %*
|
||||||
|
|
||||||
rem ********************************************************************************
|
rem Return code 4 means the run once runner received an update message.
|
||||||
rem Run.
|
rem Sleep 5 seconds to wait for the update process finish and run the runner again.
|
||||||
rem ********************************************************************************
|
if ERRORLEVEL 4 (
|
||||||
|
timeout /t 5 /nobreak > NUL
|
||||||
:launch_helper
|
"%~dp0bin\Runner.Listener.exe" run %*
|
||||||
copy run-helper.cmd.template run-helper.cmd /Y
|
)
|
||||||
call "%~dp0run-helper.cmd" %*
|
|
||||||
|
|
||||||
if %ERRORLEVEL% EQU 1 (
|
|
||||||
echo "Restarting runner..."
|
|
||||||
goto :launch_helper
|
|
||||||
) else (
|
|
||||||
echo "Exiting runner..."
|
|
||||||
exit 0
|
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -1,24 +1,64 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Validate not sudo
|
||||||
|
user_id=`id -u`
|
||||||
|
if [ $user_id -eq 0 -a -z "$RUNNER_ALLOW_RUNASROOT" ]; then
|
||||||
|
echo "Must not run interactively with sudo"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Change directory to the script root directory
|
# Change directory to the script root directory
|
||||||
# https://stackoverflow.com/questions/59895/getting-the-source-directory-of-a-bash-script-from-within
|
# https://stackoverflow.com/questions/59895/getting-the-source-directory-of-a-bash-script-from-within
|
||||||
SOURCE="${BASH_SOURCE[0]}"
|
SOURCE="${BASH_SOURCE[0]}"
|
||||||
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
while [ -h "$SOURCE" ]; do # resolve $SOURCE until the file is no longer a symlink
|
||||||
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
||||||
SOURCE="$(readlink "$SOURCE")"
|
SOURCE="$(readlink "$SOURCE")"
|
||||||
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
[[ $SOURCE != /* ]] && SOURCE="$DIR/$SOURCE" # if $SOURCE was a relative symlink, we need to resolve it relative to the path where the symlink file was located
|
||||||
done
|
done
|
||||||
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
DIR="$( cd -P "$( dirname "$SOURCE" )" && pwd )"
|
||||||
cp -f run-helper.sh.template run-helper.sh
|
|
||||||
# run the helper process which keep the listener alive
|
# Do not "cd $DIR". For localRun, the current directory is expected to be the repo location on disk.
|
||||||
while :;
|
|
||||||
do
|
# Run
|
||||||
"$DIR"/run-helper.sh $*
|
shopt -s nocasematch
|
||||||
|
if [[ "$1" == "localRun" ]]; then
|
||||||
|
"$DIR"/bin/Runner.Listener $*
|
||||||
|
else
|
||||||
|
"$DIR"/bin/Runner.Listener run $*
|
||||||
|
|
||||||
|
# Return code 3 means the run once runner received an update message.
|
||||||
|
# Sleep 5 seconds to wait for the update process finish
|
||||||
returnCode=$?
|
returnCode=$?
|
||||||
if [[ $returnCode == 1 ]]; then
|
if [[ $returnCode == 3 ]]; then
|
||||||
echo "Restarting runner..."
|
if [ ! -x "$(command -v sleep)" ]; then
|
||||||
|
if [ ! -x "$(command -v ping)" ]; then
|
||||||
|
COUNT="0"
|
||||||
|
while [[ $COUNT != 5000 ]]; do
|
||||||
|
echo "SLEEP" > /dev/null
|
||||||
|
COUNT=$[$COUNT+1]
|
||||||
|
done
|
||||||
|
else
|
||||||
|
ping -c 5 127.0.0.1 > /dev/null
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
sleep 5
|
||||||
|
fi
|
||||||
|
elif [[ $returnCode == 4 ]]; then
|
||||||
|
if [ ! -x "$(command -v sleep)" ]; then
|
||||||
|
if [ ! -x "$(command -v ping)" ]; then
|
||||||
|
COUNT="0"
|
||||||
|
while [[ $COUNT != 5000 ]]; do
|
||||||
|
echo "SLEEP" > /dev/null
|
||||||
|
COUNT=$[$COUNT+1]
|
||||||
|
done
|
||||||
|
else
|
||||||
|
ping -c 5 127.0.0.1 > /dev/null
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
sleep 5
|
||||||
|
fi
|
||||||
|
"$DIR"/bin/Runner.Listener run $*
|
||||||
else
|
else
|
||||||
echo "Exiting runner..."
|
exit $returnCode
|
||||||
exit 0
|
|
||||||
fi
|
fi
|
||||||
done
|
fi
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ namespace GitHub.Runner.Listener.Configuration
|
|||||||
Trace.Info(nameof(LoadSettings));
|
Trace.Info(nameof(LoadSettings));
|
||||||
if (!IsConfigured())
|
if (!IsConfigured())
|
||||||
{
|
{
|
||||||
throw new NonRetryableException("Not configured. Run config.(sh/cmd) to configure the runner.");
|
throw new InvalidOperationException("Not configured. Run config.(sh/cmd) to configure the runner.");
|
||||||
}
|
}
|
||||||
|
|
||||||
RunnerSettings settings = _store.GetSettings();
|
RunnerSettings settings = _store.GetSettings();
|
||||||
|
|||||||
@@ -408,7 +408,7 @@ namespace GitHub.Runner.Listener
|
|||||||
autoUpdateInProgress = true;
|
autoUpdateInProgress = true;
|
||||||
var runnerUpdateMessage = JsonUtility.FromString<AgentRefreshMessage>(message.Body);
|
var runnerUpdateMessage = JsonUtility.FromString<AgentRefreshMessage>(message.Body);
|
||||||
var selfUpdater = HostContext.GetService<ISelfUpdater>();
|
var selfUpdater = HostContext.GetService<ISelfUpdater>();
|
||||||
selfUpdateTask = selfUpdater.SelfUpdate(runnerUpdateMessage, jobDispatcher, false, HostContext.RunnerShutdownToken);
|
selfUpdateTask = selfUpdater.SelfUpdate(runnerUpdateMessage, jobDispatcher, !runOnce && HostContext.StartupType != StartupType.Service, HostContext.RunnerShutdownToken);
|
||||||
Trace.Info("Refresh message received, kick-off selfupdate background process.");
|
Trace.Info("Refresh message received, kick-off selfupdate background process.");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -38,7 +38,7 @@ namespace GitHub.Runner.Listener
|
|||||||
private IRunnerServer _runnerServer;
|
private IRunnerServer _runnerServer;
|
||||||
private int _poolId;
|
private int _poolId;
|
||||||
private int _agentId;
|
private int _agentId;
|
||||||
private readonly ConcurrentQueue<string> _updateTrace = new ConcurrentQueue<string>();
|
private readonly List<string> _updateTrace = new List<string>();
|
||||||
private Task _cloneAndCalculateContentHashTask;
|
private Task _cloneAndCalculateContentHashTask;
|
||||||
private string _dotnetRuntimeCloneDirectory;
|
private string _dotnetRuntimeCloneDirectory;
|
||||||
private string _externalsCloneDirectory;
|
private string _externalsCloneDirectory;
|
||||||
@@ -80,7 +80,7 @@ namespace GitHub.Runner.Listener
|
|||||||
}
|
}
|
||||||
|
|
||||||
Trace.Info($"An update is available.");
|
Trace.Info($"An update is available.");
|
||||||
_updateTrace.Enqueue($"RunnerPlatform: {_targetPackage.Platform}");
|
_updateTrace.Add($"RunnerPlatform: {_targetPackage.Platform}");
|
||||||
|
|
||||||
// Print console line that warn user not shutdown runner.
|
// Print console line that warn user not shutdown runner.
|
||||||
await UpdateRunnerUpdateStateAsync("Runner update in progress, do not shutdown runner.");
|
await UpdateRunnerUpdateStateAsync("Runner update in progress, do not shutdown runner.");
|
||||||
@@ -120,7 +120,7 @@ namespace GitHub.Runner.Listener
|
|||||||
Trace.Info($"Delete old version runner backup.");
|
Trace.Info($"Delete old version runner backup.");
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
// generate update script from template
|
// generate update script from template
|
||||||
_updateTrace.Enqueue($"DeleteRunnerBackupTime: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"DeleteRunnerBackupTime: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
await UpdateRunnerUpdateStateAsync("Generate and execute update script.");
|
await UpdateRunnerUpdateStateAsync("Generate and execute update script.");
|
||||||
|
|
||||||
string updateScript = GenerateUpdateScript(restartInteractiveRunner);
|
string updateScript = GenerateUpdateScript(restartInteractiveRunner);
|
||||||
@@ -145,14 +145,14 @@ namespace GitHub.Runner.Listener
|
|||||||
|
|
||||||
totalUpdateTime.Stop();
|
totalUpdateTime.Stop();
|
||||||
|
|
||||||
_updateTrace.Enqueue($"TotalUpdateTime: {totalUpdateTime.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"TotalUpdateTime: {totalUpdateTime.ElapsedMilliseconds}ms");
|
||||||
await UpdateRunnerUpdateStateAsync("Runner will exit shortly for update, should be back online within 10 seconds.");
|
await UpdateRunnerUpdateStateAsync("Runner will exit shortly for update, should be back online within 10 seconds.");
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
_updateTrace.Enqueue(ex.ToString());
|
_updateTrace.Add(ex.ToString());
|
||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
@@ -260,9 +260,9 @@ namespace GitHub.Runner.Listener
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_updateTrace.Enqueue($"DownloadUrl: {packageDownloadUrl}");
|
_updateTrace.Add($"DownloadUrl: {packageDownloadUrl}");
|
||||||
_updateTrace.Enqueue($"RuntimeTrimmed: {runtimeTrimmed}");
|
_updateTrace.Add($"RuntimeTrimmed: {runtimeTrimmed}");
|
||||||
_updateTrace.Enqueue($"ExternalsTrimmed: {externalsTrimmed}");
|
_updateTrace.Add($"ExternalsTrimmed: {externalsTrimmed}");
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@@ -328,14 +328,14 @@ namespace GitHub.Runner.Listener
|
|||||||
if (fallbackToFullPackage)
|
if (fallbackToFullPackage)
|
||||||
{
|
{
|
||||||
Trace.Error("Something wrong with the trimmed runner package, failback to use the full package for runner updates.");
|
Trace.Error("Something wrong with the trimmed runner package, failback to use the full package for runner updates.");
|
||||||
_updateTrace.Enqueue($"FallbackToFullPackage: {fallbackToFullPackage}");
|
_updateTrace.Add($"FallbackToFullPackage: {fallbackToFullPackage}");
|
||||||
|
|
||||||
IOUtil.DeleteDirectory(latestRunnerDirectory, token);
|
IOUtil.DeleteDirectory(latestRunnerDirectory, token);
|
||||||
Directory.CreateDirectory(latestRunnerDirectory);
|
Directory.CreateDirectory(latestRunnerDirectory);
|
||||||
|
|
||||||
packageDownloadUrl = _targetPackage.DownloadUrl;
|
packageDownloadUrl = _targetPackage.DownloadUrl;
|
||||||
packageHashValue = _targetPackage.HashValue;
|
packageHashValue = _targetPackage.HashValue;
|
||||||
_updateTrace.Enqueue($"DownloadUrl: {packageDownloadUrl}");
|
_updateTrace.Add($"DownloadUrl: {packageDownloadUrl}");
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
@@ -453,9 +453,9 @@ namespace GitHub.Runner.Listener
|
|||||||
Trace.Info($"Download runner: finished download");
|
Trace.Info($"Download runner: finished download");
|
||||||
downloadSucceeded = true;
|
downloadSucceeded = true;
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"PackageDownloadTime: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"PackageDownloadTime: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
_updateTrace.Enqueue($"Attempts: {attempt}");
|
_updateTrace.Add($"Attempts: {attempt}");
|
||||||
_updateTrace.Enqueue($"PackageSize: {downloadSize / 1024 / 1024}MB");
|
_updateTrace.Add($"PackageSize: {downloadSize / 1024 / 1024}MB");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
catch (OperationCanceledException) when (token.IsCancellationRequested)
|
catch (OperationCanceledException) when (token.IsCancellationRequested)
|
||||||
@@ -505,7 +505,7 @@ namespace GitHub.Runner.Listener
|
|||||||
|
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
Trace.Info($"Validated Runner Hash matches {archiveFile} : {packageHashValue}");
|
Trace.Info($"Validated Runner Hash matches {archiveFile} : {packageHashValue}");
|
||||||
_updateTrace.Enqueue($"ValidateHashTime: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"ValidateHashTime: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -561,7 +561,7 @@ namespace GitHub.Runner.Listener
|
|||||||
|
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
Trace.Info($"Finished getting latest runner package at: {extractDirectory}.");
|
Trace.Info($"Finished getting latest runner package at: {extractDirectory}.");
|
||||||
_updateTrace.Enqueue($"PackageExtractTime: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"PackageExtractTime: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
}
|
}
|
||||||
|
|
||||||
private Task CopyLatestRunnerToRoot(string latestRunnerDirectory, CancellationToken token)
|
private Task CopyLatestRunnerToRoot(string latestRunnerDirectory, CancellationToken token)
|
||||||
@@ -594,7 +594,7 @@ namespace GitHub.Runner.Listener
|
|||||||
}
|
}
|
||||||
|
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"CopyRunnerToRootTime: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"CopyRunnerToRootTime: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
return Task.CompletedTask;
|
return Task.CompletedTask;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -720,14 +720,9 @@ namespace GitHub.Runner.Listener
|
|||||||
_terminal.WriteLine(currentState);
|
_terminal.WriteLine(currentState);
|
||||||
|
|
||||||
var traces = new List<string>();
|
var traces = new List<string>();
|
||||||
while (_updateTrace.TryDequeue(out var trace))
|
if (_updateTrace.Count > 0)
|
||||||
{
|
{
|
||||||
traces.Add(trace);
|
foreach (var trace in _updateTrace)
|
||||||
}
|
|
||||||
|
|
||||||
if (traces.Count > 0)
|
|
||||||
{
|
|
||||||
foreach (var trace in traces)
|
|
||||||
{
|
{
|
||||||
Trace.Info(trace);
|
Trace.Info(trace);
|
||||||
}
|
}
|
||||||
@@ -735,7 +730,7 @@ namespace GitHub.Runner.Listener
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
await _runnerServer.UpdateAgentUpdateStateAsync(_poolId, _agentId, currentState, string.Join(Environment.NewLine, traces));
|
await _runnerServer.UpdateAgentUpdateStateAsync(_poolId, _agentId, currentState, string.Join(Environment.NewLine, _updateTrace));
|
||||||
_updateTrace.Clear();
|
_updateTrace.Clear();
|
||||||
}
|
}
|
||||||
catch (VssResourceNotFoundException)
|
catch (VssResourceNotFoundException)
|
||||||
@@ -811,7 +806,7 @@ namespace GitHub.Runner.Listener
|
|||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"{nameof(RestoreTrimmedExternals)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"{nameof(RestoreTrimmedExternals)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -863,7 +858,7 @@ namespace GitHub.Runner.Listener
|
|||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"{nameof(RestoreTrimmedDotnetRuntime)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"{nameof(RestoreTrimmedDotnetRuntime)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -894,7 +889,7 @@ namespace GitHub.Runner.Listener
|
|||||||
var externalsHash = await HashFiles(externalsCloneDirectory, token);
|
var externalsHash = await HashFiles(externalsCloneDirectory, token);
|
||||||
Trace.Info($"Externals content hash: {externalsHash}");
|
Trace.Info($"Externals content hash: {externalsHash}");
|
||||||
_contentHashes[_externals] = externalsHash;
|
_contentHashes[_externals] = externalsHash;
|
||||||
_updateTrace.Enqueue($"ExternalsHash: {_contentHashes[_externals]}");
|
_updateTrace.Add($"ExternalsHash: {_contentHashes[_externals]}");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -918,7 +913,7 @@ namespace GitHub.Runner.Listener
|
|||||||
var runtimeHash = await HashFiles(dotnetRuntimeCloneDirectory, token);
|
var runtimeHash = await HashFiles(dotnetRuntimeCloneDirectory, token);
|
||||||
Trace.Info($"Runtime content hash: {runtimeHash}");
|
Trace.Info($"Runtime content hash: {runtimeHash}");
|
||||||
_contentHashes[_dotnetRuntime] = runtimeHash;
|
_contentHashes[_dotnetRuntime] = runtimeHash;
|
||||||
_updateTrace.Enqueue($"DotnetRuntimeHash: {_contentHashes[_dotnetRuntime]}");
|
_updateTrace.Add($"DotnetRuntimeHash: {_contentHashes[_dotnetRuntime]}");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -988,7 +983,7 @@ namespace GitHub.Runner.Listener
|
|||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"{nameof(CloneDotnetRuntime)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"{nameof(CloneDotnetRuntime)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
@@ -1014,7 +1009,7 @@ namespace GitHub.Runner.Listener
|
|||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"{nameof(CloneExternals)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"{nameof(CloneExternals)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
}
|
}
|
||||||
|
|
||||||
return Task.FromResult(false);
|
return Task.FromResult(false);
|
||||||
@@ -1068,7 +1063,7 @@ namespace GitHub.Runner.Listener
|
|||||||
}
|
}
|
||||||
|
|
||||||
stopWatch.Stop();
|
stopWatch.Stop();
|
||||||
_updateTrace.Enqueue($"{nameof(HashFiles)}{Path.GetFileName(fileFolder)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
_updateTrace.Add($"{nameof(HashFiles)}{Path.GetFileName(fileFolder)}Time: {stopWatch.ElapsedMilliseconds}ms");
|
||||||
return hashResult;
|
return hashResult;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
2.287.0
|
2.287.1
|
||||||
|
|||||||
Reference in New Issue
Block a user