opscode/knife-linode — pull request #44 by jblancett (2014-09-30 18:57:01+00:00)
Title: missing server throwing wrong exception

When there is no matching server, an exception is raised that is not caught by the rescue.
I'm assuming this is a remnant from before deleting by label name was added.
Linode's api only lets you filter servers by ID, so instead it is pulling a full server list and filtering for a match.
When there is no match, server = nil so when it tries to get server.id it raises:
NoMethodError: undefined method `id' for nil:NilClass
So instead I'm faking the linode error so the delete request further down can still be caught by the same error, if that happens. Open to other solutions