404 with Octo Push

Hi, I get the following output and error when attempting to do an Octo push.

The Octo Pack is successful when called like so below (and creates file C:\Temp\Application.2017.10.6.165552.nupkg)

PS C:\temp\Application> N:\Common\Software\OctopusTools.4.24.0\Octo.exe pack --verbose --id=Application --outFolder=c:\temp\

But Octo Push (like called below) fails. The same user is packing and pushing, the user has the “package publisher” role. The Project “Application” exists on the Octopus server. This is the first package we’re attempting to publish for this Project. For the Project’s Setting’s, we have ReleaseVersioning=GenerateVersionNumbersUsingATemplate and VersionTemplate=#{Octopus.Version.LastMajor}.#{Octopus.Version.LastMinor}.#{Octopus.Version.NextPatch}

PS C:\temp> N:\Common\Software\OctopusTools.4.24.0\Octo.exe push --package .\Application.2017.10.6.165552.nupkg -server http://octopus.myserver.com --apiKey API-<####rest of key####>
Octopus Deploy Command Line Tool, version 4.6.1

Handshaking with Octopus server: http://octopus.myserver.com
Handshake successful. Octopus version: 3.3.20; API version: 3.0.0
Authenticated as: Kieran kieran@myserver.com
Pushing package: C:\temp\Application.2017.10.6.165552.nupkg…

404 - File or directory not found.

Server Error

404 - File or directory not found.

The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.

Error from Octopus server (HTTP 404 NotFound)
Exit code: -7

Hi,

Thanks for reaching out! If you browse http://octopus.myserver.com (or the real URL) from the machine where you are running the Octo.exe command, do you get to the Octopus web portal successfully?

For the command you need to use the same URL that you would use to browse the web portal.

Best regards,
Dalmiro

When going to http://octopus.myserver.com, I’m automatically redirected to
http://octopus.myserver.com.com/app#/, which
shows my default dashboard/web portal.

So I believe I do have the correct server parameter defined.

Actually my question wasn’t neccessary. Your log shows that the Handshake with the Octopus Server was successfull, so you are indeed hitting the right URL

Handshaking with Octopus server: http://octopus.myserver.com 
Handshake successful. Octopus version: 3.3.20; API version: 3.0.0 
Authenticated as: Kieran <kieran@myserver.com> 

This is the first time I see this so I might have to ask dev team on Monday (they are in Australia) about this. In the meantime could you setup Fiddler, attempt another push and see if Fiddler gives you more details about the error?

Unfortunately (or fortunately for the tech-security folks where I work),
attempted installations of Fiddler are blocked. Are there any other things
that would help figure this out?

After some experimenting, it seems that the push succeeds if the file is < 30MB.

We are using the Octopus Server’s built-in package repository, and going by this thread, it seems that there is no package size limit: https://help.octopusdeploy.com/discussions/problems/184-30mb-default-maximum-nuget-package-size

Is it still the case that there is no package size limit? Is there any way that a size limit can be set (so I can check whether my build-in package repository hasn’t been limited intentionally by someone else)?

Aha, this seems to be my issue / fault. The IIS server that hosts our Octopus deploy website, has itself a maximum file upload size limit. Upped this to cope with the package size that’s required. (Example instructions here: http://ajaxuploader.com/large-file-upload-iis-asp-net.htm)

Hi,

Glad to hear you found the reason behind it. I must admit I didn’t consider you might be running Octopus behind IIS (which is not such a common practice) so it was going to take me quite a while to figure it out!

Cheers,
Dalmiro