mirror of
https://github.com/armbian/build
synced 2025-09-24 19:47:06 +07:00
Fix broken Docker support (#2804)
* lsb-release package is getting deprecated It is not present on Hirsute anymore so we better remove its dependency * - remove lsb-release dependency from docker - exit if Docker version is too low (check works only on Ubuntu builds, else doesn't do anything) Reference: https://bugs.launchpad.net/ubuntu/+source/glibc/+bug/1916485 * Cleanup * Remove quotes for proper pkg install * Automatically upgrade Docker engine * Missing python dependencies * Bugfix - debian name is not just one word * Put this back * provoke error * Revert * Adjust Github runner to make bionic and focal and compile u-boot for test * Adjust cron * Remove Bionic, cron back to 14 days * Change to ubuntu-latest
This commit is contained in:
19
compile.sh
19
compile.sh
@@ -157,10 +157,10 @@ fi
|
||||
if [[ "${1}" == docker && -f /etc/debian_version && -z "$(command -v docker)" ]]; then
|
||||
|
||||
# add exception for Ubuntu Focal until Docker provides dedicated binary
|
||||
codename=$(lsb_release -sc)
|
||||
codeid=$(lsb_release -is | awk '{print tolower($0)}')
|
||||
[[ "${codeid}" == "linuxmint" && "${codename}" == "debbie" ]] && codename="buster" && codeid="debian"
|
||||
[[ "${codename}" == "focal" || "${codename}" == "ulyana" ]] && codename="bionic" && codeid="ubuntu"
|
||||
codename=$(cat /etc/os-release | grep VERSION_CODENAME | cut -d"=" -f2)
|
||||
codeid=$(cat /etc/os-release | grep ^NAME | cut -d"=" -f2 | awk '{print tolower($0)}' | tr -d '"' | awk '{print $1}')
|
||||
[[ "${codename}" == "debbie" ]] && codename="buster" && codeid="debian"
|
||||
[[ "${codename}" == "ulyana" ]] && codename="focal" && codeid="ubuntu"
|
||||
|
||||
display_alert "Docker not installed." "Installing" "Info"
|
||||
echo "deb [arch=amd64] https://download.docker.com/linux/${codeid} ${codename} edge" > /etc/apt/sources.list.d/docker.list
|
||||
@@ -171,7 +171,7 @@ if [[ "${1}" == docker && -f /etc/debian_version && -z "$(command -v docker)" ]]
|
||||
do
|
||||
[[ ! $(command -v "${i}") ]] && install_packages+=${i}" "
|
||||
done
|
||||
[[ -z "${install_packages}" ]] && apt-get update;apt-get install -y -qq --no-install-recommends "${install_packages}"
|
||||
[[ -z "${install_packages}" ]] && apt-get update;apt-get install -y -qq --no-install-recommends ${install_packages}
|
||||
|
||||
curl -fsSL "https://download.docker.com/linux/${codeid}/gpg" | apt-key add -qq - > /dev/null 2>&1
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
@@ -182,6 +182,15 @@ if [[ "${1}" == docker && -f /etc/debian_version && -z "$(command -v docker)" ]]
|
||||
exit $?
|
||||
fi
|
||||
|
||||
# check if Docker version is high enough
|
||||
[[ $(systemd-detect-virt) == 'none' ]] && dockerversion=$(docker version | grep runc -A1 | tail -n 1 | awk '{print $2}')
|
||||
if [[ "${1}" == docker && -n ${dockerversion} ]] && linux-version compare "${dockerversion}" lt 1.0.0-rc93; then
|
||||
display_alert "Your Docker engine is too old - using Docker from nigtly builds" "Required > 1.0.0-rc92" "wrn"
|
||||
sed -i "s/edge/nightly/" /etc/apt/sources.list.d/docker.list
|
||||
apt-get update
|
||||
apt-get upgrade -y -qq
|
||||
fi
|
||||
|
||||
# Create userpatches directory if not exists
|
||||
mkdir -p "${SRC}"/userpatches
|
||||
|
||||
|
||||
Reference in New Issue
Block a user