Merge pull request #932 from flatcar/sayan/add-nvidia-test

x11-drivers/nvidia-drivers: Add GPU test and move package to /usr
This commit is contained in:
Sayan Chowdhury 2023-06-16 20:04:32 +05:30 committed by GitHub
commit a85f6b9abf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 18 additions and 58 deletions

View File

@ -0,0 +1 @@
- Migrated the NVIDIA installer from the Azure/AWS OEM partition to `/usr` to make it available on all platforms ([scripts#932](https://github.com/flatcar/scripts/pull/932/), [Flatcar#1077](https://github.com/flatcar/Flatcar/issues/1077))

View File

@ -74,7 +74,7 @@ query_kola_tests() {
kola list --platform=azure --filter "${@}" kola list --platform=azure --filter "${@}"
} }
other_instance_types=() other_instance_types=("Standard_NC6s_v3")
if [[ "${CIA_ARCH}" = 'amd64' ]]; then if [[ "${CIA_ARCH}" = 'amd64' ]]; then
other_instance_types+=('V1') other_instance_types+=('V1')
fi fi
@ -85,6 +85,6 @@ run_kola_tests_on_instances \
"${CIA_FIRST_RUN}" \ "${CIA_FIRST_RUN}" \
"${other_instance_types[@]}" \ "${other_instance_types[@]}" \
'--' \ '--' \
'cl.internet' \ 'cl.internet' 'cl.misc.nvidia'\
'--' \ '--' \
"${@}" "${@}"

View File

@ -200,7 +200,7 @@ RDEPEND="${RDEPEND}
sys-power/acpid sys-power/acpid
sys-process/lsof sys-process/lsof
sys-process/procps sys-process/procps
x11-drivers/nvidia-metadata x11-drivers/nvidia-drivers
" "
# OEM specific bits that need to go in USR # OEM specific bits that need to go in USR

View File

@ -14,7 +14,6 @@ IUSE=""
RDEPEND=" RDEPEND="
~app-emulation/wa-linux-agent-${PV} ~app-emulation/wa-linux-agent-${PV}
x11-drivers/nvidia-drivers
" "
# for coreos-base/common-oem-files # for coreos-base/common-oem-files

View File

@ -13,10 +13,6 @@
"enabled": true, "enabled": true,
"contents": "[Unit]\nDescription=amazon-ssm-agent\nAfter=network-online.target\n\n[Service]\nType=simple\nWorkingDirectory=/oem\nExecStart=/oem/bin/amazon-ssm-agent\nKillMode=process\nRestart=on-failure\nRestartForceExitStatus=SIGPIPE\nRestartSec=15min\n\n[Install]\nWantedBy=multi-user.target\n" "contents": "[Unit]\nDescription=amazon-ssm-agent\nAfter=network-online.target\n\n[Service]\nType=simple\nWorkingDirectory=/oem\nExecStart=/oem/bin/amazon-ssm-agent\nKillMode=process\nRestart=on-failure\nRestartForceExitStatus=SIGPIPE\nRestartSec=15min\n\n[Install]\nWantedBy=multi-user.target\n"
}, },
{
"name": "nvidia.service",
"enabled": true
}
] ]
}, },
"storage": { "storage": {
@ -45,14 +41,6 @@
}, },
"mode": 493 "mode": 493
}, },
{
"filesystem": "root",
"path": "/etc/systemd/system/nvidia.service",
"contents": {
"source": "oem:///units/nvidia.service"
},
"mode": 292
}
] ]
} }
} }

View File

@ -16,7 +16,6 @@ REQUIRED_USE="^^ ( ec2 openstack brightbox )"
RDEPEND=" RDEPEND="
ec2? ( app-emulation/amazon-ssm-agent ) ec2? ( app-emulation/amazon-ssm-agent )
coreos-base/flatcar-eks coreos-base/flatcar-eks
x11-drivers/nvidia-drivers
" "
# no source directory # no source directory

View File

@ -34,5 +34,4 @@ RDEPEND="
coreos-base/coreos coreos-base/coreos
coreos-base/coreos-dev coreos-base/coreos-dev
coreos-base/flatcar-eks coreos-base/flatcar-eks
x11-drivers/nvidia-drivers
" "

View File

@ -24,15 +24,12 @@ function download_flatcar_developer_container() {
then then
rm -f "${FLATCAR_ROOT_WORKDIR}/"flatcar_developer_container*.bin rm -f "${FLATCAR_ROOT_WORKDIR}/"flatcar_developer_container*.bin
FLATCAR_REMOTE_FILENAME=${FLATCAR_DEVELOPER_CONTAINER%%-*}.bin.bz2 FLATCAR_REMOTE_FILENAME=${FLATCAR_DEVELOPER_CONTAINER%%-*}.bin.bz2
if [[ "$GROUP" == "developer" ]] if [[ "$(curl -I --retry-delay 1 --retry 60 --retry-connrefused --retry-max-time 60 --connect-timeout 20 -L -s -o /dev/null -w "%{http_code}" "https://${GROUP}.release.flatcar-linux.net/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}")" == 200 ]]
then then
FLATCAR_DEVELOPER_CONTAINER_URL="https://bucket.release.flatcar-linux.net/flatcar-jenkins/developer/developer/boards/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}" FLATCAR_DEVELOPER_CONTAINER_URL="https://${GROUP}.release.flatcar-linux.net/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}"
else if [[ "$(curl -I -s -o /dev/null -w "%{http_code}" "https://${GROUP}.release.flatcar-linux.net/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}")" == 200 ]] else
then FLATCAR_RELEASE_BOARD=${FLATCAR_RELEASE_BOARD//-usr/}
FLATCAR_DEVELOPER_CONTAINER_URL="https://${GROUP}.release.flatcar-linux.net/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}" FLATCAR_DEVELOPER_CONTAINER_URL="https://bincache.flatcar-linux.net/images/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}"
else
FLATCAR_DEVELOPER_CONTAINER_URL="https://bucket.release.flatcar-linux.net/flatcar-jenkins/${GROUP}/boards/${FLATCAR_RELEASE_BOARD}/${FLATCAR_RELEASE_VERSION}/${FLATCAR_REMOTE_FILENAME}"
fi
fi fi
if [ ! -n "${FLATCAR_DEVELOPER_CONTAINER_URL}" ] if [ ! -n "${FLATCAR_DEVELOPER_CONTAINER_URL}" ]
@ -70,7 +67,7 @@ function extract_nvidia_installer() {
function run_nspawn_container() { function run_nspawn_container() {
echo Spawn system-nspawn container to install the NVIDIA drivers echo Spawn system-nspawn container to install the NVIDIA drivers
sudo systemd-nspawn --read-only --volatile=overlay --image="${FLATCAR_ROOT_WORKDIR}/${FLATCAR_DEVELOPER_CONTAINER}" --bind="${FLATCAR_ROOT_WORKDIR}/${NVIDIA_WORKDIR}":/nvidia --bind=/oem/bin:/app/bin/ /app/bin/install-nvidia "$NVIDIA_DRIVER_BASENAME" sudo systemd-nspawn --read-only --volatile=overlay --image="${FLATCAR_ROOT_WORKDIR}/${FLATCAR_DEVELOPER_CONTAINER}" --bind="${FLATCAR_ROOT_WORKDIR}/${NVIDIA_WORKDIR}":/nvidia --bind=/usr/lib/nvidia/bin:/app/bin/ /app/bin/install-nvidia "$NVIDIA_DRIVER_BASENAME"
} }
function copy_nvidia_build_artifacts() { function copy_nvidia_build_artifacts() {

View File

@ -7,7 +7,7 @@ After=network-online.target
Type=simple Type=simple
Restart=no Restart=no
Environment=PATH=/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin Environment=PATH=/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
ExecStart=/oem/bin/setup-nvidia ExecStart=/usr/lib/nvidia/bin/setup-nvidia
[Install] [Install]
WantedBy=multi-user.target WantedBy=multi-user.target

View File

@ -3,6 +3,8 @@
EAPI=7 EAPI=7
inherit systemd
DESCRIPTION="NVIDIA drivers" DESCRIPTION="NVIDIA drivers"
HOMEPAGE="" HOMEPAGE=""
SRC_URI="" SRC_URI=""
@ -15,14 +17,12 @@ IUSE=""
# no source directory # no source directory
S="${WORKDIR}" S="${WORKDIR}"
RDEPEND="
=x11-drivers/nvidia-metadata-${PV}
"
src_install() { src_install() {
insinto "/oem" systemd_dounit "${FILESDIR}/units/nvidia.service"
doins -r "${FILESDIR}/units" systemd_enable_service multi-user.target nvidia.service
exeinto "/oem/bin" exeinto "/usr/lib/nvidia/bin"
doexe "${FILESDIR}/bin/install-nvidia" doexe "${FILESDIR}/bin/install-nvidia"
doexe "${FILESDIR}/bin/setup-nvidia" doexe "${FILESDIR}/bin/setup-nvidia"
insinto "/usr/share/flatcar"
doins "${FILESDIR}/nvidia-metadata"
} }

View File

@ -1,23 +0,0 @@
# Copyright (c) 2021 Kinvolk GmbH. All rights reserved.
# Distributed under the terms of the GNU General Public License v2
EAPI=7
DESCRIPTION="NVIDIA drivers release version and configuration"
HOMEPAGE=""
SRC_URI=""
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 arm64"
IUSE=""
# no source directory
S="${WORKDIR}"
RDEPEND=""
src_install() {
insinto "/usr/share/flatcar"
doins "${FILESDIR}/nvidia-metadata"
}