Install a release candidate#

You can make an important contribution to the Salt Project by installing and testing release candidates (RCs) of Salt when they are made available prior to a release. Testing the RC and reporting any bugs or performance issues helps ensure code quality and minimizes disruptions to service when Salt users upgrade their Salt infrastructure.

What is a release candidate (RC)?

Release candidates are early versions of Salt that are released prior to an official Salt release. For LTS releases of Salt, the Salt Project releases two RCs in the months leading up to the official LTS release.

Report bugs#

To report any bugs you find while testing a release candidate, open an issue on the Salt repository on GitHub and write [RC] in the issue title. For example: [RC][BUG] Description of bug.

Install using packages#

RC builds for a few major platforms are available at the Salt repository: https://repo.saltproject.io/salt_rc/

RC builds are typically only available for the latest version of the operating system at the time the RC is available. Older versions of operating systems might not get an RC release.

To install release candidate packages:

  1. Use the standard install instructions for your operating system. See Manual install directions by operating system.

  2. On the step where you normally import the Salt Project repository key and pin the package to a specific version of Salt, insert salt_rc/ into the URL between the hostname and the remainder of the file path.

    For example, for the Salt 3006 RC 1, run the following commands:

    sudo rpm --import https://repo.saltproject.io/salt/py3/redhat/9/x86_64/latest/SALTSTACK-GPG-KEY2.pub
    baseurl=https://repo.saltproject.io/salt_rc/salt/py3/redhat/$releasever/$basearch/minor/3006rc1
    
    sudo curl -fsSL -o /etc/apt/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/salt/py3/ubuntu/22.04/amd64/latest/salt-archive-keyring.gpg
    echo "deb https://repo.saltproject.io/salt_rc/salt/py3/ubuntu/22.04/amd64/minor/3006rc1 jammy main" | sudo tee /etc/apt/sources.list.d/salt.list
    
    sudo curl -fsSL -o /etc/apt/keyrings/salt-archive-keyring.gpg https://repo.saltproject.io/salt/py3/debian/11/amd64/latest/salt-archive-keyring.gpg
    echo "deb https://repo.saltproject.io/salt_rc/salt/py3/debian/11/amd64/minor/3006rc1 bullseye main" | sudo tee /etc/apt/sources.list.d/salt.list
    

Install using bootstrap#

You can install a release candidate of Salt using the Salt bootstrap script.

For example for the 3006 RC1 release:

curl -o install_salt.sh -L https://bootstrap.saltproject.io
sudo sh install_salt.sh -P -x python3 git v3006rc1

To install a master using Salt bootstrap, use the -M flag:

curl -o install_salt.sh -L https://bootstrap.saltproject.io
sudo sh install_salt.sh -P -M -x python3 git v3006rc1

If you want to install only a master and not a minion using Salt bootstrap, use the -M` and -N flags:

curl -o install_salt.sh -L https://bootstrap.saltproject.io
sudo sh install_salt.sh -P -M -N -x python3 git v3006rc1

Install using pip#

To install the release candidate using pip from PyPi:

  1. Install the build dependencies:

    For example, for the Salt 3006 RC 1:

    Run the following commands:

    sudo yum install python-pip python-devel gcc gcc-c++
    

    Run the following commands:

    sudo apt-get install python-pip python-dev gcc g++
    

    Install:

    • pip
    • Python header libraries
    • C and C++ compilers
  2. Install Salt using the following command:

    sudo pip install salt==$rc_tag_version
    

    For example, to install the 3006 RC1 release:

    sudo pip install salt==3006rc1