When user sets the tempFolder value to a static path e.g.
package deployment fails with exception 'Value cannot be null'
It works fine with dynamic tempFolder path :)
HttpContext.Current.Server.MapPath(Sitecore.IO.TempFolder.GetFilename(Guid.NewGuid() + ".update")); line throws the exception in Sitecore.Ship.Infrastructure.Web.ServerTempFile class