Привет
Я тут полез читать https://tarantool.io/installer.sh
Заинтересовал вот этот кусок
detect_ver ()
{
if [ -z "${VER:-2.5}" ]; then
ver=$tarantool_default_version
else
ver=${VER:-2.5}
fi
ver_repo=$(echo $ver | tr . _)
}
[ -z string — истина, если длина string равна нулю.
В итоге ver=$tarantool_default_version не достижим
Дефолтное значение задается ${VER:-2.5} а не через tarantool_default_version
Прогнал
curl -L https://tarantool.io/installer.sh | VER='' bash -x
...
Detected operating system as ubuntu/focal.
- detect_ver
- '[' -z 2.5 ']'
- ver=2.5
++ echo 2.5
...
В дополнение, скрипт конфьюзит, когда указываешь несуществующую версию тарантула:
$ curl -L https://tarantool.io/installer.sh | VER=888 bash
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 184 100 184 0 0 4487 0 --:--:-- --:--:-- --:--:-- 4487
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
+ tarantool_default_version=2.5
+ repo_type=live
+ repo_path=
+ repo_only=0
+ os=
+ dist=
10+ [[ 0 -gt 0 ]]
0 10555 100 10555 0 0 20535 0 --:--:-- --:--:-- --:--:-- 20535
+ '[' live = release ']'
+ '[' live '!=' live ']'
+ main
+ detect_os
+ [[ -z '' ]]
+ [[ -z '' ]]
+ '[' -e /etc/centos-release ']'
+ '[' -e /etc/os-release ']'
++ . /etc/os-release
+++ NAME=Ubuntu
+++ VERSION='20.04.2 LTS (Focal Fossa)'
+++ ID=ubuntu
+++ ID_LIKE=debian
+++ PRETTY_NAME='Ubuntu 20.04.2 LTS'
+++ VERSION_ID=20.04
+++ HOME_URL=https://www.ubuntu.com/
+++ SUPPORT_URL=https://help.ubuntu.com/
+++ BUG_REPORT_URL=https://bugs.launchpad.net/ubuntu/
+++ PRIVACY_POLICY_URL=https://www.ubuntu.com/legal/terms-and-policies/privacy-policy
+++ VERSION_CODENAME=focal
+++ UBUNTU_CODENAME=focal
++ echo ubuntu
+ os=ubuntu
++ . /etc/os-release
+++ NAME=Ubuntu
+++ VERSION='20.04.2 LTS (Focal Fossa)'
+++ ID=ubuntu
+++ ID_LIKE=debian
+++ PRETTY_NAME='Ubuntu 20.04.2 LTS'
+++ VERSION_ID=20.04
+++ HOME_URL=https://www.ubuntu.com/
+++ SUPPORT_URL=https://help.ubuntu.com/
+++ BUG_REPORT_URL=https://bugs.launchpad.net/ubuntu/
+++ PRIVACY_POLICY_URL=https://www.ubuntu.com/legal/terms-and-policies/privacy-policy
+++ VERSION_CODENAME=focal
+++ UBUNTU_CODENAME=focal
++ echo debian
+ os_like=debian
+ [[ debian = \u\b\u\n\t\u ]]
+ '[' ubuntu = debian ']'
+ '[' ubuntu = ubuntu ']'
++ . /etc/os-release
+++ NAME=Ubuntu
+++ VERSION='20.04.2 LTS (Focal Fossa)'
+++ ID=ubuntu
+++ ID_LIKE=debian
+++ PRETTY_NAME='Ubuntu 20.04.2 LTS'
+++ VERSION_ID=20.04
+++ HOME_URL=https://www.ubuntu.com/
+++ SUPPORT_URL=https://help.ubuntu.com/
+++ BUG_REPORT_URL=https://bugs.launchpad.net/ubuntu/
+++ PRIVACY_POLICY_URL=https://www.ubuntu.com/legal/terms-and-policies/privacy-policy
+++ VERSION_CODENAME=focal
+++ UBUNTU_CODENAME=focal
++ echo 20.04
+ ver_id=20.04
++ . /etc/os-release
+++ NAME=Ubuntu
+++ VERSION='20.04.2 LTS (Focal Fossa)'
+++ ID=ubuntu
+++ ID_LIKE=debian
+++ PRETTY_NAME='Ubuntu 20.04.2 LTS'
+++ VERSION_ID=20.04
+++ HOME_URL=https://www.ubuntu.com/
+++ SUPPORT_URL=https://help.ubuntu.com/
+++ BUG_REPORT_URL=https://bugs.launchpad.net/ubuntu/
+++ PRIVACY_POLICY_URL=https://www.ubuntu.com/legal/terms-and-policies/privacy-policy
+++ VERSION_CODENAME=focal
+++ UBUNTU_CODENAME=focal
++ echo focal
+ ver_codename=focal
+ '[' '!' -z focal ']'
+ dist=focal
+ [[ -z ubuntu ]]
+ [[ -z focal ]]
+ os=ubuntu
+ dist=focal
+ echo 'Detected operating system as ubuntu/focal.'
Detected operating system as ubuntu/focal.
+ detect_ver
+ '[' -z 888 ']'
+ ver=888
++ echo 888
++ tr . _
+ ver_repo=888
+ '[' ubuntu = centos ']'
+ '[' ubuntu = amzn ']'
+ '[' ubuntu = fedora ']'
+ '[' ubuntu = debian ']'
+ '[' ubuntu = ubuntu ']'
+ [[ focal =~ ^(trusty|xenial|bionic|cosmic|disco|eoan|focal)$ ]]
+ echo 'Setting up apt repository... '
Setting up apt repository...
+ install_apt
+ export DEBIAN_FRONTEND=noninteractive
+ DEBIAN_FRONTEND=noninteractive
+ apt_update
+ echo -n 'Running apt-get update... '
Running apt-get update... + apt-get update
Hit:1 http://archive.ubuntu.com/ubuntu focal InRelease
Get:2 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Hit:3 http://security.ubuntu.com/ubuntu focal-security InRelease
Get:4 http://archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Hit:6 https://hb.bizmrg.com/tarantool_repo/release/modules/ubuntu focal InRelease
Get:5 https://download.tarantool.org/tarantool/777/ubuntu focal InRelease [30.6 kB]
Err:5 https://download.tarantool.org/tarantool/777/ubuntu focal InRelease
Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
Reading package lists... Done
E: Failed to fetch https://download.tarantool.org/tarantool/777/ubuntu/dists/focal/InRelease Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
E: The repository 'https://download.tarantool.org/tarantool/777/ubuntu focal InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
+ echo done.
done.
+ curl_check
+ echo -n 'Checking for curl... '
Checking for curl... + command -v curl
+ echo
+ echo -n 'Detected curl... '
Detected curl... + echo done.
done.
+ gpg_check
+ echo -n 'Checking for gpg... '
Checking for gpg... + command -v gpg
+ echo
+ echo 'Detected gpg...'
Detected gpg...
+ echo done.
done.
+ echo -n 'Installing apt-transport-https... '
Installing apt-transport-https... + apt-get install -y apt-transport-https
Reading package lists... Done
Building dependency tree
Reading state information... Done
apt-transport-https is already the newest version (2.0.4).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
+ echo done.
done.
+ gpg_key_url=https://download.tarantool.org/tarantool/888/gpgkey
+ gpg_key_url_modules=https://download.tarantool.org/tarantool/modules/gpgkey
+ apt_source_path=/etc/apt/sources.list.d/tarantool_888.list
+ echo -n 'Importing Tarantool gpg key... '
Importing Tarantool gpg key... + curl -L https://download.tarantool.org/tarantool/888/gpgkey
+ apt-key add -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 160 100 160 0 0 3200 0 --:--:-- --:--:-- --:--:-- 3200
0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
100 30569 100 30569 0 0 33191 0 --:--:-- --:--:-- --:--:-- 33191
gpg: no valid OpenPGP data found.
+ curl -L https://download.tarantool.org/tarantool/modules/gpgkey
+ apt-key add -
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 160 100 160 0 0 3902 0 --:--:-- --:--:-- --:--:-- 3902
100 2436 100 2436 0 0 17525 0 --:--:-- --:--:-- --:--:-- 17525
OK
+ echo done.
done.
+ rm -f /etc/apt/sources.list.d/tarantool_777.list
+ echo 'deb https://download.tarantool.org/tarantool/888/ubuntu/ focal main'
+ echo 'deb-src https://download.tarantool.org/tarantool/888/ubuntu/ focal main'
+ echo 'deb https://download.tarantool.org/tarantool/modules/ubuntu/ focal main'
+ echo 'deb-src https://download.tarantool.org/tarantool/modules/ubuntu/ focal main'
+ mkdir -p /etc/apt/preferences.d/
+ echo -e 'Package: tarantool\nPin: origin download.tarantool.org\nPin-Priority: 1001'
+ echo 'The repository is setup! Tarantool can now be installed.'
The repository is setup! Tarantool can now be installed.
+ apt_update
+ echo -n 'Running apt-get update... '
Running apt-get update... + apt-get update
Hit:2 https://hb.bizmrg.com/tarantool_repo/release/modules/ubuntu focal InRelease
Hit:3 http://archive.ubuntu.com/ubuntu focal InRelease
Get:4 http://security.ubuntu.com/ubuntu focal-security InRelease [109 kB]
Get:5 http://archive.ubuntu.com/ubuntu focal-updates InRelease [114 kB]
Get:6 http://archive.ubuntu.com/ubuntu focal-backports InRelease [101 kB]
Get:1 https://download.tarantool.org/tarantool/888/ubuntu focal InRelease [30.6 kB]
Err:1 https://download.tarantool.org/tarantool/888/ubuntu focal InRelease
Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
Reading package lists... Done
E: Failed to fetch https://download.tarantool.org/tarantool/888/ubuntu/dists/focal/InRelease Clearsigned file isn't valid, got 'NOSPLIT' (does the network require authentication?)
E: The repository 'https://download.tarantool.org/tarantool/888/ubuntu focal InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
+ echo done.
done.
+ echo
+ echo 'Tarantool 888 is ready to be installed'
Tarantool 888 is ready to be installed
+ '[' 0 = 0 ']'
+ apt-get install -y tarantool
Reading package lists... Done
Building dependency tree
Reading state information... Done
tarantool is already the newest version (2.7.1.159.g254fdd14f-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Привет
Я тут полез читать https://tarantool.io/installer.sh
Заинтересовал вот этот кусок
detect_ver ()
{
if [ -z "${VER:-2.5}" ]; then
ver=$tarantool_default_version
else
ver=${VER:-2.5}
fi
ver_repo=$(echo $ver | tr . _)
}
[ -z string — истина, если длина string равна нулю.
В итоге ver=$tarantool_default_version не достижим
Дефолтное значение задается ${VER:-2.5} а не через tarantool_default_version
Прогнал
curl -L https://tarantool.io/installer.sh | VER='' bash -x
...
Detected operating system as ubuntu/focal.
++ echo 2.5
...
В дополнение, скрипт конфьюзит, когда указываешь несуществующую версию тарантула: