mirror of
https://github.com/saltstack/salt-bootstrap.git
synced 2025-04-16 01:30:21 +00:00
Merge pull request #1002 from rallytime/update-ubuntu-versions
Updated supported versions for Ubuntu: 12.04, 14.04, 16.04, and 16.10 (best effort)
This commit is contained in:
commit
e06645ff48
2 changed files with 42 additions and 73 deletions
21
README.rst
21
README.rst
|
@ -216,8 +216,8 @@ Debian and derivatives
|
|||
.. note::
|
||||
|
||||
Installation of Salt packages on Debian 8 based distribution from repo.saltstack.com repository
|
||||
is currently supported for ``amd64`` (``x86-64``) and ``armhf`` architechtures ONLY. Use ``git``
|
||||
bootstrap mode as described above to install Salt on other architechtures, such as ``i386`` or
|
||||
is currently supported for ``amd64`` (``x86-64``) and ``armhf`` architectures ONLY. Use ``git``
|
||||
bootstrap mode as described above to install Salt on other architectures, such as ``i386`` or
|
||||
``armel``. You also may need to disable repository configuration and allow ``pip`` installations
|
||||
by providing ``-r`` and ``-P`` options to the bootstrap script, i.e.:
|
||||
|
||||
|
@ -251,9 +251,22 @@ Ubuntu and derivatives
|
|||
|
||||
- Elementary OS 0.2 (based on Ubuntu 12.04)
|
||||
- Linaro 12.04
|
||||
- Linux Mint 13/14/16/17/18
|
||||
- Linux Mint 13/17/18
|
||||
- Trisquel GNU/Linux 6 (based on Ubuntu 12.04)
|
||||
- Ubuntu 10.x/11.x/12.x/13.x/14.x/15.x/16.04
|
||||
- Ubuntu 12.04/14.04/16.04
|
||||
|
||||
Ubuntu Best Effort Support: Non-LTS Releases
|
||||
********************************************
|
||||
|
||||
This script provides best-effort support for current, non-LTS Ubuntu releases. If package
|
||||
repositories are not provided on `SaltStack's Ubuntu repository`_ for the non-LTS release, the
|
||||
bootstrap script will attempt to install the packages for the most closely related LTS Ubuntu
|
||||
release instead.
|
||||
|
||||
For example, when installing Salt on Ubuntu 16.10, the bootstrap script will setup the repository
|
||||
for Ubuntu 16.04 from `SaltStack's Ubuntu repository`_ and install the 16.04 packages.
|
||||
|
||||
.. _`SaltStack's Ubuntu repository`: http://repo.saltstack.com/#ubuntu
|
||||
|
||||
|
||||
Other Linux distro
|
||||
|
|
|
@ -1201,12 +1201,6 @@ __ubuntu_derivatives_translation() {
|
|||
# Mappings
|
||||
trisquel_6_ubuntu_base="12.04"
|
||||
linuxmint_13_ubuntu_base="12.04"
|
||||
linuxmint_14_ubuntu_base="12.10"
|
||||
#linuxmint_15_ubuntu_base="13.04"
|
||||
# Bug preventing add-apt-repository from working on Mint 15:
|
||||
# https://bugs.launchpad.net/linuxmint/+bug/1198751
|
||||
|
||||
linuxmint_16_ubuntu_base="13.10"
|
||||
linuxmint_17_ubuntu_base="14.04"
|
||||
linuxmint_18_ubuntu_base="16.04"
|
||||
linaro_12_ubuntu_base="12.04"
|
||||
|
@ -1264,13 +1258,6 @@ __ubuntu_codename_translation() {
|
|||
"14")
|
||||
DISTRO_CODENAME="trusty"
|
||||
;;
|
||||
"15")
|
||||
if [ -n "$_april" ]; then
|
||||
DISTRO_CODENAME="vivid"
|
||||
else
|
||||
DISTRO_CODENAME="wily"
|
||||
fi
|
||||
;;
|
||||
"16")
|
||||
if [ "$_april" ]; then
|
||||
DISTRO_CODENAME="xenial"
|
||||
|
@ -1711,7 +1698,12 @@ __check_end_of_life_versions() {
|
|||
# Ubuntu versions not supported
|
||||
#
|
||||
# < 12.04
|
||||
if [ "$DISTRO_MAJOR_VERSION" -lt 12 ]; then
|
||||
# 13.x, 15.x
|
||||
# 12.10, 14.10
|
||||
if [ "$DISTRO_MAJOR_VERSION" -lt 12 ] || \
|
||||
[ "$DISTRO_MAJOR_VERSION" -eq 13 ] || \
|
||||
[ "$DISTRO_MAJOR_VERSION" -eq 15 ] || \
|
||||
([ "$DISTRO_MAJOR_VERSION" -lt 16 ] && [ "$DISTRO_MINOR_VERSION" -eq 10 ]); then
|
||||
echoerror "End of life distributions are not supported."
|
||||
echoerror "Please consider upgrading to the next stable. See:"
|
||||
echoerror " https://wiki.ubuntu.com/Releases"
|
||||
|
@ -2306,23 +2298,13 @@ __enable_universe_repository() {
|
|||
|
||||
echodebug "Enabling the universe repository"
|
||||
|
||||
# Ubuntu versions higher than 12.04 do not live in the old repositories
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 12 ] || ([ "$DISTRO_MAJOR_VERSION" -eq 12 ] && [ "$DISTRO_MINOR_VERSION" -gt 04 ]); then
|
||||
add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" || return 1
|
||||
elif [ "$DISTRO_MAJOR_VERSION" -lt 11 ] && [ "$DISTRO_MINOR_VERSION" -lt 10 ]; then
|
||||
# Below Ubuntu 11.10, the -y flag to add-apt-repository is not supported
|
||||
add-apt-repository "deb http://old-releases.ubuntu.com/ubuntu $(lsb_release -sc) universe" || return 1
|
||||
else
|
||||
add-apt-repository -y "deb http://old-releases.ubuntu.com/ubuntu $(lsb_release -sc) universe" || return 1
|
||||
fi
|
||||
|
||||
add-apt-repository -y "deb http://old-releases.ubuntu.com/ubuntu $(lsb_release -sc) universe" || return 1
|
||||
add-apt-repository -y "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe" || return 1
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
install_ubuntu_deps() {
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 12 ] || ([ "$DISTRO_MAJOR_VERSION" -eq 12 ] && [ "$DISTRO_MINOR_VERSION" -eq 10 ]); then
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 12 ]; then
|
||||
# Above Ubuntu 12.04 add-apt-repository is in a different package
|
||||
__apt_get_install_noinput software-properties-common || return 1
|
||||
else
|
||||
|
@ -2336,18 +2318,10 @@ install_ubuntu_deps() {
|
|||
if [ "$(echo "$STABLE_REV" | egrep '^(2015\.5|2015\.8|2016\.3|2016\.11|latest|archive\/)')" = "" ]; then
|
||||
if [ "$DISTRO_MAJOR_VERSION" -lt 14 ]; then
|
||||
echoinfo "Installing Python Requests/Chardet from Chris Lea's PPA repository"
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 11 ] || ([ "$DISTRO_MAJOR_VERSION" -eq 11 ] && [ "$DISTRO_MINOR_VERSION" -gt 04 ]); then
|
||||
# Above Ubuntu 11.04 add a -y flag
|
||||
add-apt-repository -y "ppa:chris-lea/python-requests" || return 1
|
||||
add-apt-repository -y "ppa:chris-lea/python-chardet" || return 1
|
||||
add-apt-repository -y "ppa:chris-lea/python-urllib3" || return 1
|
||||
add-apt-repository -y "ppa:chris-lea/python-crypto" || return 1
|
||||
else
|
||||
add-apt-repository "ppa:chris-lea/python-requests" || return 1
|
||||
add-apt-repository "ppa:chris-lea/python-chardet" || return 1
|
||||
add-apt-repository "ppa:chris-lea/python-urllib3" || return 1
|
||||
add-apt-repository "ppa:chris-lea/python-crypto" || return 1
|
||||
fi
|
||||
add-apt-repository -y "ppa:chris-lea/python-requests" || return 1
|
||||
add-apt-repository -y "ppa:chris-lea/python-chardet" || return 1
|
||||
add-apt-repository -y "ppa:chris-lea/python-urllib3" || return 1
|
||||
add-apt-repository -y "ppa:chris-lea/python-crypto" || return 1
|
||||
fi
|
||||
|
||||
fi
|
||||
|
@ -2358,7 +2332,7 @@ install_ubuntu_deps() {
|
|||
# Minimal systems might not have upstart installed, install it
|
||||
__PACKAGES="upstart"
|
||||
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 15 ]; then
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 16 ]; then
|
||||
__PACKAGES="${__PACKAGES} python2.7"
|
||||
fi
|
||||
if [ "$_VIRTUALENV_DIR" != "null" ]; then
|
||||
|
@ -2389,7 +2363,7 @@ install_ubuntu_deps() {
|
|||
}
|
||||
|
||||
install_ubuntu_stable_deps() {
|
||||
if ([ "${_SLEEP}" -eq "${__DEFAULT_SLEEP}" ] && [ "$DISTRO_MAJOR_VERSION" -lt 15 ]); then
|
||||
if [ "${_SLEEP}" -eq "${__DEFAULT_SLEEP}" ] && [ "$DISTRO_MAJOR_VERSION" -lt 16 ]; then
|
||||
# The user did not pass a custom sleep value as an argument, let's increase the default value
|
||||
echodebug "On Ubuntu systems we increase the default sleep value to 10."
|
||||
echodebug "See https://github.com/saltstack/salt/issues/12248 for more info."
|
||||
|
@ -2434,10 +2408,10 @@ install_ubuntu_stable_deps() {
|
|||
# Versions starting with 2015.5.6, 2015.8.1 and 2016.3.0 are hosted at repo.saltstack.com
|
||||
if [ "$(echo "$STABLE_REV" | egrep '^(2015\.5|2015\.8|2016\.3|2016\.11|latest|archive\/)')" != "" ]; then
|
||||
# Workaround for latest non-LTS ubuntu
|
||||
if [ "$DISTRO_MAJOR_VERSION" -eq 15 ]; then
|
||||
if [ "$DISTRO_VERSION" = "16.10" ]; then
|
||||
echowarn "Non-LTS Ubuntu detected, but stable packages requested. Trying packages from latest LTS release. You may experience problems."
|
||||
UBUNTU_VERSION=14.04
|
||||
UBUNTU_CODENAME=trusty
|
||||
UBUNTU_VERSION=16.04
|
||||
UBUNTU_CODENAME=xenial
|
||||
else
|
||||
UBUNTU_VERSION=$DISTRO_VERSION
|
||||
UBUNTU_CODENAME=$DISTRO_CODENAME
|
||||
|
@ -2463,12 +2437,7 @@ install_ubuntu_stable_deps() {
|
|||
STABLE_PPA="saltstack/salt"
|
||||
fi
|
||||
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 11 ] || ([ "$DISTRO_MAJOR_VERSION" -eq 11 ] && [ "$DISTRO_MINOR_VERSION" -gt 04 ]); then
|
||||
# Above Ubuntu 11.04 add a -y flag
|
||||
add-apt-repository -y "ppa:$STABLE_PPA" || return 1
|
||||
else
|
||||
add-apt-repository "ppa:$STABLE_PPA" || return 1
|
||||
fi
|
||||
add-apt-repository -y "ppa:$STABLE_PPA" || return 1
|
||||
fi
|
||||
|
||||
apt-get update
|
||||
|
@ -2480,24 +2449,17 @@ install_ubuntu_stable_deps() {
|
|||
install_ubuntu_daily_deps() {
|
||||
install_ubuntu_stable_deps || return 1
|
||||
|
||||
if [ "$DISTRO_MAJOR_VERSION" -ge 12 ]; then
|
||||
# Above Ubuntu 11.10 add-apt-repository is in a different package
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 12 ]; then
|
||||
__apt_get_install_noinput software-properties-common || return 1
|
||||
else
|
||||
# Ubuntu 12.04 needs python-software-properties to get add-apt-repository binary
|
||||
__apt_get_install_noinput python-software-properties || return 1
|
||||
fi
|
||||
|
||||
if [ $_DISABLE_REPOS -eq $BS_FALSE ]; then
|
||||
__enable_universe_repository || return 1
|
||||
|
||||
# for anything up to and including 11.04 do not use the -y option
|
||||
if [ "$DISTRO_MAJOR_VERSION" -gt 11 ] || ([ "$DISTRO_MAJOR_VERSION" -eq 11 ] && [ "$DISTRO_MINOR_VERSION" -gt 04 ]); then
|
||||
# Above Ubuntu 11.04 add a -y flag
|
||||
add-apt-repository -y ppa:saltstack/salt-daily || return 1
|
||||
else
|
||||
add-apt-repository ppa:saltstack/salt-daily || return 1
|
||||
fi
|
||||
|
||||
add-apt-repository -y ppa:saltstack/salt-daily || return 1
|
||||
apt-get update
|
||||
fi
|
||||
|
||||
|
@ -2601,12 +2563,6 @@ install_ubuntu_git() {
|
|||
}
|
||||
|
||||
install_ubuntu_stable_post() {
|
||||
# Workaround for latest LTS packages on latest ubuntu. Normally packages on
|
||||
# debian-based systems will automatically start the corresponding daemons
|
||||
if [ "$DISTRO_MAJOR_VERSION" -lt 15 ]; then
|
||||
return 0
|
||||
fi
|
||||
|
||||
for fname in api master minion syndic; do
|
||||
# Skip salt-api since the service should be opt-in and not necessarily started on boot
|
||||
[ $fname = "api" ] && continue
|
||||
|
@ -2639,7 +2595,7 @@ install_ubuntu_git_post() {
|
|||
[ $fname = "minion" ] && [ "$_INSTALL_MINION" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "syndic" ] && [ "$_INSTALL_SYNDIC" -eq $BS_FALSE ] && continue
|
||||
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 15 ]; then
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 16 ]; then
|
||||
__copyfile "${_SALT_GIT_CHECKOUT_DIR}/pkg/deb/salt-${fname}.service" "/lib/systemd/system/salt-${fname}.service"
|
||||
|
||||
# Skip salt-api since the service should be opt-in and not necessarily started on boot
|
||||
|
@ -2684,7 +2640,7 @@ install_ubuntu_restart_daemons() {
|
|||
[ $_START_DAEMONS -eq $BS_FALSE ] && return
|
||||
|
||||
# Ensure upstart configs / systemd units are loaded
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 15 ]; then
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 16 ]; then
|
||||
systemctl daemon-reload
|
||||
elif [ -f /sbin/initctl ]; then
|
||||
/sbin/initctl reload-configuration
|
||||
|
@ -2699,7 +2655,7 @@ install_ubuntu_restart_daemons() {
|
|||
[ $fname = "minion" ] && [ "$_INSTALL_MINION" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "syndic" ] && [ "$_INSTALL_SYNDIC" -eq $BS_FALSE ] && continue
|
||||
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 15 ]; then
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 16 ]; then
|
||||
echodebug "There's systemd support while checking salt-$fname"
|
||||
systemctl stop salt-$fname > /dev/null 2>&1
|
||||
systemctl start salt-$fname.service
|
||||
|
@ -2743,7 +2699,7 @@ install_ubuntu_check_services() {
|
|||
[ $fname = "master" ] && [ "$_INSTALL_MASTER" -eq $BS_FALSE ] && continue
|
||||
[ $fname = "syndic" ] && [ "$_INSTALL_SYNDIC" -eq $BS_FALSE ] && continue
|
||||
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 15 ]; then
|
||||
if [ -f /bin/systemctl ] && [ "$DISTRO_MAJOR_VERSION" -ge 16 ]; then
|
||||
__check_services_systemd salt-$fname || return 1
|
||||
elif [ -f /sbin/initctl ] && [ -f /etc/init/salt-${fname}.conf ]; then
|
||||
__check_services_upstart salt-$fname || return 1
|
||||
|
|
Loading…
Add table
Reference in a new issue