This page is for Octopus Deploy 3.0 and newer versions. You can view this page for Octopus 2.0

Skip to end of metadata
Go to start of metadata

Zip and tar support was added in Octopus Deploy 3.3. Docker image support was added in Octopus Deploy 3.5.

The package types supported by Octopus Deploy are:

Package TypeFile ExtensionsRepositoriesNotes
NuGet.nupkgAny NuGet repository (including the Built-In repository)

Currently only NuGet packages will have extra metadata like release notes and description extracted from the package metadata.

Tar.tarBuilt-In repository onlyAn archive file primarily used in non Windows environments.
Tar + Gzip.tgz, .tar.gz, .tar.ZBuilt-In repository only 
Tar +, .tar.bz2, .tbzBuilt-In repository only 
Zip.zipBuilt-In repository onlyStandard zip file as created through most common zip programs.
Docker Image Docker RegistriesLearn about Docker in Octopus Deploy.

NuGet packages and Docker images are the only package types that support external repositories. Currently, file-system feeds are NuGet only. If you want to use other package types, you must use the Octopus built-in repository.

File extensions matter

Octopus Deploy uses the file extension to determine the correct extraction algorithm to use so it is important that your package has the correct extension for the package format.

Package Metadata

The only required pieces of information Octopus Deploy requires for a package are an ID, Version and Format. Other metadata like release notes or descriptions are optional.

  • NuGet packages: NuGet packages support embedding metadata within the contents of the package. We use this metadata to determine the version of the package.
  • All other packages: In all other cases we have to parse the file name itself and extract the ID, Version and Format.

The expected package convention is therefore:


So for example the package name for version 2.3 of you project Sample.Web, archived with tar & gzip should be named 



Avoid putting numbers into your Package ID

Notice that the version is defined as consisting of the part of the file name from the first instance of a digit, until the file extension. So long as your project name doesn't contain a ".<number>" component it will parse the version correctly. Note that this means you can also have pre-release tags as part of your version number. This approach allows Octopus to support as generic a package format as possible, while still extracting the information needed for it to do its job.
  • No labels