Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/certbot/certbot.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrad Warren <bmw@eff.org>2020-12-02 20:44:27 +0300
committerBrad Warren <bmw@eff.org>2020-12-02 23:37:43 +0300
commit7497c51f3456517e61465ced9b446794d8075d90 (patch)
treecc0081e86f8e4c524664595d2844076408df9e7d /letsencrypt-auto-source/letsencrypt-auto
parent1a3c96a9554061a924624b7b30e8e0b9db40a542 (diff)
Undo certbot-auto changes and remove centos6 tests
* Don't deprecate certbot-auto quite yet * Remove centos6 test farm tests * undo changes to test farm test scripts (cherry picked from commit e5113d5815a1118d0720e29424cb98ea06957b4d)
Diffstat (limited to 'letsencrypt-auto-source/letsencrypt-auto')
-rwxr-xr-xletsencrypt-auto-source/letsencrypt-auto106
1 files changed, 104 insertions, 2 deletions
diff --git a/letsencrypt-auto-source/letsencrypt-auto b/letsencrypt-auto-source/letsencrypt-auto
index 6082a7339..96b40c0c8 100755
--- a/letsencrypt-auto-source/letsencrypt-auto
+++ b/letsencrypt-auto-source/letsencrypt-auto
@@ -794,8 +794,110 @@ BootstrapMageiaCommon() {
}
-# Certbot-auto is now fully deprecated
-DEPRECATED_OS=1
+# Set Bootstrap to the function that installs OS dependencies on this system
+# and BOOTSTRAP_VERSION to the unique identifier for the current version of
+# that function. If Bootstrap is set to a function that doesn't install any
+# packages BOOTSTRAP_VERSION is not set.
+if [ -f /etc/debian_version ]; then
+ DEPRECATED_OS=1
+elif [ -f /etc/mageia-release ]; then
+ # Mageia has both /etc/mageia-release and /etc/redhat-release
+ DEPRECATED_OS=1
+elif [ -f /etc/redhat-release ]; then
+ # Run DeterminePythonVersion to decide on the basis of available Python versions
+ # whether to use 2.x or 3.x on RedHat-like systems.
+ # Then, revert LE_PYTHON to its previous state.
+ prev_le_python="$LE_PYTHON"
+ unset LE_PYTHON
+ DeterminePythonVersion "NOCRASH"
+
+ RPM_DIST_NAME=`(. /etc/os-release 2> /dev/null && echo $ID) || echo "unknown"`
+
+ if [ "$PYVER" -eq 26 -a $(uname -m) != 'x86_64' ]; then
+ # 32 bits CentOS 6 and affiliates are not supported anymore by certbot-auto.
+ DEPRECATED_OS=1
+ fi
+
+ # Set RPM_DIST_VERSION to VERSION_ID from /etc/os-release after splitting on
+ # '.' characters (e.g. "8.0" becomes "8"). If the command exits with an
+ # error, RPM_DIST_VERSION is set to "unknown".
+ RPM_DIST_VERSION=$( (. /etc/os-release 2> /dev/null && echo "$VERSION_ID") | cut -d '.' -f1 || echo "unknown")
+
+ # If RPM_DIST_VERSION is an empty string or it contains any nonnumeric
+ # characters, the value is unexpected so we set RPM_DIST_VERSION to 0.
+ if [ -z "$RPM_DIST_VERSION" ] || [ -n "$(echo "$RPM_DIST_VERSION" | tr -d '[0-9]')" ]; then
+ RPM_DIST_VERSION=0
+ fi
+
+ # Handle legacy RPM distributions
+ if [ "$PYVER" -eq 26 ]; then
+ # Check if an automated bootstrap can be achieved on this system.
+ if ! Python36SclIsAvailable; then
+ INTERACTIVE_BOOTSTRAP=1
+ fi
+
+ Bootstrap() {
+ BootstrapMessage "Legacy RedHat-based OSes that will use Python3"
+ BootstrapRpmPython3Legacy
+ }
+ USE_PYTHON_3=1
+ BOOTSTRAP_VERSION="BootstrapRpmPython3Legacy $BOOTSTRAP_RPM_PYTHON3_LEGACY_VERSION"
+
+ # Try now to enable SCL rh-python36 for systems already bootstrapped
+ # NB: EnablePython36SCL has been defined along with BootstrapRpmPython3Legacy in certbot-auto
+ EnablePython36SCL
+ else
+ # Starting to Fedora 29, python2 is on a deprecation path. Let's move to python3 then.
+ # RHEL 8 also uses python3 by default.
+ if [ "$RPM_DIST_NAME" = "fedora" -a "$RPM_DIST_VERSION" -ge 29 ]; then
+ RPM_USE_PYTHON_3=1
+ elif [ "$RPM_DIST_NAME" = "rhel" -a "$RPM_DIST_VERSION" -ge 8 ]; then
+ RPM_USE_PYTHON_3=1
+ elif [ "$RPM_DIST_NAME" = "centos" -a "$RPM_DIST_VERSION" -ge 8 ]; then
+ RPM_USE_PYTHON_3=1
+ else
+ RPM_USE_PYTHON_3=0
+ fi
+
+ if [ "$RPM_USE_PYTHON_3" = 1 ]; then
+ Bootstrap() {
+ BootstrapMessage "RedHat-based OSes that will use Python3"
+ BootstrapRpmPython3
+ }
+ USE_PYTHON_3=1
+ BOOTSTRAP_VERSION="BootstrapRpmPython3 $BOOTSTRAP_RPM_PYTHON3_VERSION"
+ else
+ Bootstrap() {
+ BootstrapMessage "RedHat-based OSes"
+ BootstrapRpmCommon
+ }
+ BOOTSTRAP_VERSION="BootstrapRpmCommon $BOOTSTRAP_RPM_COMMON_VERSION"
+ fi
+ fi
+
+ LE_PYTHON="$prev_le_python"
+elif [ -f /etc/os-release ] && `grep -q openSUSE /etc/os-release` ; then
+ DEPRECATED_OS=1
+elif [ -f /etc/arch-release ]; then
+ DEPRECATED_OS=1
+elif [ -f /etc/manjaro-release ]; then
+ DEPRECATED_OS=1
+elif [ -f /etc/gentoo-release ]; then
+ DEPRECATED_OS=1
+elif uname | grep -iq FreeBSD ; then
+ DEPRECATED_OS=1
+elif uname | grep -iq Darwin ; then
+ DEPRECATED_OS=1
+elif [ -f /etc/issue ] && grep -iq "Amazon Linux" /etc/issue ; then
+ Bootstrap() {
+ ExperimentalBootstrap "Amazon Linux" BootstrapRpmCommon
+ }
+ BOOTSTRAP_VERSION="BootstrapRpmCommon $BOOTSTRAP_RPM_COMMON_VERSION"
+elif [ -f /etc/product ] && grep -q "Joyent Instance" /etc/product ; then
+ DEPRECATED_OS=1
+else
+ DEPRECATED_OS=1
+fi
# We handle this case after determining the normal bootstrap version to allow
# variables like USE_PYTHON_3 to be properly set. As described above, if the