11#! /bin/bash
22
33if [[ $# -ne 4 ]]; then
4- echo " BASE_TARGET KERNEL_FLAVOR DRIVER_BRANCH DIST are required"
4+ echo " KERNEL_FLAVOR DRIVER_BRANCH DIST LTS_KERNEL are required"
55 exit 1
66fi
77
8- export BASE_TARGET =" ${1} "
9- export KERNEL_FLAVOR =" ${2} "
10- export DRIVER_BRANCH =" ${3} "
11- export DIST =" ${4} "
8+ export KERNEL_FLAVOR =" ${1} "
9+ export DRIVER_BRANCH =" ${2} "
10+ export DIST =" ${3} "
11+ export LTS_KERNEL =" ${4} "
1212
1313export REGCTL_VERSION=v0.7.1
1414mkdir -p bin
@@ -17,30 +17,20 @@ chmod a+x bin/regctl
1717export PATH=$( pwd) /bin:${PATH}
1818
1919# calculate kernel version of latest image
20- regctl image get-file ghcr.io/nvidia/driver:base-${BASE_TARGET} -${KERNEL_FLAVOR} -${DRIVER_BRANCH} /var/kernel_version.txt ./kernel_version.txt 2> /dev/null || true
21- if [[ -f ./kernel_version.txt && -s ./kernel_version.txt ]]; then
22- # File exists and is not empty
23- export $( grep -oP ' KERNEL_VERSION=[^ ]+' ./kernel_version.txt)
24- rm -f kernel_version.txt
25- else
26- # Define variables for artifact pattern
27- prefix=" kernel-version-${DRIVER_BRANCH} -${LTS_KERNEL} "
28- suffix=" ${kernel_flavor} -${DIST} "
29- artifacts=$( gh api -X GET /repos/${GITHUB_REPOSITORY} /actions/runs/${GITHUB_RUN_ID} /artifacts --jq ' .artifacts[].name' )
30- # Use a loop or a pattern to find the matching artifact dynamically
31- for artifact in $artifacts ; do
32- # TODO remove this check once nvidia avaialble
33- # currently for ubuntu24.04 kernel_flavor = nvidia-lowlatency
34- if [[ $artifact == $prefix * -$suffix ]]; then
35- gh run download --name " $artifact " --dir ./
36- tar -xf $artifact .tar
37- rm -f $artifact .tar
38- export $( grep -oP ' KERNEL_VERSION=[^ ]+' ./kernel_version.txt)
39- rm -f kernel_version.txt
40- break
41- fi
42- done
43- fi
20+ prefix=" kernel-version-${DRIVER_BRANCH} -${LTS_KERNEL} "
21+ suffix=" ${kernel_flavor} -${DIST} "
22+ artifacts=$( gh api -X GET /repos/${GITHUB_REPOSITORY} /actions/runs/${GITHUB_RUN_ID} /artifacts --paginate --jq ' .artifacts[].name' )
23+ # find the matching artifact dynamically
24+ for artifact in $artifacts ; do
25+ if [[ $artifact == $prefix * -$suffix ]]; then
26+ gh run download --name " $artifact " --dir ./
27+ tar -xf $artifact .tar
28+ rm -f $artifact .tar
29+ export $( grep -oP ' KERNEL_VERSION=[^ ]+' ./kernel_version.txt)
30+ rm -f kernel_version.txt
31+ break
32+ fi
33+ done
4434
4535# calculate driver tag
4636status=0
0 commit comments