Revert to a previous version of Salt

This documentation explains how to revert to a previous version of Salt on these operating systems:

Warning

Salt package repositories do not host versions of Salt older than 3006 LTS. This means users will NOT be able to revert to older versions such as Salt 3005.

Revert Salt on Debian/Ubuntu operating systems

To revert to a previous version of Salt:

  1. Verify the version of Salt you are running. For example:

    salt-call --local test.versions
    salt minion test.version
    salt-run --versions-report
    

    Example output:

    minion:
        3006.5
    
  2. If needed, first run the following command to restrict to target LTS or STS available packages:

    Populate /etc/apt/preferences.d/salt-pin-1001 in order to restrict upgrades to Salt 3006.x LTS:

    echo 'Package: salt-*
    Pin: version 3006.*
    Pin-Priority: 1001' | sudo tee /etc/apt/preferences.d/salt-pin-1001
    

    Note

    For RedHat ARM64 platforms, replace x86_64 with aarch64.

    For Ubuntu ARM64 platforms, replace amd64 with arm64.

    There’s no need to change the GPG keys because you can use the same GPG keys you used when installing Salt the first time.

    Warning

    STS not recommended for Production

    Salt Project recommends deploying LTS releases for Production environments.

    Populate /etc/apt/preferences.d/salt-pin-1001 in order to restrict upgrades to Salt 3006.x LTS:

    echo 'Package: salt-*
    Pin: version 3007.*
    Pin-Priority: 1001' | sudo tee /etc/apt/preferences.d/salt-pin-1001
    

    Note

    For RedHat ARM64 platforms, replace x86_64 with aarch64.

    For Ubuntu ARM64 platforms, replace amd64 with arm64.

    There’s no need to change the GPG keys because you can use the same GPG keys you used when installing Salt the first time.

  3. Run the following commands to remove all Salt services:

    apt-get remove salt-common
    apt-get remove salt-master
    apt-get remove salt-minion
    apt-get remove salt-ssh
    apt-get remove salt-syndic
    apt-get remove salt-cloud
    apt-get remove salt-api
    
  4. Run the following commands to update your package manager and install any of the Salt services as needed:

    apt-get update
    apt-get install salt-master
    apt-get install salt-minion
    apt-get install salt-ssh
    apt-get install salt-syndic
    apt-get install salt-cloud
    apt-get install salt-api
    
  5. Verify the version of Salt you are running to ensure you are on the previous version. For example:

    salt-call test.version
    salt minion test.version
    salt-run --versions-report
    

Revert Salt on RedHat operating systems

To revert to a previous version of Salt:

  1. Verify the version of Salt you are running. For example:

    salt-call --local test.versions
    salt minion test.version
    salt-run --versions-report
    

    Example output:

    minion:
        3006.5
    
  2. If needed, first run the following command to restrict to target LTS or STS available packages:

    curl -fsSL https://repo.saltproject.io/salt/py3/redhat/9/x86_64/minor/3006.X.repo | sudo tee /etc/yum.repos.d/salt.repo
    

    Note

    For RedHat ARM64 platforms, replace x86_64 with aarch64.

    For Ubuntu ARM64 platforms, replace amd64 with arm64.

    There’s no need to change the GPG keys because you can use the same GPG keys you used when installing Salt the first time.

    curl -fsSL https://repo.saltproject.io/salt/py3/redhat/8/x86_64/minor/3006.X.repo | sudo tee /etc/yum.repos.d/salt.repo
    

    Note

    For RedHat ARM64 platforms, replace x86_64 with aarch64.

    For Ubuntu ARM64 platforms, replace amd64 with arm64.

    There’s no need to change the GPG keys because you can use the same GPG keys you used when installing Salt the first time.

    curl -fsSL https://repo.saltproject.io/salt/py3/redhat/7/x86_64/minor/3006.X.repo | sudo tee /etc/yum.repos.d/salt.repo
    

    Note

    For RedHat ARM64 platforms, replace x86_64 with aarch64.

    For Ubuntu ARM64 platforms, replace amd64 with arm64.

    There’s no need to change the GPG keys because you can use the same GPG keys you used when installing Salt the first time.

  3. Run the following command to change your version of Salt and remove all Salt services:

    dnf remove salt
    
  4. Update your package manager and install any of the Salt services as needed:

    dnf makecache
    dnf install salt-master
    dnf install salt-minion
    dnf install salt-ssh
    dnf install salt-syndic
    dnf install salt-cloud
    dnf install salt-api
    
  5. Restart the salt services:

    systemctl restart salt-master
    systemctl restart salt-minion
    systemctl restart salt-ssh
    systemctl restart salt-syndic
    systemctl restart salt-cloud
    systemctl restart salt-api
    
  6. Verify the version of Salt you are running to ensure you are on the previous version. For example:

    salt-call --local test.versions
    salt minion test.version
    salt-run --versions-report