Skip to content

Commit

Permalink
Install OS package via faasd-pro script
Browse files Browse the repository at this point in the history
These packages need to be sourced by other means when
installing into an airgap, and you can set SKIP_OS=1 to avoid
using the Internet.

Signed-off-by: Alex Ellis (OpenFaaS Ltd) <[email protected]>
  • Loading branch information
alexellis committed Sep 23, 2024
1 parent 7ca2621 commit 5576382
Showing 1 changed file with 42 additions and 11 deletions.
53 changes: 42 additions & 11 deletions hack/install-pro.sh
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,46 @@ if [ "$EUID" -ne 0 ]; then
exit
fi

echo "1. Downloading OCI image, and installing pre-requisites"
has_yum() {
[ -n "$(command -v yum)" ]
}

has_apt_get() {
[ -n "$(command -v apt-get)" ]
}

has_pacman() {
[ -n "$(command -v pacman)" ]
}

install_required_packages() {
if $(has_apt_get); then
# Debian bullseye is missing iptables. Added to required packages
# to get it working in raspberry pi. No such known issues in
# other distros. Hence, adding only to this block.
# reference: https://github.com/openfaas/faasd/pull/237
apt-get update -y
apt-get install -y curl runc bridge-utils iptables
elif $(has_yum); then
yum check-update -y
yum install -y curl runc iptables-services
elif $(has_pacman); then
pacman -Syy
pacman -Sy curl runc bridge-utils
else
fatal "Could not find apt-get, yum, or pacman. Cannot install dependencies on this OS."
exit 1
fi
}

echo "1. Installing required OS packages, set SKIP_OS=1 to skip this step"
echo ""

if [ -z "$SKIP_OS" ]; then
install_required_packages
fi

echo "2. Downloading OCI image, and installing pre-requisites"
echo ""
if [ ! -x "$(command -v arkade)" ]; then
curl -sLS https://get.arkade.dev | sh
Expand All @@ -22,21 +61,13 @@ cd ${tmpdir}
./install.sh ./

echo ""
echo "2. You now need to activate your license via GitHub"
echo "3. You now need to activate your license via GitHub"
echo ""
echo "sudo -E faasd github login"
echo "sudo -E faasd activate"
echo ""
echo ""
echo "3. Then perform the final installation steps"
echo "4. Then perform the final installation steps"
echo ""
echo "sudo -E sh -c \"cd ${tmpdir}/var/lib/faasd && faasd install\""
echo ""
echo "4. Additional OS packages are sometimes required, with one of the below:"
echo ""
echo "apt install -qy runc bridge-utils iptables"
echo ""
echo "yum install runc iptables-services"
echo ""
echo "pacman -Sy runc bridge-utils"

0 comments on commit 5576382

Please sign in to comment.