mirror of
https://github.com/tailscale/tailscale.git
synced 2024-11-29 13:05:46 +00:00
scripts: use pkg server to determine supported deb/rpm distros
Fixes https://github.com/tailscale/corp/issues/8952 Signed-off-by: Anton Tolchanov <anton@tailscale.com>
This commit is contained in:
parent
4cb1bfee44
commit
6f9aed1656
@ -293,83 +293,28 @@ main() {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Ideally we want to use curl, but on some installs we
|
||||||
|
# only have wget. Detect and use what's available.
|
||||||
|
CURL=
|
||||||
|
if type curl >/dev/null; then
|
||||||
|
CURL="curl -fsSL"
|
||||||
|
elif type wget >/dev/null; then
|
||||||
|
CURL="wget -q -O-"
|
||||||
|
fi
|
||||||
|
if [ -z "$CURL" ]; then
|
||||||
|
echo "The installer needs either curl or wget to download files."
|
||||||
|
echo "Please install either curl or wget to proceed."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
# Step 2: having detected an OS we support, is it one of the
|
# Step 2: having detected an OS we support, is it one of the
|
||||||
# versions we support?
|
# versions we support?
|
||||||
OS_UNSUPPORTED=
|
OS_UNSUPPORTED=
|
||||||
case "$OS" in
|
case "$OS" in
|
||||||
ubuntu)
|
ubuntu|debian|raspbian|centos|oracle|rhel|amazon-linux|opensuse)
|
||||||
if [ "$VERSION" != "xenial" ] && \
|
# Check with the package server whether a given version is supported.
|
||||||
[ "$VERSION" != "bionic" ] && \
|
URL="https://pkgs.tailscale.com/$TRACK/$OS/$VERSION/installer-supported"
|
||||||
[ "$VERSION" != "eoan" ] && \
|
$CURL "$URL" 2> /dev/null | grep -q OK || OS_UNSUPPORTED=1
|
||||||
[ "$VERSION" != "focal" ] && \
|
|
||||||
[ "$VERSION" != "groovy" ] && \
|
|
||||||
[ "$VERSION" != "hirsute" ] && \
|
|
||||||
[ "$VERSION" != "impish" ] && \
|
|
||||||
[ "$VERSION" != "jammy" ] && \
|
|
||||||
[ "$VERSION" != "kinetic" ] && \
|
|
||||||
[ "$VERSION" != "lunar" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
debian)
|
|
||||||
if [ "$VERSION" != "stretch" ] && \
|
|
||||||
[ "$VERSION" != "buster" ] && \
|
|
||||||
[ "$VERSION" != "bullseye" ] && \
|
|
||||||
[ "$VERSION" != "bookworm" ] && \
|
|
||||||
[ "$VERSION" != "sid" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
raspbian)
|
|
||||||
if [ "$VERSION" != "stretch" ] && \
|
|
||||||
[ "$VERSION" != "buster" ] && \
|
|
||||||
[ "$VERSION" != "bullseye" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
centos)
|
|
||||||
if [ "$VERSION" != "7" ] && \
|
|
||||||
[ "$VERSION" != "8" ] && \
|
|
||||||
[ "$VERSION" != "9" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
oracle)
|
|
||||||
if [ "$VERSION" != "7" ] && \
|
|
||||||
[ "$VERSION" != "8" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
rhel)
|
|
||||||
if [ "$VERSION" != "7" ] && \
|
|
||||||
[ "$VERSION" != "8" ] && \
|
|
||||||
[ "$VERSION" != "9" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
amazon-linux)
|
|
||||||
if [ "$VERSION" != "2" ] && \
|
|
||||||
[ "$VERSION" != "2022" ] && \
|
|
||||||
[ "$VERSION" != "2023" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
opensuse)
|
|
||||||
if [ "$VERSION" != "leap/15.1" ] && \
|
|
||||||
[ "$VERSION" != "leap/15.2" ] && \
|
|
||||||
[ "$VERSION" != "leap/15.3" ] && \
|
|
||||||
[ "$VERSION" != "leap/15.4" ] && \
|
|
||||||
[ "$VERSION" != "tumbleweed" ]
|
|
||||||
then
|
|
||||||
OS_UNSUPPORTED=1
|
|
||||||
fi
|
|
||||||
;;
|
;;
|
||||||
fedora)
|
fedora)
|
||||||
# All versions supported, no version checking required.
|
# All versions supported, no version checking required.
|
||||||
@ -474,19 +419,6 @@ main() {
|
|||||||
echo "Installing Tailscale for $OS $VERSION, using method $PACKAGETYPE"
|
echo "Installing Tailscale for $OS $VERSION, using method $PACKAGETYPE"
|
||||||
case "$PACKAGETYPE" in
|
case "$PACKAGETYPE" in
|
||||||
apt)
|
apt)
|
||||||
# Ideally we want to use curl, but on some installs we
|
|
||||||
# only have wget. Detect and use what's available.
|
|
||||||
CURL=
|
|
||||||
if type curl >/dev/null; then
|
|
||||||
CURL="curl -fsSL"
|
|
||||||
elif type wget >/dev/null; then
|
|
||||||
CURL="wget -q -O-"
|
|
||||||
fi
|
|
||||||
if [ -z "$CURL" ]; then
|
|
||||||
echo "The installer needs either curl or wget to download files."
|
|
||||||
echo "Please install either curl or wget to proceed."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
export DEBIAN_FRONTEND=noninteractive
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
if [ "$APT_KEY_TYPE" = "legacy" ] && ! type gpg >/dev/null; then
|
if [ "$APT_KEY_TYPE" = "legacy" ] && ! type gpg >/dev/null; then
|
||||||
$SUDO apt-get update
|
$SUDO apt-get update
|
||||||
|
Loading…
Reference in New Issue
Block a user