Skip to main content

Omnitruck API

[edit on GitHub]

Chef’s Omnitruck API powers the Chef Software install script as well as Chef’s download site. It can be used to query available versions of Chef Software products and to provide direct download URLs.

Syntax

The URL from which these downloads can be obtained has the following syntax:

https://omnitruck.chef.io/<CHANNEL>/<PRODUCT>/download?p=$PLATFORM&pv=$PLATFORM_VERSION&m=$MACHINE_ARCH&v=latest&prerelease=false&nightlies=false

or:

https://omnitruck.chef.io/<CHANNEL>/<PRODUCT>/metadata?p=$PLATFORM&pv=$PLATFORM_VERSION&m=$MACHINE_ARCH&v=latest&prerelease=false&nightlies=false

where the difference between these URLs is the metadata and download options. Use the metadata option to verify the build before downloading it. Use the download option to download the package in a single step.

Downloads

The /metadata and/or /download endpoints can be used to download packages for all products:

https://omnitruck.chef.io/<CHANNEL>/<PRODUCT>/download?p=$PLATFORM&pv=$PLATFORM_VERSION&m=$MACHINE_ARCH&v=latest

or:

https://omnitruck.chef.io/<CHANNEL>/<PRODUCT>/metadata?p=$PLATFORM&pv=$PLATFORM_VERSION&m=$MACHINE_ARCH&v=latest

where:

  • <CHANNEL> is the release channel to install from. See Chef Software Packages for full details on the available channels.
  • <PRODUCT> is the Chef Software product to install. A list of valid product keys can be found at https://github.com/chef/mixlib-install/blob/main/PRODUCT_MATRIX.md
  • p is the platform. Possible values: debian, el (for RHEL derivatives), freebsd, mac_os_x, solaris2, sles, suse, ubuntu or windows.
  • pv is the platform version. Possible values depend on the platform. For example, Ubuntu: 18.04, or 20.04 or for macOS: 10.15 or 11.
  • m is the machine architecture for the machine on which the product will be installed. Possible values depend on the platform. For example, for Ubuntu or Debian: i386 or x86_64 or for macOS: x86_64.
  • v is the version of the product to be installed. A version always takes the form x.y.z, where x, y, and z are decimal numbers that are used to represent major (x), minor (y), and patch (z) versions. One-part (x) and two-part (x.y) versions are allowed. For more information about application versioning, see https://semver.org/. Default value: latest.

Platforms

Omnitruck accepts the following platforms:

Platform p m pv
AIX aix powerpc 6.1, 7.1, 7.2
Amazon Linux amazon x86_64,aarch64 201X, 2
Debian debian i386, x86_64, aarch64 6, 7, 8, 9, 10, 11
FreeBSD freebsd x86_64 9, 10, 11, 12
macOS mac_os_x x86_64, aarch64 10.6, 10.7, 10.8, 10.9, 10.10, 10.11, 10.12, 10.13, 10.14, 10.15, 11, 12
Solaris solaris2 i386, sparc 5.10, 5.11
SUSE Linux Enterprise Server sles x86_64, s390x, aarch64 11, 12, 15
Red Hat Enterprise Linux / CentOS / Oracle Linux el i386, x86_64, ppc64, ppc64le, aarch64, s390x, 5, 6, 7, 8
Ubuntu ubuntu i386, x86_64, aarch64, ppc64le 10.04, 10.10, 11.04, 11.10, 12.04, 12.10, 13.04, 13.10, 14.04, 14.10, 16.04, 16.10, 17.04, 17.10, 18.04, 18.10, 19.04, 20.04, 20.10, 21.04, 21.10
Windows windows x86_64, i386 7, 8, 10, 2008r2, 2012, 2012r2, 2016, 2019, 11, 2022

Chef Product Names for Omnibus

See the Supported Versions documentation for information about the support status of individual products.

This is a list of currently supported products that you can install with the Omnibus API.

Product Product Key
Chef Automate automate
Chef Infra Client chef
Chef Backend chef-backend
Chef Infra Server chef-server
Chef Workstation chef-workstation
Chef InSpec inspec
Management Console manage
Supermarket supermarket

Examples

Get the Latest Build

To get the latest supported build for Ubuntu 20.04, enter the following:

https://omnitruck.chef.io/stable/chef/metadata?p=ubuntu&pv=20.04&m=x86_64

to return something like:

sha1 3fe8e8a2f443675f9b82e876cdac8200104451f2
sha256 9f1c1a2c0b1f4e8494664386437bf32f0cb5cbfbd4cb9d23e327767fc65581dc
url https://packages.chef.io/files/stable/chef/17.7.29/ubuntu/20.04/chef_17.7.29-1_amd64.deb
version 17.7.29

Download Directly

To use cURL to download a package directly, enter the following:

curl -LOJ 'https://omnitruck.chef.io/<CHANNEL>/<PRODUCT>/download?p=debian&pv=10&m=x86_64'

To use GNU Wget to download a package directly, enter the following:

wget --content-disposition https://omnitruck.chef.io/<CHANNEL>/<PRODUCT>/download?p=debian&pv=10&m=x86_64

Was this page helpful?

×









Search Results