Commit 3fdfea7b authored by Michal Berger's avatar Michal Berger Committed by Tomasz Zawadzki
Browse files

config/pkgdep: Allow for sourcing OS-based routines



vm_setup.sh currently depends on package managers to determine which
SPDK dependencies must be installed, however, this may cause issues on
systems which provide more than one package manager, e.g., dnf and
yum. Due to that fact, some packages were missing since they were
bound to a specific package manager instead of the distribution, case
and point, nbd. Also, some OS-dependent steps had to be duplicated,
like repo refresh on Centos8, since either of the managers could be
in use.

To address the above, allow for souring of OS-based routines to
overwrite defaults set based on given package manager.

Change-Id: I0d8d88dea4521e9c76b187c69743e4e09aa724e6
Signed-off-by: default avatarMichal Berger <michalx.berger@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/4017


Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarJim Harris <james.r.harris@intel.com>
Reviewed-by: default avatarTomasz Zawadzki <tomasz.zawadzki@intel.com>
Reviewed-by: default avatarKarol Latecki <karol.latecki@intel.com>
parent f2d95897
Loading
Loading
Loading
Loading
+1 −11
Original line number Diff line number Diff line
@@ -60,17 +60,7 @@ packages=(
	xfsprogs
)

pre_install() {
	if [[ $INTSALL_TSOCKS == true ]]; then
		# currently, tsocks package is retired in fedora 31, so don't exit in case
		# installation failed
		# FIXME: Review when fedora starts to successfully build this package again.
		install tsocks || echo "Installation of the tsocks package failed, proxy may not be available"
	fi
	if [[ $ID == centos ]] && (( VERSION_ID == 8 )); then
		sudo "$package_manager" update -y --refresh
	fi
}
pre_install() { :; }

if [[ $OSID != fedora ]]; then
	echo "Located dnf package manager, but it was tested for Fedora only"
+1 −0
Original line number Diff line number Diff line
rhel
 No newline at end of file
+1 −0
Original line number Diff line number Diff line
rhel
 No newline at end of file
+17 −0
Original line number Diff line number Diff line
pre_install() {
	if [[ $INTSALL_TSOCKS == true ]]; then
		# currently, tsocks package is retired in fedora 31, so don't exit in case
		# installation failed
		# FIXME: Review when fedora starts to successfully build this package again.
		install tsocks || echo "Installation of the tsocks package failed, proxy may not be available"
	fi
        if [[ $ID == centos ]] && (( VERSION_ID == 8 )); then
                sudo "$package_manager" update -y --refresh
        fi

	install nbd || {
		install wget
		wget -O nbd.rpm https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/n/nbd-3.14-2.el7.x86_64.rpm
		install nbd.rpm
	}
}
+1 −11
Original line number Diff line number Diff line
@@ -58,14 +58,4 @@ packages=(
	xfsprogs
)

pre_install() {
	if [[ $ID == centos ]] && (( VERSION_ID == 8 )); then
		sudo "$package_manager" update -y --refresh
	fi

	install nbd || {
		install wget
		wget -O nbd.rpm https://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/n/nbd-3.14-2.el7.x86_64.rpm
		install nbd.rpm
	}
}
pre_install() { :; }
Loading