Coder Social home page Coder Social logo

nukeeper-azuredevops-extension's Introduction

Build Status Gitter

NuKeeper AzureDevops Extension

This is the NuKeeper for Azure DevOps / VSTS extension. It will allow you to run the NuKeeper command inside the users build pipeline.

You will find it here in the Visual Studio marketplace.

It's up to the user to schedule the pipeline in whatever is correct for their solution.

See the website for installation instructions

Development

Prerequisites

  • npm

Debugging the extension

Run npm install in root folder.

Create a folder named temp in the root folder.

Adjust .vscode/launch.json:

  • Adjust the BUILD_SOURCESDIRECTORY for a path to a repo.
  • Put a valid token in the ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN

Open the root folder in Visual Studio Code.

Go to the debugger tab and click Debug NuKeeper.

Check the Debug console for output

nukeeper-azuredevops-extension's People

Contributors

anthonysteele avatar dependabot[bot] avatar marcbruins avatar maxmommersteeg avatar mobrockers avatar onecyrus avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

nukeeper-azuredevops-extension's Issues

Fails with two tasks in same pipeline

I was trying to have multiple nukeeper tasks in the same pipeline as I need different patterns, age restrictions etc for the packages concerned.

The second call fails with

2018-11-23T03:01:54.3749322Z Exception calling "ExtractToDirectory" with "2" argument(s): "The file 
2018-11-23T03:01:54.3749853Z 'D:\a\_tasks\NuKeeper_e5a17a66-903f-46a9-a9b9-94241bcedc39\0.1.37\bin\config.json' already exists."
2018-11-23T03:01:54.3751169Z At line:1 char:111
2018-11-23T03:01:54.3751693Z + ... catch { } ; [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\a ...
2018-11-23T03:01:54.3752281Z +                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2018-11-23T03:01:54.3752744Z     + CategoryInfo          : NotSpecified: (:) [], ParentContainsErrorRecordException
2018-11-23T03:01:54.3753261Z     + FullyQualifiedErrorId : IOException
2018-11-23T03:01:54.3753617Z  
2018-11-23T03:01:54.4113705Z ##[error]Error: C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe failed with return code: 1
2018-11-23T03:01:54.4127158Z [command]C:\agents\2.141.1\externals\git\cmd\git.exe checkout --progress --force 93d3de467b342914b2f473fac55cba1740164637
2018-11-23T03:01:54.4414985Z Note: checking out '93d3de467b342914b2f473fac55cba1740164637'.

Support Azure DevOps Nuget Feeds

NuKeeper is a bit more difficult to work with if you host you own NuGet package feeds. It would be great if you could specify if you want to use those feeds like in the NuGet restore task and have it generate and pass in a custom file to help with that process.

Example code for how the NuGet task creates the file is here: https://github.com/Microsoft/azure-pipelines-tasks/blob/master/Tasks/NuGetRestoreV1/nugetinstaller.ts

Let me know if you're interested in this task and I'll create a branch and PR for it.

Azure DevOps pipeline CreatePullRequest: Error BadRequest

I'm not sure if I'm doing something wrong or if this is a legit bug. I created a new WebApp in visual studio, added a couple dependencies, then created a pipeline with the NuKeeper extensions installed from the marketplace. When it runs, it finds the updates but gives a pretty non-specific error message.

Here is the tail end of the log:

Found 2 package updates
Microsoft.Extensions.Logging to 3.1.5 from 3.1.3 in 1 place since 2 minutes ago.
Newtonsoft.Json to 12.0.3 from 6.0.6 in 1 place since 2 minutes ago.
Selection of package updates: 2 candidates
Selected package update of Newtonsoft.Json to 12.0.3
Selected package update of Microsoft.Extensions.Logging to 3.1.5
Updating 'Newtonsoft.Json' from 6.0.6 to 12.0.3 in 1 projects
CreatePullRequest: Error BadRequest
Updates failed NuKeeperException : CreatePullRequest: Error BadRequest
Attempted 2 updates and did 0
Finishing: NuKeeper

I verified that my [project name] Build Service ([org name]) account has Contribute, Contribute to pull requests, and Create branch permissions. All three are Allow (inherited).

Any idea what I may be doing wrong here?

I entered this issue in the main NuKeeperDotNet core project ( NuKeeperDotNet/NuKeeper#1003 ) but realized it probably belongs here.

'Too many redirects or authentication replays' when trying to push

When NuKeeper tries to push the new branches to the remote repository, a LibGit2SharpException is thrown with error message: 'Too many redirects or authentication replays'.

I searched for this in the LibGit2Sharp repository and see it might be related to the type of credentials UserNamePasswordCredentials or DefaultCredentials that are being provided in combination with the authentication protocol that's used (NTLM vs Kerberos), see libgit2/libgit2sharp#1168.

I'm not the admin but I have a feeling that our on premise tfs only supports NTLM right now. I could verify this and come back to you. In the meantime, here are the logs when the extension is run with verbosity detailed.

5.txt

environment:

  • TFS 2018 U3 (agent)
  • Azure Devops Server 2019 (frontend)

Add parameter for solution

I have a git repository with several solutions a few of them are huge. I found no possibility to specify NuKeeper to analyse and update only references in one solution.

Please add a parameter to the azure extension to specify the solution(s).

Git fetch could not read username error

Using the azure devops extension I get the following error:

Starting: NuKeeper

Task : NuKeeper
Description : Version 0.4.5
Version : 0.4.5
Author : NuKeeper
Help : For help please visit https://github.com/NuKeeperDotNet/NuKeeper

\9\externals\git\cmd\git.exe fetch
fatal: could not read Username for 'https://company.visualstudio.com': terminal prompts disabled
##[error]Error: The process 'D:\9\externals\git\cmd\git.exe' failed with exit code 128
Finishing: NuKeeper

I'm also noticing that the extension version number is higher than the highest version number in this repo for some reason.

Azure Pipeline task does not report an error when nukeeper fails.

Here's a simple repro with the nukeeper CLI (tested on 0.28.0)

dotnet new console
dotnet add package SpecFlow.NUnit -v 3.1.82
dotnet add package SpecFlow.Tools.MsBuild.Generation -v 3.1.82
nukeeper update -m 100
echo %errorlevel%

Note that both of these packages have exact version constraints on a 3rd package, SpecFlow, which is what causes the error, because both packages have to be updated at the same time for it to be in a valid state. It would be nice if it didn't cause that error, but that's not what this issue is about.

Here is the log from the command line:

C:\nukeeper-test>nukeeper update -m 100
Found 2 packages
Found 2 packages in use, 2 distinct, in 1 projects.
SpecFlow.NUnit, SpecFlow.Tools.MsBuild.Generation
Found 2 possible updates
SpecFlow.NUnit from 3.1.82 to 3.1.97 in nukeeper-test.csproj
SpecFlow.Tools.MsBuild.Generation from 3.1.82 to 3.1.97 in nukeeper-test.csproj

Found 2 package updates
SpecFlow.NUnit to 3.1.97 from 3.1.82 in 1 place since 27 days ago.
SpecFlow.Tools.MsBuild.Generation to 3.1.97 from 3.1.82 in 1 place since 27 days ago.
Selection of package updates: 2 candidates
Updating SpecFlow.NUnit to 3.1.97 from 3.1.82 in 1 place since 27 days ago.
Updating SpecFlow.Tools.MsBuild.Generation to 3.1.97 from 3.1.82 in 1 place since 27 days ago.
NuKeeper.Abstractions.NuKeeperException: Command dotnet failed with exit code: 1

C:\nukeeper-test\nukeeper-test.csproj : error NU1107: Version conflict detected for SpecFlow. Install/reference SpecFlow 3.1.97 directly to project nukeeper-test to resolve this issue.
C:\nukeeper-test\nukeeper-test.csproj : error NU1107:  nukeeper-test -> SpecFlow.NUnit 3.1.97 -> SpecFlow (= 3.1.97)
C:\nukeeper-test\nukeeper-test.csproj : error NU1107:  nukeeper-test -> SpecFlow.Tools.MsBuild.Generation 3.1.82 -> SpecFlow (= 3.1.82).
  Restore failed in 336.76 ms for C:\nukeeper-test\nukeeper-test.csproj.



   at NuKeeper.Update.ProcessRunner.ExternalProcess.Run(String workingDirectory, String command, String arguments, Boolean ensureSuccess) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper.Update\ProcessRunner\ExternalProcess.cs:line 63
   at NuKeeper.Update.Process.DotNetUpdatePackageCommand.Invoke(PackageInProject currentPackage, NuGetVersion newVersion, PackageSource packageSource, NuGetSources allSources) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper.Update\Process\DotNetUpdatePackageCommand.cs:line 30
   at NuKeeper.Update.UpdateRunner.Update(PackageUpdateSet updateSet, NuGetSources sources) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper.Update\UpdateRunner.cs:line 52
   at NuKeeper.Local.LocalUpdater.ApplyUpdates(IReadOnlyCollection`1 updates, IFolder workingFolder, NuGetSources sources) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Local\LocalUpdater.cs:line 66
   at NuKeeper.Local.LocalUpdater.ApplyUpdates(IReadOnlyCollection`1 updates, IFolder workingFolder, NuGetSources sources, SettingsContainer settings) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Local\LocalUpdater.cs:line 55
   at NuKeeper.Local.LocalEngine.Run(SettingsContainer settings, Boolean write) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Local\LocalEngine.cs:line 69
   at NuKeeper.Commands.UpdateCommand.Run(SettingsContainer settings) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Commands\UpdateCommand.cs:line 52
   at NuKeeper.Commands.CommandBase.OnExecute() in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Commands\CommandBase.cs:line 108
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.InvokeAsync(MethodInfo method, Object instance, Object[] arguments)
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.OnExecute(ConventionContext context, CancellationToken cancellationToken)
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.<>c__DisplayClass0_0.<<Apply>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.ExecuteAsync(String[] args, CancellationToken cancellationToken)
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.Execute(String[] args)
   at NuKeeper.Program.Main(String[] args) in d:\a\r1\a\_NuKeeper PR Build\drop\NuKeeper\Program.cs:line 34

C:\nukeeper-test>echo %errorlevel%
1

This returns an exit code of 1, but the pipeline task seems to ignore it, and reports success. Here is the log from the pipeline:

...
2020-05-14T00:07:36.1035201Z Updates failed NuKeeperException : Command dotnet failed with exit code: 1
2020-05-14T00:07:36.1036025Z 
2020-05-14T00:07:36.1047848Z D:\a\1\s\Tests\Tests.csproj : error NU1107: Version conflict detected for SpecFlow. Install/reference SpecFlow 3.1.97 directly to project Tests to resolve this issue. 
2020-05-14T00:07:36.1057285Z D:\a\1\s\Tests\Tests.csproj : error NU1107:  Tests -> SpecFlow.NUnit 3.1.97 -> SpecFlow (= 3.1.97) 
2020-05-14T00:07:36.1059714Z D:\a\1\s\Tests\Tests.csproj : error NU1107:  Tests -> SpecFlow.Tools.MsBuild.Generation 3.1.82 -> SpecFlow (= 3.1.82).
2020-05-14T00:07:36.1061702Z   Restore failed in 766.16 ms for D:\a\1\s\Tests\Tests.csproj.
2020-05-14T00:07:36.1064086Z 
2020-05-14T00:07:36.1077165Z 
2020-05-14T00:07:36.1080982Z 
2020-05-14T00:07:36.1081862Z Attempted 14 updates and did 0
2020-05-14T00:07:36.1510678Z ##[section]Finishing: NuKeeper

The expected behaviour is that the pipeline task should have reported failure. You shouldn't have to look in the logs to realise it hasn't worked.

Add indication if a pr was sumbitted or not

I would like to have an indication to the build ecosystem when a pr was submitted or not.
In a CI process, if a pr was submitted i would like to send an alert to slack or mail

Nukeeper task fails on Azure DevOps Server

Nukeeper isn't able to work out which platform to use when running on a private build agent for Azure DevOps Server (On-Prem) because the path to the repo is a local one. I tried setting the repo argument in the pipeline, but that doesn't supercede the original value of repo.

  • Azure DevOps Server 2019.0.1 RC
  • Private Build Agent (Windows Server 2016)

Log:

2019-05-31T10:52:50.5602892Z ##[section]Starting: NuKeeper
2019-05-31T10:52:50.5618305Z ==============================================================================
2019-05-31T10:52:50.5619132Z Task         : NuKeeper
2019-05-31T10:52:50.5619524Z Description  : Version 0.4.32
2019-05-31T10:52:50.5619849Z Version      : 0.4.32
2019-05-31T10:52:50.5620233Z Author       : NuKeeper
2019-05-31T10:52:50.5620670Z Help         : For help please visit https://github.com/NuKeeperDotNet/NuKeeper
2019-05-31T10:52:50.5620988Z ==============================================================================
2019-05-31T10:52:52.1747514Z [command]C:\BuildAgent\Stable\Build2016_2.150.3_s1\externals\git\cmd\git.exe config --global user.name NuKeeper
2019-05-31T10:52:52.7729850Z [command]C:\BuildAgent\Stable\Build2016_2.150.3_s1\externals\git\cmd\git.exe config --global user.email [email protected]
2019-05-31T10:52:54.2366804Z Downloading: https://api.nuget.org/v3-flatcontainer/nukeeper/0.21.3/nukeeper.0.21.3.nupkg
2019-05-31T10:52:56.5261596Z Extracting archive
2019-05-31T10:52:56.5826009Z [command]C:\Windows\system32\chcp.com 65001
2019-05-31T10:52:56.5829517Z Active code page: 65001
2019-05-31T10:52:56.6101712Z [command]C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.FileSystem } catch { } ; [System.IO.Compression.ZipFile]::ExtractToDirectory('C:\BuildAgent\Stable\Build2016_2.150.3_s1\_work\_temp\6bf33e4d-7b96-48bc-a464-895fdaf76136', 'C:\BuildAgent\Stable\Build2016_2.150.3_s1\_work\_temp\6bf33e4d-7b96-48bc-a464-895fdaf76136.unpacked')"
2019-05-31T10:53:01.4101474Z Caching tool: nukeeper 0.21.3 x64
2019-05-31T10:53:02.8427730Z [command]"C:\Program Files\dotnet\dotnet.exe" C:\BuildAgent\Stable\Build2016_2.150.3_s1\_work\_tool\nukeeper\0.21.3\x64\NuKeeper.dll repo C:\BuildAgent\Stable\Build2016_2.150.3_s1\_work\24\s *** --targetBranch origin/master --maxpackageupdates 100 --consolidate --age 0 --verbosity detailed
2019-05-31T10:53:09.6843849Z No valid Gitea repo during repo check
2019-05-31T10:53:09.6845221Z 
2019-05-31T10:53:09.6845675Z Only 'http' and 'https' schemes are allowed.
2019-05-31T10:53:09.6846034Z Parameter name: value
2019-05-31T10:53:09.6869803Z Unable to work out which platform to use C:\BuildAgent\Stable\Build2016_2.150.3_s1\_work\24\s could not be matched
2019-05-31T10:53:09.7312125Z ##[error]Error: The process 'C:\Program Files\dotnet\dotnet.exe' failed with exit code 4294967295
2019-05-31T10:53:09.7418971Z ##[section]Finishing: NuKeeper

Using System.AccessToken for git operations

It is possible for the extension to pick up the System.AccessToken so we don't have to generate a personal PAT token.

If not, how do I provide the PAT token to the extension - trying to avoid nuget.config as we will have a lot of different repositories/feeds.

Nukeeper not working when using multi repo pipelines

Our team tries to create a pipeline which will be able to run nukeeper for every repository. To do this we've added a checkout step which uses a variable like so:

  • checkout: git://platform/$(repo-name)@$(branch-name)
    The checkout works fine, however using NuKeeper (which uses the build variable Build.SourceBranch) won't work since the 'Build.SourceBranch' variable isn't updated by the checkout, resulting in a failing nukeeper.

A fix would be to a 'target-branch' option to the build task. This option might provide usefull in other use cases as well.

P.S. IMO there should be a up to date build variable that nukeeper would be able to use, however this is not the case at the moment. I've added an issue for this as well https://developercommunity.visualstudio.com/content/problem/1052569/multi-repo-checkout-not-updating-build-variables.html

Make extension work on MacOS/Linux

NuKeeper now works on mono so the extension should too. The extension will break currently if you run it on non windows with a private feed. This happens because only windows supports encrypted nuget.config passwords, on linux/mac this is not supported.

To make this work we should change the password to be a ClearTextPassword, we delete the nuget.config in a postdeployment job and we should be able to target non windows agents

Installs old version (0.26.0) by default

This task installs version 0.26.0 when the latest version (0.34.0 at the moment) is expected. This is because queryLatestMatch fetches https://api.nuget.org/v3/registration3/nukeeper/index.json, which only lists 0.26.0 as the latest release (possibly due to pagination?):

let nukeeperVersionEndpoint = "https://api.nuget.org/v3/registration3/nukeeper/index.json";
.

I think the code should be changed to query https://api.nuget.org/v3-flatcontainer/nukeeper/index.json, listing all versions, and then fetch the matching package by querying https://api.nuget.org/v3/registration5-semver1/nukeeper/{version}.json.

Relevant part of the logs:

##[debug]version=0.*
##[debug]checkLatest=true
##[debug]isExplicit: null
##[debug]explicit? false
##[debug]isExplicit: null
##[debug]explicit? false
##[debug]evaluating 54 versions
##[debug]matched: 0.26.0
##[debug]isExplicit: 0.26.0
##[debug]explicit? true
##[debug]Agent.Version=2.181.0
##[debug]Agent.TempDirectory=D:\a\_temp
##[debug]testing directory 'D:\a\_temp'
Downloading: https://api.nuget.org/v3-flatcontainer/nukeeper/0.26.0/nukeeper.0.26.0.nupkg

Support Organization command

We're currently struggling with NuGet version conflicts across our Azure DevOps organization. Is there any possibility to add support for org-level commands in ADO?

Support GitHub Enterprise service connection type

I am trying to run the Nukeeper extension against an instance of GitHub Enterprise. However, when I set the gitHubConnection parameter to consume my GitHub Enterprise service connection, I'm told the plug-in doesn't support GitHub Enterprise connections. Would it be possible to add that as a feature? For clarity, "GitHub Enterprise" is the name of my service connection in DevOps.

My YAML:

    - task: NuKeeper@0
      inputs:
        arguments: '--api=https://github.<my org name>.com/api/v3 --change minor --consolidate --maxpackageupdates 5 --fork SingleRepositoryOnly --include ".*" --exclude "!.*" --verbosity Detailed'
        targetFolder: 'src'
        version: '0.*'
        gitHubConnection: 'GitHub Enterprise'

The error message:
nukeeper bug

Task fails in error

Hi,
Sorry for the generic title but I'm not sure what the root cause is.
Task fails with the following:

cp: copyFileSync: could not read src file (/home/az_devops_agent/agent/_work/_temp/4d09fc6b-89b5-49fb-a474-8015125392eb.unpacked/tools/netcoreapp2.1/any/DotnetToolSettings.xml)

##[debug]cp failed
##[debug]Failed cp: cp: copyFileSync: could not read src file (/home/az_devops_agent/agent/_work/_temp/4d09fc6b-89b5-49fb-a474-8015125392eb.unpacked/tools/netcoreapp2.1/any/DotnetToolSettings.xml)

##[debug]task result: Failed
##[error]Error acquiring NuKeeper version
##[debug]Processed: ##vso[task.issue type=error;]Error acquiring NuKeeper version
##[debug]Processed: ##vso[task.complete result=Failed;]Error acquiring NuKeeper version
##[debug]feed=null
##[debug]which 'dotnet'
##[debug]found: '/usr/bin/dotnet'
##[debug]which '/usr/bin/dotnet'
##[debug]found: '/usr/bin/dotnet'
##[debug]which '/usr/bin/dotnet'
##[debug]found: '/usr/bin/dotnet'
##[debug]task result: Failed
##[error]TypeError: Path must be a string. Received undefined
##[debug]Processed: ##vso[task.issue type=error;]TypeError: Path must be a string. Received undefined
##[debug]Processed: ##vso[task.complete result=Failed;]TypeError: Path must be a string. Received undefined
Finishing: NuKeeper

Setup:

  • Hosted Ubuntu 16.04 Agent
  • Dotnet core 2.2 SDK
  • Private AzureDevOps NuGet feed

In the task input, I've tried:

  • setting an explicit version
  • using the private feed
  • Disabling checkLatest

Nothing seems to do the trick. Is this related to using a private feed?
Thanks,
Yohan

Package update timeout.

Initially the Azure DevOps extension worked just fine, opening up pull requests. Since a few weeks we get the following error in our build when using the task provided by NuKeeper-AzureDevOps-extension:

2019-01-31T17:33:08.7662890Z Wrote report for 35 updates
2019-01-31T17:33:08.7863889Z Resorted 35 packages by dependencies, first change is Microsoft.ServiceFabric moved to position 0 from 2.
2019-01-31T17:33:08.7932405Z Filtered by rules from 35 to 0
2019-01-31T17:33:08.8052714Z Selection of package updates: 35 candidates, filtered to 0
2019-01-31T17:33:08.8090792Z No updates can be applied. Exiting.
2019-01-31T17:33:08.8101503Z Done at 2019-01-31T17:33:08Z
2019-01-31T17:33:08.8381610Z ##[debug]task result: Succeeded
2019-01-31T17:33:08.8384345Z ##[debug]Processed: ##vso[task.complete result=Succeeded;]done
2019-01-31T18:33:00.4928304Z ##[debug]Re-evaluate condition on job cancellation for step: 'NuKeeper package update'.
2019-01-31T18:33:00.5383646Z ##[error]The operation was canceled.
2019-01-31T18:33:00.5430336Z ##[debug]System.OperationCanceledException: The operation was canceled.
   at System.Threading.CancellationToken.ThrowOperationCanceledException()
   at Microsoft.VisualStudio.Services.Agent.ProcessInvoker.<ExecuteAsync>d__22.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Services.Agent.Worker.Handlers.NodeHandler.<RunAsync>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Services.Agent.Worker.TaskRunner.<RunAsync>d__24.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
   at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
   at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
   at Microsoft.VisualStudio.Services.Agent.Worker.StepsRunner.<RunStepAsync>d__1.MoveNext()

Not sure what caused this to happen. We did not change the build pipeline. The task just gets cancelled automatically by the agent since it has been running for over an hour. Looking at the source it looks like the extension is still using NuKeeper 0.13.0 instead of the latest version. Could there already be a fix for this issue?

wrong path for nukeeper.dll

Nukeeper.dll is extracted to the wrong path. The file is actually at (notice the double bin)

"D:\VstsBuildAgent\_work\_tasks\NuKeeper_e5a17a66-903f-46a9-a9b9-94241bcedc39\0.1.55\bin\bin\NuKeeper.dll"
                                                                                          ^^
2019-02-06T17:24:16.5310480Z ##[section]Starting: NuKeeper
2019-02-06T17:24:16.5595549Z ==============================================================================
2019-02-06T17:24:16.5595740Z Task         : NuKeeper
2019-02-06T17:24:16.5595853Z Description  : Version 0.1.55
2019-02-06T17:24:16.5595956Z Version      : 0.1.55
2019-02-06T17:24:16.5596080Z Author       : NuKeeper
2019-02-06T17:24:16.5596201Z Help         : For help please visit https://github.com/NuKeeperDotNet/NuKeeper
2019-02-06T17:24:16.5596337Z ==============================================================================
2019-02-06T17:24:17.3047236Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe checkout master
2019-02-06T17:24:17.3049377Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe pull
2019-02-06T17:24:17.3059121Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe config --global user.name NuKeeper
2019-02-06T17:24:17.3063821Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe config --global user.email [email protected]
2019-02-06T17:24:17.3121545Z [command]"C:\Program Files\dotnet\dotnet.exe" D:\VstsBuildAgent\_work\_tasks\NuKeeper_e5a17a66-903f-46a9-a9b9-94241bcedc39\0.1.55\bin\NuKeeper.dll repo D:\VstsBuildAgent\_work\30\s *** -p 3
2019-02-06T17:24:17.3221886Z error: could not lock config file C:/Windows/ServiceProfiles/NetworkService/.gitconfig: File exists
2019-02-06T17:24:17.3263656Z Your branch is up-to-date with 'origin/master'.
2019-02-06T17:24:17.3283434Z Switched to branch 'master'
2019-02-06T17:24:17.3668600Z Already up-to-date.
2019-02-06T17:24:17.4830585Z No executable found matching command "dotnet-D:\VstsBuildAgent\_work\_tasks\NuKeeper_e5a17a66-903f-46a9-a9b9-94241bcedc39\0.1.55\bin\NuKeeper.dll"
2019-02-06T17:24:17.5001968Z ##[error]Error: C:\Program Files\dotnet\dotnet.exe failed with return code: 1
2019-02-06T17:24:17.5030526Z ##[section]Finishing: NuKeeper

Use latest and greatest NuKeeper automatically

There are some issues that require the extension to use attached binary. We cannot use dotnet tool install in our task because this requires a reboot of the shell(which will not happen in azure devops)

Another option that i've tried which is already a bit cumbersome is to use the dockerimage. This is technically possible but not a really clean solution because it requires a docker image download.

What we currently do is to attach the binary in the extension and reference that from typescript. Any suggestions on how to move forward are more then welcome.

NuKeeper not working after recent changes made to FeedInstaller

NuKeeper is not working after introducing changes to FeedInstaller.

After changes, NuKeeper creates nuget.config with two entries: projectScoped and organisationalScoped. The first one (projectScoped) feed URL is valid but second one (organisationalScoped) returns 404 which results in exception during restore.

What's more - task is showing that process ends with success even if in logs I can find:
Updates failed NuKeeperException : Command dotnet failed with exit code: 1

Cannot checkout when using NuKeeper extension on a branch with slash

When running NuKeeper extension on a branch with slash, e.g. bug/31386-xxx I found that only the last segment of the branch is sent to NuKeeper, i.e. 31386-xxx without bug/

##[debug]Build.SourceBranchName=31386-xxx
##[debug]arguments=--maxpackageupdates 1000 --change minor --consolidate --verbosity detailed --exclude MathNet
:\Program Files\dotnet\dotnet.exe" C:\vsts_agent_integration\_work\_tool\nukeeper\0.21.3\x64\NuKeeper.dll repo C:\vsts_agent_integration\_work\35\s *** --targetBranch origin/31386-xxx --maxpackageupdates 1000 --change minor --consolidate --verbosity detailed
Git checkout 'origin/31386-xxx'
Updates failed NuKeeperException : Git Cannot checkout branch: the branch named 'origin/31386-xxx' doesn't exist
   at NuKeeper.Git.LibGit2SharpDriver.Checkout(String branchName) in /home/vsts/work/r1/a/drop/NuKeeper.Git/LibGit2SharpDriver.cs:line 96
   at NuKeeper.Engine.Packages.PackageUpdater.MakeUpdatePullRequests(IGitDriver git, RepositoryData repository, NuGetSources sources, SettingsContainer settings, IReadOnlyCollection`1 updates) in /home/vsts/work/r1/a/drop/NuKeeper/Engine/Packages/PackageUpdater.cs:line 70
   at NuKeeper.Engine.Packages.PackageUpdater.MakeUpdatePullRequests(IGitDriver git, RepositoryData repository, IReadOnlyCollection`1 updates, NuGetSources sources, SettingsContainer settings) in /home/vsts/work/r1/a/drop/NuKeeper/Engine/Packages/PackageUpdater.cs:line 46
Attempted 134 updates and did 0
Done at 2019-06-01T04:15:58Z

I think somehow the VSTS build variable Build.SourceBranchName was used as that one only has last segment of a branch name, ref: https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml

nukeeper task succeeds even with failure

the task doesn't report a failure or warning even when it failed. at least it should report this as a warning.

Found 8 package updates
Microsoft.ApplicationInsights.AspNetCore to 2.6.1 from 2.5.1 in 1 place since 3 months ago.
Microsoft.ApplicationInsights.SnapshotCollector to 1.3.4 from 1.3.3 in 1 place since 22 days ago.
Microsoft.AspNetCore.Mvc.Versioning.ApiExplorer to 3.2.0 from 3.1.0 in 1 place since 4 months ago.
Microsoft.PowerShell.SDK to 6.2.0 from 6.1.2 in 1 place since 2 months ago.
coverlet.msbuild to 2.6.1 from 2.5.0 in 1 place since 5 days ago.
Microsoft.CodeCoverage to 16.1.0 from 15.9.0 in 1 place since 5 days ago.
Microsoft.NET.Test.Sdk to 16.1.0 from 15.9.0 in 1 place since 5 days ago.
Newtonsoft.Json.Schema to 3.0.11 from 3.0.10 in 1 place since 22 days ago.
Filtered by minimum package age '7 days ago' from 8 to 5
Selection of package updates: 8 candidates, filtered to 5, capped at 3
Selected package update of Microsoft.AspNetCore.Mvc.Versioning.ApiExplorer to 3.2.0
Selected package update of Microsoft.ApplicationInsights.AspNetCore to 2.6.1
Selected package update of Microsoft.PowerShell.SDK to 6.2.0
Updating'Microsoft.AspNetCore.Mvc.Versioning.ApiExplorer' from 3.1.0 to 3.2.0 in 1 projects
Updates failed NameConflictException : failed to write reference 'refs/heads/nukeeper-update-Microsoft.AspNetCore.Mvc.Versioning.ApiExplorer-to-3.2.0': a reference with that name already exists.
Attempted 3 updates and did 0
##[section]Finishing: NuKeeper

Add recipes / best practices

We should add some simple recipes on how to get started. The Arguments field of the extension can be quite challenging to understand at first. Referring to some docs about this, or adding it to the README.md of this repository would make this process less cumbersome.

Fails to perform git pull

I am relatively new to development in general, so I am properly overlooking something simple. When I queue up my pipeline it just get stuck on a git pull command, and I have to cancel or wait an hour for the timeout.
If you need any additional info let me know.

I hope you can help, and thanks in advance.

##[section]Starting: NuKeeper

Task : NuKeeper
Description : Version 0.2.4
Version : 0.2.4
Author : NuKeeper
Help : For help please visit https://github.com/NuKeeperDotNet/NuKeeper

Downloading: https://www.nuget.org/api/v2/package/NuKeeper
(node:2960) Warning: Use Cipheriv for counter mode of aes-256-ctr
(node:2960) Warning: Use Cipheriv for counter mode of aes-256-ctr
(node:2960) Warning: Use Cipheriv for counter mode of aes-256-ctr
(node:2960) Warning: Use Cipheriv for counter mode of aes-256-ctr
Extracting archive
[command]C:\Windows\system32\chcp.com 65001
Active code page: 65001
[command]C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.FileSystem } catch { } ; [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\a_temp\nukeeper.nupkg', 'D:\a_temp\nukeeper')"
[command]C:\agents\2.148.0\externals\git\cmd\git.exe checkout dev
Switched to a new branch 'dev'
Branch 'dev' set up to track remote branch 'dev' from 'origin'.
[command]C:\agents\2.148.0\externals\git\cmd\git.exe pull
##[error]The operation was canceled.
##[section]Finishing: NuKeeper

Extension runs but leaves junk file in PR

Not sure when this stared to happen but, recently (maybe some weeks) there is a junk file in each PR created by NuKeeper, with a name like this: _git2_a02840

If I look at the log we get this error:

Updates failed NotFoundException : could not find 'C:/Users/VssAdministrator/AppData/Local/Temp/NuKeeper/repo-851f889d3b06403eb65cb05d1e052be4/_git2_a02840' to remove: Access is denied.

I have tried diffrent access levels on the PAT but nothing seems to make a difference.

This is on an agent running on a Windows Server 2016 machine. Is the agent lacking some kind of access? Or is NuKeeper looking for this file in the wrong place? It seems like it can checkout and create the pull request fine it is just that this file is there making the PR useless.

NuKeeper task does not work on MacOS hosted agents

Azure pipeline yaml:

pool:
  vmImage: macOS-10.14
steps:
  - task: NuKeeper@0
    inputs:
      arguments: '-m 3'
      version: '0.26.1'

Debug log:

2020-02-27T15:08:27.4369650Z ##[debug]Evaluating condition for step: 'NuKeeper'
2020-02-27T15:08:27.4372220Z ##[debug]Evaluating: SucceededNode()
2020-02-27T15:08:27.4373050Z ##[debug]Evaluating SucceededNode:
2020-02-27T15:08:27.4374600Z ##[debug]=> True
2020-02-27T15:08:27.4376030Z ##[debug]Result: True
2020-02-27T15:08:27.4377130Z ##[section]Starting: NuKeeper
2020-02-27T15:08:27.4391020Z ==============================================================================
2020-02-27T15:08:27.4391550Z Task         : NuKeeper
2020-02-27T15:08:27.4391810Z Description  : Version 0.4.34
2020-02-27T15:08:27.4392050Z Version      : 0.4.34
2020-02-27T15:08:27.4392290Z Author       : NuKeeper
2020-02-27T15:08:27.4392650Z Help         : For help please visit https://github.com/NuKeeperDotNet/NuKeeper
2020-02-27T15:08:27.4393090Z ==============================================================================
2020-02-27T15:08:28.2132800Z ##[debug]agent.TempDirectory=/Users/runner/runners/2.165.0/work/_temp
2020-02-27T15:08:28.2165660Z ##[debug]loading inputs and endpoints
2020-02-27T15:08:28.2170080Z ##[debug]loading INPUT_ARGUMENTS
2020-02-27T15:08:28.2197190Z ##[debug]loading INPUT_FEED
2020-02-27T15:08:28.2200650Z ##[debug]loading INPUT_TARGETFOLDER
2020-02-27T15:08:28.2202000Z ##[debug]loading INPUT_VERSION
2020-02-27T15:08:28.2203180Z ##[debug]loading INPUT_CHECKLATEST
2020-02-27T15:08:28.2205170Z ##[debug]loading ENDPOINT_AUTH_SYSTEMVSSCONNECTION
2020-02-27T15:08:28.2206160Z ##[debug]loading ENDPOINT_AUTH_SCHEME_SYSTEMVSSCONNECTION
2020-02-27T15:08:28.2207700Z ##[debug]loading ENDPOINT_AUTH_PARAMETER_SYSTEMVSSCONNECTION_ACCESSTOKEN
2020-02-27T15:08:28.2213200Z ##[debug]loading SECRET_SYSTEM_ACCESSTOKEN
2020-02-27T15:08:28.2214680Z ##[debug]loaded 9
2020-02-27T15:08:28.2239440Z ##[debug]Agent.ProxyUrl=undefined
2020-02-27T15:08:28.2240510Z ##[debug]Agent.CAInfo=undefined
2020-02-27T15:08:28.2240950Z ##[debug]Agent.ClientCert=undefined
2020-02-27T15:08:28.2241380Z ##[debug]Agent.SkipCertValidation=undefined
2020-02-27T15:08:28.2844400Z ##[debug]Agent.ProxyUrl=undefined
2020-02-27T15:08:28.2845570Z ##[debug]Agent.CAInfo=undefined
2020-02-27T15:08:28.2846550Z ##[debug]Agent.ClientCert=undefined
2020-02-27T15:08:28.2850340Z ##[debug]check path : /Users/runner/runners/2.165.0/work/_tasks/NuKeeper_e5a17a66-903f-46a9-a9b9-94241bcedc39/0.4.34/node_modules/azure-pipelines-tool-lib/lib.json
2020-02-27T15:08:28.2851540Z ##[debug]adding resource file: /Users/runner/runners/2.165.0/work/_tasks/NuKeeper_e5a17a66-903f-46a9-a9b9-94241bcedc39/0.4.34/node_modules/azure-pipelines-tool-lib/lib.json
2020-02-27T15:08:28.2852500Z ##[debug]system.culture=en-US
2020-02-27T15:08:28.3066500Z ##[debug]Pipeline.Workspace=/Users/runner/runners/2.165.0/work/1
2020-02-27T15:08:28.3088360Z ##[debug]which 'git'
2020-02-27T15:08:28.3102390Z ##[debug]found: '/usr/local/bin/git'
2020-02-27T15:08:28.3103000Z ##[debug]which 'git'
2020-02-27T15:08:28.3104460Z ##[debug]found: '/usr/local/bin/git'
2020-02-27T15:08:28.3109370Z ##[debug]/usr/local/bin/git arg: ["config","--global","user.name","NuKeeper"]
2020-02-27T15:08:28.3110340Z ##[debug]/usr/local/bin/git arg: ["config","--global","user.name","NuKeeper"]
2020-02-27T15:08:28.3114660Z ##[debug]exec tool: /usr/local/bin/git
2020-02-27T15:08:28.3115160Z ##[debug]exec tool: /usr/local/bin/git
2020-02-27T15:08:28.3115500Z ##[debug]arguments:
2020-02-27T15:08:28.3115840Z ##[debug]arguments:
2020-02-27T15:08:28.3116140Z ##[debug]   config
2020-02-27T15:08:28.3116520Z ##[debug]   config
2020-02-27T15:08:28.3117110Z ##[debug]   --global
2020-02-27T15:08:28.3117690Z ##[debug]   --global
2020-02-27T15:08:28.3118020Z ##[debug]   user.name
2020-02-27T15:08:28.3118370Z ##[debug]   user.name
2020-02-27T15:08:28.3118670Z ##[debug]   NuKeeper
2020-02-27T15:08:28.3118960Z ##[debug]   NuKeeper
2020-02-27T15:08:28.3123090Z [command]/usr/local/bin/git config --global user.name NuKeeper
2020-02-27T15:08:28.3283740Z ##[debug]Exit code 0 received from tool '/usr/local/bin/git'
2020-02-27T15:08:28.3284670Z ##[debug]Exit code 0 received from tool '/usr/local/bin/git'
2020-02-27T15:08:28.3292440Z ##[debug]STDIO streams have closed for tool '/usr/local/bin/git'
2020-02-27T15:08:28.3293280Z ##[debug]STDIO streams have closed for tool '/usr/local/bin/git'
2020-02-27T15:08:28.3311740Z ##[debug]which 'git'
2020-02-27T15:08:28.3314080Z ##[debug]found: '/usr/local/bin/git'
2020-02-27T15:08:28.3314670Z ##[debug]which 'git'
2020-02-27T15:08:28.3315500Z ##[debug]found: '/usr/local/bin/git'
2020-02-27T15:08:28.3316430Z ##[debug]/usr/local/bin/git arg: ["config","--global","user.email","[email protected]"]
2020-02-27T15:08:28.3317440Z ##[debug]/usr/local/bin/git arg: ["config","--global","user.email","[email protected]"]
2020-02-27T15:08:28.3318010Z ##[debug]exec tool: /usr/local/bin/git
2020-02-27T15:08:28.3318420Z ##[debug]exec tool: /usr/local/bin/git
2020-02-27T15:08:28.3318800Z ##[debug]arguments:
2020-02-27T15:08:28.3319100Z ##[debug]arguments:
2020-02-27T15:08:28.3319380Z ##[debug]   config
2020-02-27T15:08:28.3319720Z ##[debug]   config
2020-02-27T15:08:28.3320250Z ##[debug]   --global
2020-02-27T15:08:28.3320820Z ##[debug]   --global
2020-02-27T15:08:28.3321170Z ##[debug]   user.email
2020-02-27T15:08:28.3321530Z ##[debug]   user.email
2020-02-27T15:08:28.3321860Z ##[debug]   [email protected]
2020-02-27T15:08:28.3322250Z ##[debug]   [email protected]
2020-02-27T15:08:28.3322940Z [command]/usr/local/bin/git config --global user.email [email protected]
2020-02-27T15:08:28.3393050Z ##[debug]Exit code 0 received from tool '/usr/local/bin/git'
2020-02-27T15:08:28.3393920Z ##[debug]Exit code 0 received from tool '/usr/local/bin/git'
2020-02-27T15:08:28.3402700Z ##[debug]STDIO streams have closed for tool '/usr/local/bin/git'
2020-02-27T15:08:28.3403530Z ##[debug]STDIO streams have closed for tool '/usr/local/bin/git'
2020-02-27T15:08:28.3471160Z ##[debug]targetFolder=/Users/runner/runners/2.165.0/work/1/s
2020-02-27T15:08:28.3482830Z ##[debug]gitHubConnection=null
2020-02-27T15:08:28.3490190Z ##[debug]SystemVssConnection auth param AccessToken = ***
2020-02-27T15:08:28.3493100Z ##[debug]version=0.26.1
2020-02-27T15:08:28.3494740Z ##[debug]checkLatest=true
2020-02-27T15:08:28.3502170Z ##[debug]isExplicit: 0.26.1
2020-02-27T15:08:28.3503070Z ##[debug]explicit? true
2020-02-27T15:08:28.3505140Z ##[debug]isExplicit: 0.26.1
2020-02-27T15:08:28.3505500Z ##[debug]explicit? true
2020-02-27T15:08:28.3508260Z ##[debug]Agent.Version=2.165.0
2020-02-27T15:08:28.3508700Z ##[debug]Agent.ToolsDirectory=/Users/runner/hostedtoolcache
2020-02-27T15:08:28.3510260Z ##[debug]checking cache: /Users/runner/hostedtoolcache/nukeeper/0.26.1/x64
2020-02-27T15:08:28.3536180Z ##[debug]not found
2020-02-27T15:08:28.3536600Z ##[debug]isExplicit: 0.26.1
2020-02-27T15:08:28.3536950Z ##[debug]explicit? true
2020-02-27T15:08:28.3540240Z ##[debug]cleaning: 0.26.1
2020-02-27T15:08:28.3548880Z ##[debug]
2020-02-27T15:08:28.3550810Z ##[debug]Agent.Version=2.165.0
2020-02-27T15:08:28.3551260Z ##[debug]Agent.TempDirectory=/Users/runner/runners/2.165.0/work/_temp
2020-02-27T15:08:28.3553970Z ##[debug]testing directory '/Users/runner/runners/2.165.0/work/_temp'
2020-02-27T15:08:28.3594180Z Downloading: https://api.nuget.org/v3-flatcontainer/nukeeper/0.26.1/nukeeper.0.26.1.nupkg
2020-02-27T15:08:28.3595120Z ##[debug]destination /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239
2020-02-27T15:08:28.3595600Z ##[debug]downloading
2020-02-27T15:08:28.7431810Z ##[debug]creating stream
2020-02-27T15:08:29.8415980Z ##[debug]download complete
2020-02-27T15:08:29.8438090Z Extracting archive
2020-02-27T15:08:29.8468070Z ##[debug]testing directory '/Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked'
2020-02-27T15:08:29.8485170Z ##[debug]testing directory '/Users/runner/runners/2.165.0/work/_temp'
2020-02-27T15:08:29.8496320Z ##[debug]mkdir '/Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked'
2020-02-27T15:08:29.8497510Z ##[debug]which 'unzip'
2020-02-27T15:08:29.8704590Z ##[debug]found: '/usr/bin/unzip'
2020-02-27T15:08:29.8706490Z ##[debug]which 'unzip'
2020-02-27T15:08:29.8721280Z ##[debug]found: '/usr/bin/unzip'
2020-02-27T15:08:29.8742470Z ##[debug]/usr/bin/unzip arg: /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239
2020-02-27T15:08:29.8762310Z ##[debug]exec tool: /usr/bin/unzip
2020-02-27T15:08:29.8768990Z ##[debug]arguments:
2020-02-27T15:08:29.8807290Z ##[debug]   /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239
2020-02-27T15:08:30.8056210Z [command]/usr/bin/unzip /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239
2020-02-27T15:08:30.8058100Z Archive:  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239
2020-02-27T15:08:30.8058830Z   inflating: _rels/.rels             
2020-02-27T15:08:30.8059340Z   inflating: nukeeper.nuspec         
2020-02-27T15:08:30.8059930Z   inflating: tools/netcoreapp2.1/any/NuKeeper.deps.json  
2020-02-27T15:08:30.8060700Z   inflating: tools/netcoreapp2.1/any/DotnetToolSettings.xml  
2020-02-27T15:08:30.8061500Z   inflating: tools/netcoreapp2.1/any/config.json  
2020-02-27T15:08:30.8062210Z   inflating: tools/netcoreapp2.1/any/NuKeeper.dll  
2020-02-27T15:08:30.8062610Z   inflating: tools/netcoreapp2.1/any/NuKeeper.runtimeconfig.json  
2020-02-27T15:08:30.8063410Z   inflating: tools/netcoreapp2.1/any/NuKeeper.pdb  
2020-02-27T15:08:30.8063870Z   inflating: tools/netcoreapp2.1/any/LibGit2Sharp.dll  
2020-02-27T15:08:30.8064280Z   inflating: tools/netcoreapp2.1/any/McMaster.Extensions.CommandLineUtils.dll  
2020-02-27T15:08:30.8065290Z   inflating: tools/netcoreapp2.1/any/Newtonsoft.Json.dll  
2020-02-27T15:08:30.8066020Z   inflating: tools/netcoreapp2.1/any/NuGet.Common.dll  
2020-02-27T15:08:30.8066510Z   inflating: tools/netcoreapp2.1/any/NuGet.Configuration.dll  
2020-02-27T15:08:30.8066970Z   inflating: tools/netcoreapp2.1/any/NuGet.Frameworks.dll  
2020-02-27T15:08:30.8067420Z   inflating: tools/netcoreapp2.1/any/NuGet.Packaging.dll  
2020-02-27T15:08:30.8067860Z   inflating: tools/netcoreapp2.1/any/NuGet.Protocol.dll  
2020-02-27T15:08:30.8069760Z   inflating: tools/netcoreapp2.1/any/NuGet.Versioning.dll  
2020-02-27T15:08:30.8070800Z   inflating: tools/netcoreapp2.1/any/Octokit.dll  
2020-02-27T15:08:30.8071170Z   inflating: tools/netcoreapp2.1/any/SimpleInjector.dll  
2020-02-27T15:08:30.8071800Z   inflating: tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll  
2020-02-27T15:08:30.8072480Z   inflating: tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll  
2020-02-27T15:08:30.8073050Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Abstractions.dll  
2020-02-27T15:08:30.8073590Z   inflating: tools/netcoreapp2.1/any/NuKeeper.AzureDevOps.dll  
2020-02-27T15:08:30.8074730Z   inflating: tools/netcoreapp2.1/any/NuKeeper.BitBucket.dll  
2020-02-27T15:08:30.8075230Z   inflating: tools/netcoreapp2.1/any/NuKeeper.BitBucketLocal.dll  
2020-02-27T15:08:30.8075600Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Git.dll  
2020-02-27T15:08:30.8076020Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Gitea.dll  
2020-02-27T15:08:30.8076380Z   inflating: tools/netcoreapp2.1/any/NuKeeper.GitHub.dll  
2020-02-27T15:08:30.8076730Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Gitlab.dll  
2020-02-27T15:08:30.8077140Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Inspection.dll  
2020-02-27T15:08:30.8077510Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Update.dll  
2020-02-27T15:08:30.8077870Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Abstractions.pdb  
2020-02-27T15:08:30.8078240Z   inflating: tools/netcoreapp2.1/any/NuKeeper.AzureDevOps.pdb  
2020-02-27T15:08:30.8078650Z   inflating: tools/netcoreapp2.1/any/NuKeeper.BitBucketLocal.pdb  
2020-02-27T15:08:30.8079030Z   inflating: tools/netcoreapp2.1/any/NuKeeper.BitBucket.pdb  
2020-02-27T15:08:30.8079380Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Gitea.pdb  
2020-02-27T15:08:30.8079760Z   inflating: tools/netcoreapp2.1/any/NuKeeper.GitHub.pdb  
2020-02-27T15:08:30.8080120Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Gitlab.pdb  
2020-02-27T15:08:30.8080850Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Git.pdb  
2020-02-27T15:08:30.8081270Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Inspection.pdb  
2020-02-27T15:08:30.8081630Z   inflating: tools/netcoreapp2.1/any/NuKeeper.Update.pdb  
2020-02-27T15:08:30.8082540Z   inflating: tools/netcoreapp2.1/any/runtimes/alpine-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8083420Z   inflating: tools/netcoreapp2.1/any/runtimes/alpine.3.9-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8084610Z   inflating: tools/netcoreapp2.1/any/runtimes/debian-arm64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8085940Z   inflating: tools/netcoreapp2.1/any/runtimes/debian.9-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8086860Z   inflating: tools/netcoreapp2.1/any/runtimes/fedora-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8087690Z   inflating: tools/netcoreapp2.1/any/runtimes/linux-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8088480Z   inflating: tools/netcoreapp2.1/any/runtimes/osx/native/libgit2-7ce88e6.dylib  
2020-02-27T15:08:30.8089280Z   inflating: tools/netcoreapp2.1/any/runtimes/rhel-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8090460Z   inflating: tools/netcoreapp2.1/any/runtimes/ubuntu.16.04-arm64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8091310Z   inflating: tools/netcoreapp2.1/any/runtimes/ubuntu.18.04-x64/native/libgit2-7ce88e6.so  
2020-02-27T15:08:30.8092100Z   inflating: tools/netcoreapp2.1/any/runtimes/win-x64/native/git2-7ce88e6.dll  
2020-02-27T15:08:30.8092950Z   inflating: tools/netcoreapp2.1/any/runtimes/win-x64/native/git2-7ce88e6.pdb  
2020-02-27T15:08:30.8093720Z   inflating: tools/netcoreapp2.1/any/runtimes/win-x86/native/git2-7ce88e6.dll  
2020-02-27T15:08:30.8094650Z   inflating: tools/netcoreapp2.1/any/runtimes/win-x86/native/git2-7ce88e6.pdb  
2020-02-27T15:08:30.8095240Z   inflating: tools/netcoreapp2.1/any/runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.ProtectedData.dll  
2020-02-27T15:08:30.8096050Z   inflating: tools/netcoreapp2.1/any/runtimes/win/lib/netstandard1.3/System.Security.Cryptography.ProtectedData.dll  
2020-02-27T15:08:30.8097260Z   inflating: tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll  
2020-02-27T15:08:30.8097890Z   inflating: tools/netcoreapp2.1/any/NuGet.exe  
2020-02-27T15:08:30.8098230Z   inflating: [Content_Types].xml     
2020-02-27T15:08:30.8099090Z   inflating: package/services/metadata/core-properties/133d609d5231400f8baafc7cf3b77cb8.psmdcp  
2020-02-27T15:08:30.8099490Z  extracting: .signature.p7s          
2020-02-27T15:08:30.8100220Z ##[debug]Exit code 0 received from tool '/usr/bin/unzip'
2020-02-27T15:08:30.8100910Z ##[debug]STDIO streams have closed for tool '/usr/bin/unzip'
2020-02-27T15:08:30.8101740Z ##[debug]defaultRoot: '/Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked'
2020-02-27T15:08:30.8102800Z ##[debug]findOptions.allowBrokenSymbolicLinks: 'false'
2020-02-27T15:08:30.8103610Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2020-02-27T15:08:30.8104320Z ##[debug]findOptions.followSymbolicLinks: 'true'
2020-02-27T15:08:30.8105020Z ##[debug]matchOptions.debug: 'false'
2020-02-27T15:08:30.8105630Z ##[debug]matchOptions.nobrace: 'true'
2020-02-27T15:08:30.8106290Z ##[debug]matchOptions.noglobstar: 'false'
2020-02-27T15:08:30.8106900Z ##[debug]matchOptions.dot: 'true'
2020-02-27T15:08:30.8107540Z ##[debug]matchOptions.noext: 'false'
2020-02-27T15:08:30.8108140Z ##[debug]matchOptions.nocase: 'false'
2020-02-27T15:08:30.8109060Z ##[debug]matchOptions.nonull: 'false'
2020-02-27T15:08:30.8109750Z ##[debug]matchOptions.matchBase: 'false'
2020-02-27T15:08:30.8110360Z ##[debug]matchOptions.nocomment: 'false'
2020-02-27T15:08:30.8111030Z ##[debug]matchOptions.nonegate: 'false'
2020-02-27T15:08:30.8111640Z ##[debug]matchOptions.flipNegate: 'false'
2020-02-27T15:08:30.8112310Z ##[debug]pattern: '**/NuKeeper.dll'
2020-02-27T15:08:30.8113330Z ##[debug]findPath: '/Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked'
2020-02-27T15:08:30.8114530Z ##[debug]statOnly: 'false'
2020-02-27T15:08:30.8115260Z ##[debug]findPath: '/Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked'
2020-02-27T15:08:30.8116480Z ##[debug]findOptions.allowBrokenSymbolicLinks: 'false'
2020-02-27T15:08:30.8117170Z ##[debug]findOptions.followSpecifiedSymbolicLink: 'true'
2020-02-27T15:08:30.8117920Z ##[debug]findOptions.followSymbolicLinks: 'true'
2020-02-27T15:08:30.8118680Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked (directory)
2020-02-27T15:08:30.8119670Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/.signature.p7s (file)
2020-02-27T15:08:30.8120860Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/[Content_Types].xml (file)
2020-02-27T15:08:30.8121920Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/_rels (directory)
2020-02-27T15:08:30.8122880Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/_rels/.rels (file)
2020-02-27T15:08:30.8123810Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/nukeeper.nuspec (file)
2020-02-27T15:08:30.8124770Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/package (directory)
2020-02-27T15:08:30.8125690Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/package/services (directory)
2020-02-27T15:08:30.8126690Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/package/services/metadata (directory)
2020-02-27T15:08:30.8127760Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/package/services/metadata/core-properties (directory)
2020-02-27T15:08:30.8128940Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/package/services/metadata/core-properties/133d609d5231400f8baafc7cf3b77cb8.psmdcp (file)
2020-02-27T15:08:30.8130950Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools (directory)
2020-02-27T15:08:30.8132000Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1 (directory)
2020-02-27T15:08:30.8133070Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any (directory)
2020-02-27T15:08:30.8134070Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/DotnetToolSettings.xml (file)
2020-02-27T15:08:30.8135170Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/LibGit2Sharp.dll (file)
2020-02-27T15:08:30.8136300Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/McMaster.Extensions.CommandLineUtils.dll (file)
2020-02-27T15:08:30.8137380Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/Newtonsoft.Json.dll (file)
2020-02-27T15:08:30.8138450Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.Common.dll (file)
2020-02-27T15:08:30.8139460Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.Configuration.dll (file)
2020-02-27T15:08:30.8140550Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.Frameworks.dll (file)
2020-02-27T15:08:30.8141610Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.Packaging.dll (file)
2020-02-27T15:08:30.8143000Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.Protocol.dll (file)
2020-02-27T15:08:30.8144110Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.Versioning.dll (file)
2020-02-27T15:08:30.8145100Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuGet.exe (file)
2020-02-27T15:08:30.8146230Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Abstractions.dll (file)
2020-02-27T15:08:30.8147300Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Abstractions.pdb (file)
2020-02-27T15:08:30.8148410Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.AzureDevOps.dll (file)
2020-02-27T15:08:30.8149690Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.AzureDevOps.pdb (file)
2020-02-27T15:08:30.8150780Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.BitBucket.dll (file)
2020-02-27T15:08:30.8151820Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.BitBucket.pdb (file)
2020-02-27T15:08:30.8152910Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.BitBucketLocal.dll (file)
2020-02-27T15:08:30.8153950Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.BitBucketLocal.pdb (file)
2020-02-27T15:08:30.8155230Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Git.dll (file)
2020-02-27T15:08:30.8156680Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Git.pdb (file)
2020-02-27T15:08:30.8157710Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.GitHub.dll (file)
2020-02-27T15:08:30.8158780Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.GitHub.pdb (file)
2020-02-27T15:08:30.8159800Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Gitea.dll (file)
2020-02-27T15:08:30.8161260Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Gitea.pdb (file)
2020-02-27T15:08:30.8162510Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Gitlab.dll (file)
2020-02-27T15:08:30.8163640Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Gitlab.pdb (file)
2020-02-27T15:08:30.8164890Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Inspection.dll (file)
2020-02-27T15:08:30.8165970Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Inspection.pdb (file)
2020-02-27T15:08:30.8167160Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Update.dll (file)
2020-02-27T15:08:30.8168260Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.Update.pdb (file)
2020-02-27T15:08:30.8204120Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.deps.json (file)
2020-02-27T15:08:30.8205330Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.dll (file)
2020-02-27T15:08:30.8206370Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.pdb (file)
2020-02-27T15:08:30.8207430Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/NuKeeper.runtimeconfig.json (file)
2020-02-27T15:08:30.8208460Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/Octokit.dll (file)
2020-02-27T15:08:30.8209520Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/SimpleInjector.dll (file)
2020-02-27T15:08:30.8210660Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/System.Runtime.CompilerServices.Unsafe.dll (file)
2020-02-27T15:08:30.8212210Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/System.Text.Encoding.CodePages.dll (file)
2020-02-27T15:08:30.8213480Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/config.json (file)
2020-02-27T15:08:30.8214520Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes (directory)
2020-02-27T15:08:30.8215610Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/alpine-x64 (directory)
2020-02-27T15:08:30.8216730Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/alpine-x64/native (directory)
2020-02-27T15:08:30.8218280Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/alpine-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8219400Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/alpine.3.9-x64 (directory)
2020-02-27T15:08:30.8220470Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/alpine.3.9-x64/native (directory)
2020-02-27T15:08:30.8222100Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/alpine.3.9-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8223350Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/debian-arm64 (directory)
2020-02-27T15:08:30.8224460Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/debian-arm64/native (directory)
2020-02-27T15:08:30.8225630Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/debian-arm64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8226730Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/debian.9-x64 (directory)
2020-02-27T15:08:30.8227790Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/debian.9-x64/native (directory)
2020-02-27T15:08:30.8228940Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/debian.9-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8230830Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/fedora-x64 (directory)
2020-02-27T15:08:30.8232060Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/fedora-x64/native (directory)
2020-02-27T15:08:30.8233180Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/fedora-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8234260Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/linux-x64 (directory)
2020-02-27T15:08:30.8235380Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/linux-x64/native (directory)
2020-02-27T15:08:30.8236480Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/linux-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8237570Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/osx (directory)
2020-02-27T15:08:30.8238640Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/osx/native (directory)
2020-02-27T15:08:30.8239720Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/osx/native/libgit2-7ce88e6.dylib (file)
2020-02-27T15:08:30.8240900Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/rhel-x64 (directory)
2020-02-27T15:08:30.8241980Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/rhel-x64/native (directory)
2020-02-27T15:08:30.8243430Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/rhel-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8244570Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/ubuntu.16.04-arm64 (directory)
2020-02-27T15:08:30.8245660Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/ubuntu.16.04-arm64/native (directory)
2020-02-27T15:08:30.8246810Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/ubuntu.16.04-arm64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8247960Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/ubuntu.18.04-x64 (directory)
2020-02-27T15:08:30.8249070Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/ubuntu.18.04-x64/native (directory)
2020-02-27T15:08:30.8250200Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/ubuntu.18.04-x64/native/libgit2-7ce88e6.so (file)
2020-02-27T15:08:30.8251310Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/unix (directory)
2020-02-27T15:08:30.8252340Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/unix/lib (directory)
2020-02-27T15:08:30.8253440Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/unix/lib/netstandard1.3 (directory)
2020-02-27T15:08:30.8254940Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.ProtectedData.dll (file)
2020-02-27T15:08:30.8256200Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win (directory)
2020-02-27T15:08:30.8257270Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win/lib (directory)
2020-02-27T15:08:30.8258340Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0 (directory)
2020-02-27T15:08:30.8259510Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll (file)
2020-02-27T15:08:30.8260710Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win/lib/netstandard1.3 (directory)
2020-02-27T15:08:30.8261920Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win/lib/netstandard1.3/System.Security.Cryptography.ProtectedData.dll (file)
2020-02-27T15:08:30.8263060Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x64 (directory)
2020-02-27T15:08:30.8264160Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x64/native (directory)
2020-02-27T15:08:30.8265280Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x64/native/git2-7ce88e6.dll (file)
2020-02-27T15:08:30.8266410Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x64/native/git2-7ce88e6.pdb (file)
2020-02-27T15:08:30.8267810Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x86 (directory)
2020-02-27T15:08:30.8268900Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x86/native (directory)
2020-02-27T15:08:30.8269990Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x86/native/git2-7ce88e6.dll (file)
2020-02-27T15:08:30.8271110Z ##[debug]  /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any/runtimes/win-x86/native/git2-7ce88e6.pdb (file)
2020-02-27T15:08:30.8271700Z ##[debug]103 results
2020-02-27T15:08:30.8272070Z ##[debug]found 103 paths
2020-02-27T15:08:30.8272390Z ##[debug]applying include pattern
2020-02-27T15:08:30.8273190Z ##[debug]adjustedPattern: '/Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/**/NuKeeper.dll'
2020-02-27T15:08:30.8273710Z ##[debug]1 matches
2020-02-27T15:08:30.8274060Z ##[debug]1 final results
2020-02-27T15:08:30.8274340Z Caching tool: nukeeper 0.26.1 x64
2020-02-27T15:08:30.8275240Z ##[debug]source dir: /Users/runner/runners/2.165.0/work/_temp/e5c94869-36c4-4d0e-9e26-76b30cac7239.unpacked/tools/netcoreapp2.1/any
2020-02-27T15:08:30.8275810Z ##[debug]Agent.Version=2.165.0
2020-02-27T15:08:30.8276210Z ##[debug]Agent.ToolsDirectory=/Users/runner/hostedtoolcache
2020-02-27T15:08:30.8276680Z ##[debug]destination /Users/runner/hostedtoolcache/nukeeper/0.26.1/x64
2020-02-27T15:08:30.8277440Z ##[debug]rm -rf /Users/runner/hostedtoolcache/nukeeper/0.26.1/x64
2020-02-27T15:08:30.8278160Z ##[debug]rm -rf /Users/runner/hostedtoolcache/nukeeper/0.26.1/x64.complete
2020-02-27T15:08:30.8279260Z ##[debug]testing directory '/Users/runner/hostedtoolcache/nukeeper/0.26.1/x64'
2020-02-27T15:08:30.8280020Z ##[debug]testing directory '/Users/runner/hostedtoolcache/nukeeper/0.26.1'
2020-02-27T15:08:30.8280770Z ##[debug]testing directory '/Users/runner/hostedtoolcache/nukeeper'
2020-02-27T15:08:30.8281460Z ##[debug]testing directory '/Users/runner/hostedtoolcache'
2020-02-27T15:08:30.8282160Z ##[debug]mkdir '/Users/runner/hostedtoolcache/nukeeper'
2020-02-27T15:08:30.8282830Z ##[debug]mkdir '/Users/runner/hostedtoolcache/nukeeper/0.26.1'
2020-02-27T15:08:30.8283520Z ##[debug]mkdir '/Users/runner/hostedtoolcache/nukeeper/0.26.1/x64'
2020-02-27T15:08:30.8283940Z ##[debug]Agent.Version=2.165.0
2020-02-27T15:08:30.8284370Z ##[debug]Agent.ToolsDirectory=/Users/runner/hostedtoolcache
2020-02-27T15:08:30.8284760Z ##[debug]finished caching tool
2020-02-27T15:08:30.8285310Z ##[debug]feed=***
2020-02-27T15:08:30.8288520Z ##[debug]System.AccessToken=***
2020-02-27T15:08:30.8288930Z ##[debug]Getting package information..
2020-02-27T15:08:30.8289400Z ##[debug]System.TeamFoundationCollectionUri=***
2020-02-27T15:08:30.8289960Z ##[debug]NuGet.OverwritePackagingCollectionUrl=undefined
2020-02-27T15:08:30.8290780Z ##[debug]Feed registry url: https://pkgs.dev.azure.com/***
2020-02-27T15:08:30.8291350Z ##[debug]Done getting package information..
2020-02-27T15:08:30.8291730Z ##[debug]Create local nuget config content
2020-02-27T15:08:30.8292180Z ##[debug]Done creating local nuget config content
2020-02-27T15:08:30.8292550Z ##[debug]Create local nuget config
2020-02-27T15:08:30.8293220Z ##[debug]which '/Users/runner/hostedtoolcache/nukeeper/0.26.1/x64/NuGet.exe'
2020-02-27T15:08:30.8293630Z ##[debug]not found
2020-02-27T15:08:30.8294760Z ##[debug]Error: Unable to locate executable file: '/Users/runner/hostedtoolcache/nukeeper/0.26.1/x64/NuGet.exe'. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.
2020-02-27T15:08:30.8295910Z ##[debug]task result: Failed
2020-02-27T15:08:30.8326840Z ##[error]Error writting file temp nuget config
2020-02-27T15:08:30.8338640Z ##[debug]Processed: ##vso[task.issue type=error;]Error writting file temp nuget config
2020-02-27T15:08:30.8347490Z ##[debug]Processed: ##vso[task.complete result=Failed;]Error writting file temp nuget config
2020-02-27T15:08:30.8348060Z ##[debug]Done creating local nuget config

Also there's a typo: writting

This happens on at least 0.26.0 and 0.26.1

[error]Unhandled: Path must be a string. Received undefined

Starting: NuKeeper
==============================================================================
Task         : NuKeeper
Description  : Version 0.4.34
Version      : 0.4.34
Author       : NuKeeper
Help         : For help please visit https://github.com/NuKeeperDotNet/NuKeeper
==============================================================================
##[error]Unhandled: Path must be a string. Received undefined
Finishing: NuKeeper

Here are my settings, is any of this incorrect?:

image

AzureDevops: Updates failed LibGit2SharpException : request failed with status code: 403

Platform: AzureDevops
Build setup as: https://nukeeper.com/platform/azure-devops/#extension

Build Agent: Hosted 2017

Failure on: Git push to origin/nukeeper-update-AutoMapper-to-8.1.1
Updates failed LibGit2SharpException : request failed with status code: 403

Log
Git commit with message '๐Ÿ“ฆ Automatic update of AutoMapper to 8.1.1' Git push to origin/nukeeper-update-AutoMapper-to-8.1.1 Updates failed LibGit2SharpException : request failed with status code: 403 at LibGit2Sharp.Core.Ensure.HandleError(Int32 result) at LibGit2Sharp.Core.Proxy.git_remote_push(RemoteHandle remote, IEnumerable1 refSpecs, GitPushOptions opts)
at LibGit2Sharp.Network.Push(Remote remote, IEnumerable1 pushRefSpecs, PushOptions pushOptions) at LibGit2Sharp.Network.Push(IEnumerable1 branches, PushOptions pushOptions)
at NuKeeper.Git.LibGit2SharpDriver.<>c__DisplayClass17_0.b__0() in /home/vsts/work/r1/a/drop/NuKeeper.Git/LibGit2SharpDriver.cs:line 189
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
at NuKeeper.Engine.Packages.PackageUpdater.MakeUpdatePullRequests(IGitDriver git, RepositoryData repository, NuGetSources sources, SettingsContainer settings, IReadOnlyCollection1 updates) in /home/vsts/work/r1/a/drop/NuKeeper/Engine/Packages/PackageUpdater.cs:line 85 at NuKeeper.Engine.Packages.PackageUpdater.MakeUpdatePullRequests(IGitDriver git, RepositoryData repository, IReadOnlyCollection1 updates, NuGetSources sources, SettingsContainer settings) in /home/vsts/work/r1/a/drop/NuKeeper/Engine/Packages/PackageUpdater.cs:line 46`

requires linux container on windows

nukeeper Azure DevOps task keeps failing since today on a windows build server

2019-01-17T00:00:59.6317672Z ##[section]Starting: NuKeeper
2019-01-17T00:00:59.6537765Z ==============================================================================
2019-01-17T00:00:59.6537970Z Task         : NuKeeper
2019-01-17T00:00:59.6538080Z Description  : Version 0.1.51
2019-01-17T00:00:59.6538186Z Version      : 0.1.51
2019-01-17T00:00:59.6538304Z Author       : NuKeeper
2019-01-17T00:00:59.6538425Z Help         : For help please visit https://github.com/NuKeeperDotNet/NuKeeper
2019-01-17T00:00:59.6538560Z ==============================================================================
2019-01-17T00:01:00.5922331Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe checkout master
2019-01-17T00:01:00.6037501Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe pull
2019-01-17T00:01:00.6122265Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe config --global user.name NuKeeper
2019-01-17T00:01:00.6206477Z [command]D:\VstsBuildAgent\externals\git\cmd\git.exe config --global user.email [email protected]
2019-01-17T00:01:00.6569212Z [command]"C:\Program Files\Docker\docker.exe" run -v ${PWD}:/mount nukeeper/nukeeper:0.13.0 repo mount *** -p 3
2019-01-17T00:01:01.3241741Z You are not currently on a branch.
2019-01-17T00:01:01.3246737Z Please specify which branch you want to merge with.
2019-01-17T00:01:01.3247562Z See git-pull(1) for details.
2019-01-17T00:01:01.3247972Z 
2019-01-17T00:01:01.3248511Z     git pull <remote> <branch>
2019-01-17T00:01:01.3248955Z 
2019-01-17T00:01:01.4884895Z Branch master set up to track remote branch master from origin.
2019-01-17T00:01:01.4885845Z Switched to a new branch 'master'
2019-01-17T00:01:06.1298453Z Unable to find image 'nukeeper/nukeeper:0.13.0' locally
2019-01-17T00:01:08.3809274Z 0.13.0: Pulling from nukeeper/nukeeper
2019-01-17T00:01:09.3956584Z C:\Program Files\Docker\docker.exe: image operating system "linux" cannot be used on this platform.
2019-01-17T00:01:09.3957343Z See 'C:\Program Files\Docker\docker.exe run --help'.
2019-01-17T00:01:09.4088257Z ##[error]Error: C:\Program Files\Docker\docker.exe failed with return code: 125
2019-01-17T00:01:09.4118952Z ##[section]Finishing: NuKeeper

Cleanup in postdeployment job

Azuredevops extension have a pre and post job for a extension. If our extension fails for whatever reason during runtime we might have put the build agent in an undesired state. For example we might be on another branch. If a task after our task does something with git it means it will fail.

So we should use a postdeployment and a predeployment to setup and to cleanup everything.

Sequence contains more than one matching element

2019-10-03T11:12:18.3713909Z [command]E:\Agents\agent2\externals\git\cmd\git.exe config --global user.name NuKeeper
2019-10-03T11:12:18.4334637Z [command]E:\Agents\agent2\externals\git\cmd\git.exe config --global user.email [email protected]
2019-10-03T11:12:19.5103325Z Found tool in cache: nukeeper 0.25.0 x64
2019-10-03T11:12:19.5204220Z ##[error]Error parsing organisation from organisation url: 'http://<ip>:8080/tfs/OTOD/'.
2019-10-03T11:12:19.5238991Z ##[error]Error writting file temp nuget config
2019-10-03T11:12:19.6317757Z [command]"C:\Program Files\dotnet\dotnet.exe" E:\Agents\agent2\_work\_tool\nukeeper\0.25.0\x64\NuKeeper.dll repo E:\Agents\agent2\_work\317\s\Uwv.eDv.Werk.ServiceAgents.BeheerdersaccountBeheerInzage *** --targetBranch origin/master --platform AzureDevOps
2019-10-03T11:12:24.0825268Z 
2019-10-03T11:12:24.1818423Z Unhandled Exception: System.InvalidOperationException: Sequence contains more than one matching element
2019-10-03T11:12:24.1819509Z    at System.Linq.Enumerable.Single[TSource](IEnumerable`1 source, Func`2 predicate)
2019-10-03T11:12:24.1821846Z    at NuKeeper.Commands.RepositoryCommand.TryGetSettingsReader(Uri repoUri, Nullable`1 platform) in /home/vsts/work/r1/a/drop/NuKeeper/Commands/RepositoryCommand.cs:line 80
2019-10-03T11:12:24.1822304Z    at NuKeeper.Commands.RepositoryCommand.PopulateSettings(SettingsContainer settings) in /home/vsts/work/r1/a/drop/NuKeeper/Commands/RepositoryCommand.cs:line 50
2019-10-03T11:12:24.1822691Z    at NuKeeper.Commands.CommandBase.OnExecute() in /home/vsts/work/r1/a/drop/NuKeeper/Commands/CommandBase.cs:line 96
2019-10-03T11:12:24.1823066Z    at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.InvokeAsync(MethodInfo method, Object instance, Object[] arguments)
2019-10-03T11:12:24.1823389Z    at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.OnExecute(ConventionContext context)
2019-10-03T11:12:24.1823763Z    at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.<>c__DisplayClass0_0.<<Apply>b__0>d.MoveNext()
2019-10-03T11:12:24.1824104Z --- End of stack trace from previous location where exception was thrown ---
2019-10-03T11:12:24.1824465Z    at McMaster.Extensions.CommandLineUtils.CommandLineApplication.<>c__DisplayClass142_0.<OnExecute>b__0()
2019-10-03T11:12:24.1824792Z    at NuKeeper.Program.Main(String[] args) in /home/vsts/work/r1/a/drop/NuKeeper/Program.cs:line 33

I noticed that the code on the master branch is not yet published on the marketplace (eg. I had to set Pipeline.Workspace myself but there is a fix for that in master).

I also noticed that the command is the first argument to the repo command seems to be the local folder. Isn't that supposed to be the remote repo url?

Make the extension debuggable locally

We should make the extension debuggable. In the end, the agent just set's a bunch of env variables. We could build a script that does the same, that way we don't have to deploy over and over to see if the changes worked.

Arguments needed in newest version

Version 0.1.41 will fail if you pass no arguments. Output will be Cannot read property 'exec' of undefined
Workaround is to pass arguments. For default behaviour you can set the arguments to -p 3

Error with package and package dependency both updating

In our case, we have AbcPDF and AbcPDF.AbcGecko, which depends on AbcPdf. Both are flagged as packages to update as seen here:

Updating 3 packages
'ABCpdf' from 11.3.04 to 11.3.7 in 1 projects
'ABCpdf.ABCGecko' from 11.3.04 to 11.3.7 in 1 projects
'IPNetwork2' from 2.5.189 to 2.5.192 in 1 projects

Git checkout 'origin/master'
Using branch name: 'nukeeper-update-3-packages-5522AB1B8600493317E2E4EAA554586C'
Git checkout new branch 'nukeeper-update-3-packages-5522AB1B8600493317E2E4EAA554586C'
Sorted 1 projects by dependencies but no change made

But then when NuKeeper updated AbcPDF, Nuget.exe update also updates AbcPDF.AbcGecko (I ran this locally using Nuget to confirm this is what happens):

Updating 'ABCpdf' to 11.3.7 in 1 projects
Nuget restore on D:\a\1\s\MyProject packages.config
Found NuGet.exe: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe
In path D:\a\1\s\MyProject, running command: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe restore packages.config -Source https://api.nuget.org/v3/index.json  -NonInteractive
Nuget restore on packages.config complete
Found NuGet.exe: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe
In path D:\a\1\s\MyProject, running command: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe update packages.config -Id ABCpdf -Version 11.3.7 -Source https://api.nuget.org/v3/index.json -NonInteractive
Git commit with message '๐Ÿ“ฆ Automatic update of ABCpdf to 11.3.7'

But then NuKeeper doesn't know that AbcGecko was updated, and still attempts to explicitly update AbcPDF.AbcGecko (which, again, is already fully up-to-date from the AbcPDF update). So update doesn't actually change the packages.config file. And then NuKeeper attempts to create a commit, but nothing has changed and we get an exception and the whole thing fails:

Sorted 1 projects by dependencies but no change made
Updating 'ABCpdf.ABCGecko' to 11.3.7 in 1 projects
Nuget restore on D:\a\1\s\MyProject packages.config
In path D:\a\1\s\MyProject, running command: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe restore packages.config -Source https://api.nuget.org/v3/index.json  -NonInteractive
Nuget restore on packages.config complete
Found NuGet.exe: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe
In path D:\a\1\s\MyProject, running command: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe update packages.config -Id ABCpdf -Version 11.3.7 -Source https://api.nuget.org/v3/index.json -NonInteractive
Git commit with message '๐Ÿ“ฆ Automatic update of ABCpdf to 11.3.7'
Sorted 1 projects by dependencies but no change made
Updating 'ABCpdf.ABCGecko' to 11.3.7 in 1 projects
Nuget restore on D:\a\1\s\MyProject packages.config
In path D:\a\1\s\MyProject, running command: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe restore packages.config -Source https://api.nuget.org/v3/index.json  -NonInteractive
Nuget restore on packages.config complete
In path D:\a\1\s\MyProject, running command: C:\hostedtoolcache\windows\nukeeper\0.26.0\x64\NuGet.exe update packages.config -Id ABCpdf.ABCGecko -Version 11.3.7 -Source https://api.nuget.org/v3/index.json -NonInteractive
Git commit with message '๐Ÿ“ฆ Automatic update of ABCpdf.ABCGecko to 11.3.7'
Updates failed EmptyCommitException : No changes; nothing to commit.
   at LibGit2Sharp.Repository.Commit(String message, Signature author, Signature committer, CommitOptions options)
   at LibGit2Sharp.RepositoryExtensions.Commit(IRepository repository, String message, Signature author, Signature committer)
   at NuKeeper.Git.LibGit2SharpDriver.<>c__DisplayClass15_0.<Commit>b__0() in d:\a\r1\a\drop\NuKeeper.Git\LibGit2SharpDriver.cs:line 148
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location where exception was thrown ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot)
--- End of stack trace from previous location where exception was thrown ---
   at NuKeeper.Engine.Packages.PackageUpdater.MakeUpdatePullRequests(IGitDriver git, RepositoryData repository, NuGetSources sources, SettingsContainer settings, IReadOnlyCollection`1 updates) in d:\a\r1\a\drop\NuKeeper\Engine\Packages\PackageUpdater.cs:line 82
   at NuKeeper.Engine.Packages.PackageUpdater.MakeUpdatePullRequests(IGitDriver git, RepositoryData repository, IReadOnlyCollection`1 updates, NuGetSources sources, SettingsContainer settings) in d:\a\r1\a\drop\NuKeeper\Engine\Packages\PackageUpdater.cs:line 46
Attempted 3 updates and did 0
Done at 2020-04-03T15:57:02Z
##[debug]task result: Succeeded

I feel like the easiest fix to this would be to simply not have an empty commit cause the whole thing to blow up. But I suspect there's a bigger problem with dependencies at play here.

EDIT - I'd also like to know if there's a workaround until a fix is completed and release made.

curl is not a preinstalled tool on most build servers

with the new version we get the following error:

Error: Unable to locate executable file: 'curl'. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.

as curl is not a default tool on a Windows Server 2016 installation. I would handle the file download in JS

NuKeeper fails using private feed on Ubuntu agent

Seems a Linux specific issue - runs fine on windows.

2020-02-25T03:40:55.1658302Z ##[debug]Create local nuget config
2020-02-25T03:40:55.1661715Z ##[debug]which '/opt/hostedtoolcache/nukeeper/0.26.0/x64/NuGet.exe'
2020-02-25T03:40:55.1662297Z ##[debug]not found
2020-02-25T03:40:55.1664673Z ##[debug]Error: Unable to locate executable file: '/opt/hostedtoolcache/nukeeper/0.26.0/x64/NuGet.exe'. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.
2020-02-25T03:40:55.1665716Z ##[debug]task result: Failed
2020-02-25T03:40:55.1703501Z ##[error]Error writting file temp nuget config

Cannot find current head branch for repo

once again broken with the latest changes.

##[section]Starting: NuKeeper
==============================================================================
Task         : NuKeeper
Description  : Version 0.2.7
Version      : 0.2.7
Author       : NuKeeper
Help         : For help please visit https://github.com/NuKeeperDotNet/NuKeeper
==============================================================================
Downloading: https://www.nuget.org/api/v2/package/NuKeeper
Extracting archive
[command]C:\WINDOWS\system32\chcp.com 65001
Active code page: 65001
[command]C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NoLogo -Sta -NoProfile -NonInteractive -ExecutionPolicy Unrestricted -Command "$ErrorActionPreference = 'Stop' ; try { Add-Type -AssemblyName System.IO.Compression.FileSystem } catch { } ; [System.IO.Compression.ZipFile]::ExtractToDirectory('D:\VstsBuildAgent02\_work\_temp\nukeeper.nupkg', 'D:\VstsBuildAgent02\_work\_temp\nukeeper')"
[command]D:\VstsBuildAgent02\externals\git\cmd\git.exe config --global user.name NuKeeper
[command]D:\VstsBuildAgent02\externals\git\cmd\git.exe config --global user.email [email protected]
[command]"C:\Program Files\dotnet\dotnet.exe" D:\VstsBuildAgent02\_work\_temp\nukeeper\tools\netcoreapp2.1\any\NuKeeper.dll repo D:\VstsBuildAgent02\_work\28\s *** --targetBranch master -m 3

Unhandled Exception: NuKeeper.Abstractions.NuKeeperException: Cannot find current head branch for repo at 'D:/VstsBuildAgent02/_work/28/s/.git/', with 6 branches
   at NuKeeper.Git.LibGit2SharpDiscoveryDriver.GetCurrentHead(Uri repositoryUri) in /home/vsts/work/r1/a/drop/NuKeeper.Git/LibGit2SharpDiscoveryDriver.cs:line 75
   at NuKeeper.AzureDevOps.VstsSettingsReader.CreateSettingsFromLocal(Uri repositoryUri) in /home/vsts/work/r1/a/drop/NuKeeper.AzureDevOps/VSTSSettingsReader.cs:line 98
   at NuKeeper.AzureDevOps.VstsSettingsReader.RepositorySettings(Uri repositoryUri, String targetBranch) in /home/vsts/work/r1/a/drop/NuKeeper.AzureDevOps/VSTSSettingsReader.cs:line 47
   at NuKeeper.Commands.RepositoryCommand.PopulateSettings(SettingsContainer settings) in /home/vsts/work/r1/a/drop/NuKeeper/Commands/RepositoryCommand.cs:line 49
   at NuKeeper.Commands.CommandBase.OnExecute() in /home/vsts/work/r1/a/drop/NuKeeper/Commands/CommandBase.cs:line 88
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.InvokeAsync(MethodInfo method, Object instance, Object[] arguments)
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.OnExecute(ConventionContext context)
   at McMaster.Extensions.CommandLineUtils.Conventions.ExecuteMethodConvention.<>c__DisplayClass0_0.<<Apply>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
   at McMaster.Extensions.CommandLineUtils.CommandLineApplication.<>c__DisplayClass138_0.<OnExecute>b__0()
   at NuKeeper.Program.Main(String[] args) in /home/vsts/work/r1/a/drop/NuKeeper/Program.cs:line 33
##[error]Error: The process 'C:\Program Files\dotnet\dotnet.exe' failed with exit code 3762504530
##[section]Finishing: NuKeeper

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.