The Tentacle matches more than one machine on the server

Hi Guys,
Just upgraded from 2.6 to 3.0, upgrade seems to go fine. Using my script from version 2.6 to re-configure some of the tentacles and getting this error when running a remove of tentacle record from the Octopus Server:

Octopus Deploy: Tentacle version 3.0.10.2278
Error: The Tentacle matches more than one machine on the server. To deregister all of these machines specify the --multiple flag.
I’ve tried to specify that flag and it removed many records, not just the one I specified.
There is also a log in AppData which have following:
2015-08-18 11:26:33.2548 1 FATAL System.ArgumentException: The Tentacle matches more than one machine on the server. To deregister all of these machines specify the --multiple flag.
at Octopus.Tentacle.Commands.DeregisterMachineCommand.Start() in y:\work\refs\heads\master\source\Octopus.Tentacle\Commands\DeregisterMachineCommand.cs:line 40
at Octopus.Shared.Startup.AbstractCommand.Octopus.Shared.Startup.ICommand.Start(String[] commandLineArguments, ICommandRuntime commandRuntime, OptionSet commonOptions) in y:\work\refs\heads\master\source\Octopus.Shared\Startup\AbstractCommand.cs:line 57
at Octopus.Shared.Startup.ConsoleHost.Run(Action`1 start, Action shutdown) in y:\work\refs\heads\master\source\Octopus.Shared\Startup\ConsoleHost.cs:line 36
2015-08-18 11:26:33.3749 1 FATAL The Tentacle matches more than one machine on the server. To deregister all of these machines specify the --multiple flag.

Script is run from the server where tentacle is installed, registering works fine, but de-registering is not, removing them manually from the server for now where required.

Powershell script line that runs is: & $tentacleExe deregister-from --instance $($octopusAgent.hostname) --server “http://servername.company.com:10081” --apiKey $APIkey --console 2>&1 | out-host

Instance name here is hostname, like SQLAU01CITY0008, which works fine with registering.

Octopus server: 3.0.13.2386
Octopus Tentacle: 3.0.10.2278
Running on SQL 2008 and Windows Server 2008R2.

Hi Rod,

Thanks for getting in touch and for sending through a nice detailed error report. You helped me narrow down a bug in the DeregsiterMachineCommand in Tentacle. The bad news is that I can’t offer you a work around that doesn’t involve using the Octopus.Client or Octopus API directly.

I’ve raised a GitHub Issue so you can track the progress of this bug: https://github.com/OctopusDeploy/Issues/issues/1920

I know it’s not great news right now but I hope that helps.
Mike

Hey Michael,

No worries, I fixed it manually for now, so it is all good in my case. Thanks for a quick reply, good to know I am doing my bit in improving the product :slight_smile:

Cheers,
Rod

Hi Rod,

I’m glad to hear you’ve worked around it manually. Thanks again for doing your bit to help out!

Happy Deployments!
Mike

Is this still a pending issue with 3.0.17.2462? I’m trying to build some functions to deregister/move configurations for multiple machines. I’m looking for a way to manually match these “multiples” on the server so that I know what all I’m removing before I add the flag.

Hi Caleb,

Thanks for getting in touch. We fixed this issue in 3.0.20, so at the very least I would recommend upgrading to that, or better, the latest 3.0.x, or better, 3.2.x - we’ve done a lot of work since 3.0.17!

Out of interest’s sake, we’ve released a patch to octo.exe which should be available on the download page shortly as part of 3.2.23 that allows you to clean up an environment’s worth of machines that have a particular status. Say for example you want to do a deployment to a cloud environment where the machines are transient - you could use octo.exe to remove/delete all of the machines that are Offline.

Hope that helps!
Mike