mirror of
https://github.com/NVIDIA/nvidia-container-toolkit
synced 2024-11-24 21:14:00 +00:00
Handle empty root in config
If the config.toml has an empty root specified, this could be passed to the NVIDIA Container CLI through the --root flag which causes argument parsing to fail. This change only adds the --root flag if the config option is specified and is non-empty. Signed-off-by: Evan Lezar <elezar@nvidia.com>
This commit is contained in:
parent
80a78e60d1
commit
e51621aa7f
@ -92,7 +92,7 @@ func doPrestart() {
|
|||||||
rootfs := getRootfsPath(container)
|
rootfs := getRootfsPath(container)
|
||||||
|
|
||||||
args := []string{getCLIPath(cli)}
|
args := []string{getCLIPath(cli)}
|
||||||
if cli.Root != nil {
|
if cli.Root != nil && *cli.Root != "" {
|
||||||
args = append(args, fmt.Sprintf("--root=%s", *cli.Root))
|
args = append(args, fmt.Sprintf("--root=%s", *cli.Root))
|
||||||
}
|
}
|
||||||
if cli.LoadKmods {
|
if cli.LoadKmods {
|
||||||
|
@ -102,9 +102,20 @@ function sync() {
|
|||||||
ubuntu*) pkg_type=deb
|
ubuntu*) pkg_type=deb
|
||||||
;;
|
;;
|
||||||
*) echo "ERROR: unexpected distribution ${src_dist}"
|
*) echo "ERROR: unexpected distribution ${src_dist}"
|
||||||
|
exit 1
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
if [[ $# -ge 4 && $4 == "package_type" ]] ; then
|
||||||
|
if [[ "${src_dist}" != "ubuntu18.04" && "${src_dist}" != "centos7" ]]; then
|
||||||
|
echo "Package type repos require ubuntu18.04 or centos7 as the source"
|
||||||
|
echo "skipping"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
dst_dist=$pkg_type
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
local arch=${target##*-}
|
local arch=${target##*-}
|
||||||
local dst_arch=${arch}
|
local dst_arch=${arch}
|
||||||
case ${src_dist} in
|
case ${src_dist} in
|
||||||
@ -174,11 +185,13 @@ git -C ${PACKAGE_REPO_ROOT} clean -fdx ${REPO}
|
|||||||
|
|
||||||
for target in ${targets[@]}; do
|
for target in ${targets[@]}; do
|
||||||
sync ${target} ${PACKAGE_CACHE}/packages ${PACKAGE_REPO_ROOT}/${REPO}
|
sync ${target} ${PACKAGE_CACHE}/packages ${PACKAGE_REPO_ROOT}/${REPO}
|
||||||
|
# We also create a `package_type` repo; internally we skip this for non-ubuntu18.04 or centos7 distributions
|
||||||
|
sync ${target} ${PACKAGE_CACHE}/packages ${PACKAGE_REPO_ROOT}/${REPO} "package_type"
|
||||||
done
|
done
|
||||||
|
|
||||||
git -C ${PACKAGE_REPO_ROOT} add ${REPO}
|
git -C ${PACKAGE_REPO_ROOT} add ${REPO}
|
||||||
|
|
||||||
if [[ ${REPO} == "stable" ]]; then
|
if [[ "${REPO}" == "stable" ]]; then
|
||||||
# Stable release
|
# Stable release
|
||||||
git -C ${PACKAGE_REPO_ROOT} commit -s -F- <<EOF
|
git -C ${PACKAGE_REPO_ROOT} commit -s -F- <<EOF
|
||||||
Add packages for NVIDIA Container Toolkit ${VERSION} release
|
Add packages for NVIDIA Container Toolkit ${VERSION} release
|
||||||
|
Loading…
Reference in New Issue
Block a user