Merge branch develop into stable

This commit is contained in:
Bryce Larson 2020-06-23 13:43:23 -06:00
commit 393fbfc25d
No known key found for this signature in database
GPG key ID: 131C38B0F02DB4CA
9 changed files with 1178 additions and 1225 deletions

File diff suppressed because it is too large Load diff

View file

@ -20,7 +20,8 @@ LINUX_DISTROS = [
'fedora-32',
'opensuse-15',
'ubuntu-1604',
'ubuntu-1804'
'ubuntu-1804',
'ubuntu-2004',
]
OSX = WINDOWS = []
@ -35,8 +36,10 @@ STABLE_DISTROS = [
'debian-9',
'fedora-30',
'fedora-31',
'fedora-32',
'ubuntu-1604',
'ubuntu-1804',
'ubuntu-2004',
]
PY2_BLACKLIST = [
@ -45,7 +48,8 @@ PY2_BLACKLIST = [
'fedora-30',
'fedora-31',
'fedora-32',
'opensuse-15'
'opensuse-15',
'ubuntu-2004',
]
PY3_BLACKLIST = [
@ -54,16 +58,18 @@ PY3_BLACKLIST = [
'debian-8',
]
BLACKLIST_2018 = [
'amazon-2',
'centos-8',
'debian-10',
BLACKLIST_2019 = [
'ubuntu-2004',
]
BLACKLIST_3000 = [
'ubuntu-2004',
]
SALT_BRANCHES = [
'2018-3',
'2019-2',
'3000',
'3001',
'master',
'latest'
]
@ -75,9 +81,9 @@ SALT_POST_3000_BLACKLIST = [
]
BRANCH_DISPLAY_NAMES = {
'2018-3': 'v2018.3',
'2019-2': 'v2019.2',
'3000': 'v3000',
'3001': 'v3001',
'master': 'Master',
'latest': 'Latest'
}
@ -104,7 +110,8 @@ DISTRO_DISPLAY_NAMES = {
'fedora-32': 'Fedora 32',
'opensuse-15': 'Opensuse 15',
'ubuntu-1604': 'Ubuntu 16.04',
'ubuntu-1804': 'Ubuntu 18.04'
'ubuntu-1804': 'Ubuntu 18.04',
'ubuntu-2004': 'Ubuntu 20.04',
}
@ -190,7 +197,10 @@ def generate_test_jobs():
if branch not in allowed_branches:
# Arch and Fedora default to py3.8
continue
if branch == '2018-3' and distro in BLACKLIST_2018:
if branch == '2019-2' and distro in BLACKLIST_2019:
continue
if branch == '3000' and distro in BLACKLIST_3000:
continue
if python_version == 'py2' and distro in PY2_BLACKLIST:

View file

@ -1,7 +1,7 @@
{python_version}-{bootstrap_type}-{branch}-{distro}:
name: {display_name}
runs-on: ubuntu-latest
timeout-minutes: 10
timeout-minutes: 20
needs: lint

View file

@ -103,6 +103,9 @@ platforms:
- systemctl enable sshd.service
provisioner:
salt_bootstrap_options: -MPfq -y -x python2 git %s
- name: ubuntu-20.04
driver_config:
run_command: /lib/systemd/systemd
- name: ubuntu-18.04
driver_config:
run_command: /lib/systemd/systemd
@ -111,9 +114,6 @@ platforms:
run_command: /lib/systemd/systemd
suites:
- name: py2-git-2018-3
provisioner:
salt_version: 2018.3
- name: py2-git-2019-2
provisioner:
salt_version: 2019.2
@ -123,16 +123,6 @@ suites:
- name: py2-git-master
provisioner:
salt_version: master
- name: py2-stable-2018-3
provisioner:
salt_version: 2018.3
salt_bootstrap_options: -MP stable %s
excludes:
- arch
- opensuse-15
- fedora-30
- fedora-31
- fedora-32
- name: py2-stable-2019-2
provisioner:
salt_version: 2019.2
@ -143,6 +133,7 @@ suites:
- fedora-30
- fedora-31
- fedora-32
- ubuntu-2004
- name: py2-stable-3000
provisioner:
salt_version: 3000
@ -153,16 +144,8 @@ suites:
- fedora-30
- fedora-31
- fedora-32
- ubuntu-2004
- name: py3-git-2018-3
provisioner:
salt_version: 2018.3
salt_bootstrap_options: -x python3 -MPfq git %s
excludes:
- amazon-1
- centos-6
- debian-8
- amazon-2
- name: py3-git-3000
provisioner:
salt_version: 3000
@ -171,6 +154,7 @@ suites:
- amazon-1
- centos-6
- debian-8
- ubuntu-2004
- name: py3-git-2019-2
provisioner:
salt_version: 2019.2
@ -179,16 +163,15 @@ suites:
- amazon-1
- centos-6
- debian-8
- name: py3-stable-2018-3
- ubuntu-2004
- name: py3-git-3001
provisioner:
salt_version: 2018.3
salt_bootstrap_options: -x python3 -MP stable %s
salt_version: 3001
salt_bootstrap_options: -x python3 -MPfq git %s
excludes:
- amazon-1
- centos-6
- debian-8
- opensuse-15
- amazon-2
- name: py3-stable-2019-2
provisioner:
salt_version: 2019.2
@ -199,6 +182,7 @@ suites:
- debian-8
- opensuse-15
- arch
- ubuntu-2004
- name: py3-stable-3000
provisioner:
salt_version: 3000
@ -209,6 +193,17 @@ suites:
- debian-8
- opensuse-15
- arch
- ubuntu-2004
- name: py3-stable-3001
provisioner:
salt_version: 3001
salt_bootstrap_options: -x python3 -MP stable %s
excludes:
- amazon-1
- centos-6
- debian-8
- opensuse-15
- arch
- name: py3-git-master
provisioner:
salt_version: master

View file

@ -30,7 +30,7 @@ Brandon Clifford brandon099 brandon.clifford@vivint.com
Bret Fisher BretFisher bret@fishbrains.com
Brian Kruger bkruger99 brian.kruger@elliemae.com
bruce-one bruce-one
Bryce Larson bryceml
Bryce Larson bryceml blarson@saltstack.com
C. R. Oldham cro cr@saltstack.com
Cam camereonsparr
Charles McLaughlin cmclaughlin
@ -45,6 +45,7 @@ Dan Mick dmick dan.mick@inktank.com
Daniel Poelzleithner poelzi
Daniel Wallace gtmanfred danielwallace@gtmanfred.com
Darko Cerdic darkocerdic
Daryl Turner darylturner d.turner@arkadin.com
David J. Felix DavidJFelix
denmat denmat
Denys Havrysh vutny denys.gavrysh@gmail.com
@ -77,6 +78,7 @@ gweis gweis
Henrik Holmboe holmboe
Howard Mei HowardMei howardleomei@gmail.com
James Booth absolutejam vvalentine1337@gmail.com
Jamie Alessio jalessio jamie@stoic.net
Jan Heidbrink jheidbrink
Jared Bristow jars99
Jared E Stroud jaredestroud jaredestroud@gmail.com

View file

@ -1,5 +1,16 @@
Version TBD (In Progress on the Develop Branch):
Version 2020.06.23:
* Fix for Cumulus Linux 4.1 (darylturner) #1474
* Fix file download exit code, improve error message on failed download (bryceml) #1478
* Add support for Ubuntu 20.04 (bryceml) #1479
* Default Ubuntu 20.04 to Py3 since there isn't a Py2 release for it (bryceml) #1480
* Warn instead of exit when using -R and -x python3 on centos to allow installing python3
versions of salt on centos from other repos. Old unsupported releases probably need to
manually install epel-release before running the bootstrap script for versions before 2018.3.5
and before 2019.2.1 (bryceml) #1482
* Start maintaining .sha256 files for the bootstrap script
Version 2020.05.28:
* Fix Opensuse Tumbleweed (noelmcloughlin) #1441
* Remove Debian 8 from Python 3 supported list (jay1648) #1448

View file

@ -30,6 +30,7 @@ sum** of the downloaded ``bootstrap-salt.sh`` file.
The SHA256 sum of the ``bootstrap-salt.sh`` file, per release, is:
- 2020.05.28: ``6b3ea15c78f01060ab12fc01c0bb18480eaf36858c7ba188b200c0fb11aac173``
- 2020.02.24: ``efc46700aca78b8e51d7af9b06293f52ad495f3a8179c6bfb21a8c97ee41f1b7``
- 2020.02.04: ``ce877651b4938e3480f76b1629f582437f6ca8b73d7199fdb9e905e86fe85b34``
- 2020.01.29: ``e9afdfa877998c1c7f0e141a6728b33d0d24348e197aab2b9bde4fe6bc6db1b2``
@ -49,6 +50,10 @@ The SHA256 sum of the ``bootstrap-salt.sh`` file, per release, is:
If you're looking for a *one-liner* to install Salt, please scroll to the bottom and use the
instructions for `Installing via an Insecure One-Liner`_.
There are also .sha256 files for verifying against in the repo for the stable branch. You can also
get the correct sha256 sum for the stable release from https://bootstrap.saltstack.com/sha256 and
https://winbootstrap.saltstack.com/sha256
Contributing
------------

12
RELEASE.md Normal file
View file

@ -0,0 +1,12 @@
# Release process
- See if there are any PRs worth squeezing into release.
- Go through the changes since last release, add them to changelog.
- Add any new authors to the AUTHORS file.
- Bump version for release
- Open PR against develop with these changes.
- Once the above PR is merged, open a PR against master with the changes from develop
- Add a commit on that PR for updating the .sha256 files
- Once the PR against master is merged, update shasums on README on the develop branch
- Open a PR against salt with the new stable release.
- Open a PR against kitchen-salt with the new stable release.

View file

@ -23,7 +23,7 @@
#======================================================================================================================
set -o nounset # Treat unset variables as an error
__ScriptVersion="2020.05.28"
__ScriptVersion="2020.06.23"
__ScriptName="bootstrap-salt.sh"
__ScriptFullName="$0"
@ -792,11 +792,12 @@ fi
#----------------------------------------------------------------------------------------------------------------------
__fetch_url() {
# shellcheck disable=SC2086
curl $_CURL_ARGS -L -s -o "$1" "$2" >/dev/null 2>&1 ||
curl $_CURL_ARGS -L -s -f -o "$1" "$2" >/dev/null 2>&1 ||
wget $_WGET_ARGS -q -O "$1" "$2" >/dev/null 2>&1 ||
fetch $_FETCH_ARGS -q -o "$1" "$2" >/dev/null 2>&1 || # FreeBSD
fetch -q -o "$1" "$2" >/dev/null 2>&1 || # Pre FreeBSD 10
ftp -o "$1" "$2" >/dev/null 2>&1 # OpenBSD
ftp -o "$1" "$2" >/dev/null 2>&1 || # OpenBSD
(echoerror "$2 failed to download to $1"; exit 1)
}
#--- FUNCTION -------------------------------------------------------------------------------------------------------
@ -1470,10 +1471,11 @@ __debian_derivatives_translation() {
# If the file does not exist, return
[ ! -f /etc/os-release ] && return
DEBIAN_DERIVATIVES="(cumulus_.+|devuan|kali|linuxmint|raspbian|bunsenlabs|turnkey)"
DEBIAN_DERIVATIVES="(cumulus|devuan|kali|linuxmint|raspbian|bunsenlabs|turnkey)"
# Mappings
cumulus_2_debian_base="7.0"
cumulus_3_debian_base="8.0"
cumulus_4_debian_base="10.0"
devuan_1_debian_base="8.0"
devuan_2_debian_base="9.0"
kali_1_debian_base="7.0"
@ -1489,7 +1491,7 @@ __debian_derivatives_translation() {
if [ "${match}" != "" ]; then
case $match in
cumulus_*)
cumulus*)
_major=$(echo "$DISTRO_VERSION" | sed 's/^\([0-9]*\).*/\1/g')
_debian_derivative="cumulus"
;;
@ -1872,7 +1874,7 @@ if [ "$ITYPE" = "git" ]; then
if [ "$_POST_NEON_INSTALL" -eq $BS_TRUE ]; then
echo
echowarn "Post Neon git based installations will always install salt"
echowarn "and it's dependencies using pip which will be upgraded to"
echowarn "and its dependencies using pip which will be upgraded to"
echowarn "at least v${_MINIMUM_PIP_VERSION}, and, in case the setuptools version is also"
echowarn "too old, it will be upgraded to at least v${_MINIMUM_SETUPTOOLS_VERSION}"
echo
@ -3002,6 +3004,15 @@ install_ubuntu_stable_deps() {
_SLEEP=10
fi
if [ "$DISTRO_MAJOR_VERSION" -ge 20 ]; then
# Default Ubuntu 20.04 to Py3
if [ "x${_PY_EXE}" = "x" ]; then
_PY_EXE=python3
_PY_MAJOR_VERSION=3
PY_PKG_VER=3
fi
fi
if [ $_START_DAEMONS -eq $BS_FALSE ]; then
echowarn "Not starting daemons on Debian based distributions is not working mostly because starting them is the default behaviour."
fi
@ -4133,10 +4144,9 @@ install_centos_stable_deps() {
fi
if [ "$_DISABLE_REPOS" -eq "$BS_TRUE" ] && [ -n "$_PY_EXE" ] && [ "$_PY_MAJOR_VERSION" -eq 3 ]; then
echoerror "Detected -r or -R option while installing Salt packages for Python 3."
echoerror "Python 3 packages for Salt require the EPEL repository to be installed."
echoerror "The -r and -R options are incompatible with -x and Python 3 bootstrap installs."
return 1
echowarn "Detected -r or -R option while installing Salt packages for Python 3."
echowarn "Python 3 packages for older Salt releases requires the EPEL repository to be installed."
echowarn "Installing the EPEL repository automatically is disabled when using the -r or -R options."
fi
if [ "$_DISABLE_REPOS" -eq "$BS_FALSE" ]; then